├── .gitignore ├── Android.bp ├── AndroidManifest-common.xml ├── AndroidManifest.xml ├── CleanSpec.mk ├── OWNERS ├── PREUPLOAD.cfg ├── aconfig ├── Android.bp ├── launcher.aconfig ├── launcher_overview.aconfig └── launcher_search.aconfig ├── bcsmartspace ├── Android.bp ├── AndroidManifest.xml ├── res │ ├── drawable │ │ ├── bg_flight_qr_code.xml │ │ ├── bg_image_generic.xml │ │ ├── bg_rounded_secondary_card.xml │ │ ├── bg_smartspace_card_secondary.xml │ │ ├── bg_smartspace_combination_sub_card.xml │ │ ├── bg_smartspace_media_item.xml │ │ ├── outline_rounded_secondary_card.xml │ │ ├── page_indicator_dot.xml │ │ ├── videocam.xml │ │ └── videocam_off.xml │ ├── layout │ │ ├── smartspace_base_card_doorbell.xml │ │ ├── smartspace_base_card_package_delivery.xml │ │ ├── smartspace_base_template_card.xml │ │ ├── smartspace_base_template_card_with_date.xml │ │ ├── smartspace_card.xml │ │ ├── smartspace_card_at_store.xml │ │ ├── smartspace_card_combination.xml │ │ ├── smartspace_card_combination_at_store.xml │ │ ├── smartspace_card_date.xml │ │ ├── smartspace_card_doorbell.xml │ │ ├── smartspace_card_flight.xml │ │ ├── smartspace_card_generic_image_with_bg.xml │ │ ├── smartspace_card_generic_landscape_image.xml │ │ ├── smartspace_card_generic_portrait_image.xml │ │ ├── smartspace_card_loyalty.xml │ │ ├── smartspace_card_shopping_list.xml │ │ ├── smartspace_card_sports.xml │ │ ├── smartspace_card_weather_forecast.xml │ │ ├── smartspace_card_weather_forecast_column.xml │ │ ├── smartspace_carousel_column_template_card.xml │ │ ├── smartspace_carousel_template_card.xml │ │ ├── smartspace_combination_sub_card.xml │ │ ├── smartspace_combined_cards_template_card.xml │ │ ├── smartspace_enhanced.xml │ │ ├── smartspace_extras.xml │ │ ├── smartspace_head_to_head_template_card.xml │ │ ├── smartspace_sub_card_template_card.xml │ │ ├── smartspace_sub_image_template_card.xml │ │ ├── smartspace_sub_list_template_card.xml │ │ ├── smartspace_subtitle_pane.xml │ │ ├── smartspace_title_subtile_pane.xml │ │ └── smartspace_title_subtitle_pane.xml │ ├── values-af-rZA │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-am-rET │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-ar-rSA │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-as-rIN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-az-rAZ │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-be-rBY │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-bg-rBG │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-bn-rBD │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-bs-rBA │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-ca-rES │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-cs-rCZ │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-da-rDK │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-de-rDE │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-el-rGR │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-eo-rUY │ │ └── plurals.xml │ ├── values-es-rES │ │ └── strings.xml │ ├── values-et-rEE │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-eu-rES │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-fa-rIR │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-fi-rFI │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-fr-rFR │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-gl-rES │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-gu-rIN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-hi-rIN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-hr-rHR │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-hu-rHU │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-hy-rAM │ │ └── strings.xml │ ├── values-in-rID │ │ └── strings.xml │ ├── values-is-rIS │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-it-rIT │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-iw-rIL │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-ja-rJP │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-ka-rGE │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-kk-rKZ │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-km-rKH │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-kn-rIN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-ko-rKR │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-ky-rKG │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-lo-rLA │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-lt-rLT │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-lv-rLV │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-mk-rMK │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-mn-rMN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-mr-rIN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-ms-rMY │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-my-rMM │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-nb-rNO │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-nl-rNL │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-or-rIN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-pa-rIN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-pl-rPL │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-pt-rBR │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-pt-rPT │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-ro-rRO │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-ru-rRU │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-sk-rSK │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-sl-rSI │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-sq-rAL │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-sr-rSP │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-sv-rSE │ │ └── strings.xml │ ├── values-sw-rKE │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-ta-rIN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-te-rIN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-th-rTH │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-tl-rPH │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-tr-rTR │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-uk-rUA │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-uz-rUZ │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-vi-rVN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-zh-rCN │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-zh-rHK │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-zh-rSG │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-zh-rTW │ │ ├── plurals.xml │ │ └── strings.xml │ ├── values-zu-rZA │ │ ├── plurals.xml │ │ └── strings.xml │ └── values │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── plurals.xml │ │ ├── strings.xml │ │ └── styles.xml └── src │ └── com │ └── google │ └── android │ └── systemui │ └── smartspace │ ├── BcNextAlarmData.java │ ├── BcSmartSpaceUtil.java │ ├── BcSmartspaceCard.java │ ├── BcSmartspaceCardCombination.java │ ├── BcSmartspaceCardCombinationAtStore.java │ ├── BcSmartspaceCardDoorbell.java │ ├── BcSmartspaceCardFlight.java │ ├── BcSmartspaceCardGenericImage.java │ ├── BcSmartspaceCardLoyalty.java │ ├── BcSmartspaceCardSecondary.java │ ├── BcSmartspaceCardShoppingList.java │ ├── BcSmartspaceCardSports.java │ ├── BcSmartspaceCardWeatherForecast.java │ ├── BcSmartspaceDataProvider.java │ ├── BcSmartspaceEvent.java │ ├── BcSmartspaceTemplateDataUtils.java │ ├── BcSmartspaceView.java │ ├── CardPagerAdapter.java │ ├── DoubleShadowIconDrawable.java │ ├── DoubleShadowTextView.java │ ├── EventEnum.java │ ├── IcuDateTextView.java │ ├── InstanceId.java │ ├── InterceptingViewPager.java │ ├── LazyServerFlagLoader.java │ ├── NewCardInfo.java │ ├── PageIndicator.java │ ├── ProtoStore.java │ ├── SmallHash.java │ ├── logging │ ├── BcSmartspaceCardLogger.java │ ├── BcSmartspaceCardLoggerUtil.java │ ├── BcSmartspaceCardLoggingInfo.java │ ├── BcSmartspaceCardMetadataLoggingInfo.java │ ├── BcSmartspaceSubcardLoggingInfo.java │ └── LogBuilder.java │ └── uitemplate │ ├── BaseTemplateCard.java │ ├── CarouselTemplateCard.java │ ├── CombinedCardsTemplateCard.java │ ├── HeadToHeadTemplateCard.java │ ├── SubCardTemplateCard.java │ ├── SubImageTemplateCard.java │ └── SubListTemplateCard.java ├── compose └── facade │ ├── core │ └── BaseComposeFacade.kt │ ├── disabled │ └── ComposeFacade.kt │ └── enabled │ └── ComposeFacade.kt ├── go ├── AndroidManifest-launcher.xml ├── AndroidManifest.xml ├── OWNERS └── quickstep │ ├── res │ ├── drawable │ │ ├── arrow_toast_rounded_background.xml │ │ ├── ic_listen.xml │ │ ├── ic_search.xml │ │ ├── ic_translate.xml │ │ ├── round_rect_button.xml │ │ └── round_rect_dialog.xml │ ├── layout │ │ ├── niu_actions_dialog.xml │ │ └── overview_actions_container.xml │ ├── values-af │ │ └── strings.xml │ ├── values-am │ │ └── strings.xml │ ├── values-ar │ │ └── strings.xml │ ├── values-as │ │ └── strings.xml │ ├── values-az │ │ └── strings.xml │ ├── values-b+sr+Latn │ │ └── strings.xml │ ├── values-be │ │ └── strings.xml │ ├── values-bg │ │ └── strings.xml │ ├── values-bn │ │ └── strings.xml │ ├── values-bs │ │ └── strings.xml │ ├── values-ca │ │ └── strings.xml │ ├── values-cs │ │ └── strings.xml │ ├── values-da │ │ └── strings.xml │ ├── values-de │ │ └── strings.xml │ ├── values-el │ │ └── strings.xml │ ├── values-en-rAU │ │ └── strings.xml │ ├── values-en-rCA │ │ └── strings.xml │ ├── values-en-rGB │ │ └── strings.xml │ ├── values-en-rIN │ │ └── strings.xml │ ├── values-en-rXC │ │ └── strings.xml │ ├── values-es-rUS │ │ └── strings.xml │ ├── values-es │ │ └── strings.xml │ ├── values-et │ │ └── strings.xml │ ├── values-eu │ │ └── strings.xml │ ├── values-fa │ │ └── strings.xml │ ├── values-fi │ │ └── strings.xml │ ├── values-fr-rCA │ │ └── strings.xml │ ├── values-fr │ │ └── strings.xml │ ├── values-gl │ │ └── strings.xml │ ├── values-gu │ │ └── strings.xml │ ├── values-hi │ │ └── strings.xml │ ├── values-hr │ │ └── strings.xml │ ├── values-hu │ │ └── strings.xml │ ├── values-hy │ │ └── strings.xml │ ├── values-in │ │ └── strings.xml │ ├── values-is │ │ └── strings.xml │ ├── values-it │ │ └── strings.xml │ ├── values-iw │ │ └── strings.xml │ ├── values-ja │ │ └── strings.xml │ ├── values-ka │ │ └── strings.xml │ ├── values-kk │ │ └── strings.xml │ ├── values-km │ │ └── strings.xml │ ├── values-kn │ │ └── strings.xml │ ├── values-ko │ │ └── strings.xml │ ├── values-ky │ │ └── strings.xml │ ├── values-land │ │ └── dimens.xml │ ├── values-lo │ │ └── strings.xml │ ├── values-lt │ │ └── strings.xml │ ├── values-lv │ │ └── strings.xml │ ├── values-mk │ │ └── strings.xml │ ├── values-ml │ │ └── strings.xml │ ├── values-mn │ │ └── strings.xml │ ├── values-mr │ │ └── strings.xml │ ├── values-ms │ │ └── strings.xml │ ├── values-my │ │ └── strings.xml │ ├── values-nb │ │ └── strings.xml │ ├── values-ne │ │ └── strings.xml │ ├── values-nl │ │ └── strings.xml │ ├── values-or │ │ └── strings.xml │ ├── values-pa │ │ └── strings.xml │ ├── values-pl │ │ └── strings.xml │ ├── values-pt-rPT │ │ └── strings.xml │ ├── values-pt │ │ └── strings.xml │ ├── values-ro │ │ └── strings.xml │ ├── values-ru │ │ └── strings.xml │ ├── values-si │ │ └── strings.xml │ ├── values-sk │ │ └── strings.xml │ ├── values-sl │ │ └── strings.xml │ ├── values-sq │ │ └── strings.xml │ ├── values-sr │ │ └── strings.xml │ ├── values-sv │ │ └── strings.xml │ ├── values-sw │ │ └── strings.xml │ ├── values-ta │ │ └── strings.xml │ ├── values-te │ │ └── strings.xml │ ├── values-th │ │ └── strings.xml │ ├── values-tl │ │ └── strings.xml │ ├── values-tr │ │ └── strings.xml │ ├── values-uk │ │ └── strings.xml │ ├── values-ur │ │ └── strings.xml │ ├── values-uz │ │ └── strings.xml │ ├── values-vi │ │ └── strings.xml │ ├── values-zh-rCN │ │ └── strings.xml │ ├── values-zh-rHK │ │ └── strings.xml │ ├── values-zh-rTW │ │ └── strings.xml │ ├── values-zu │ │ └── strings.xml │ ├── values │ │ ├── attrs.xml │ │ ├── colors.xml │ │ ├── config.xml │ │ ├── dimens.xml │ │ ├── integers.xml │ │ ├── strings.xml │ │ └── styles.xml │ └── xml │ │ └── device_profiles.xml │ └── src │ └── com │ └── android │ ├── launcher3 │ ├── AppSharing.java │ ├── BuildConfig.java │ ├── Launcher3QuickStepGo.java │ └── model │ │ ├── AppShareabilityChecker.java │ │ ├── AppShareabilityDatabase.java │ │ ├── AppShareabilityJobService.java │ │ ├── AppShareabilityManager.java │ │ └── AppShareabilityStatus.java │ └── quickstep │ ├── TaskOverlayFactoryGo.java │ └── views │ └── GoOverviewActionsView.java ├── libs └── libGoogleFeed.jar ├── lint-baseline.xml ├── privapp_whitelist_com.android.launcher3-ext.xml ├── proguard.flags ├── protos ├── launcher_atom.proto ├── launcher_trace.proto └── launcher_trace_file.proto ├── protos_overrides └── launcher_atom_extension.proto ├── quickstep ├── Android.bp ├── AndroidManifest-launcher.xml ├── AndroidManifest.xml ├── compose │ └── facade │ │ ├── core │ │ └── QuickstepComposeFeatures.kt │ │ ├── disabled │ │ └── QuickstepComposeFacade.kt │ │ └── enabled │ │ └── QuickstepComposeFacade.kt ├── dagger │ └── LauncherAppComponent.java ├── protos_overrides │ └── launcher_atom_extension.proto ├── res │ ├── color │ │ ├── all_set_bg_primary.xml │ │ ├── all_set_bg_tertiary.xml │ │ ├── bubblebar_drop_target_bg_color.xml │ │ ├── menu_item_hover_state_color.xml │ │ ├── taskbar_nav_icon_dark_color.xml │ │ └── taskbar_nav_icon_light_color.xml │ ├── drawable-hdpi │ │ └── nav_background.9.png │ ├── drawable-mdpi │ │ └── nav_background.9.png │ ├── drawable-sw600dp-land │ │ ├── gesture_tutorial_back_step_shape.xml │ │ ├── gesture_tutorial_home_step_shape.xml │ │ └── gesture_tutorial_overview_step_shape.xml │ ├── drawable-sw720dp-land │ │ ├── gesture_tutorial_back_step_shape.xml │ │ ├── gesture_tutorial_home_step_shape.xml │ │ └── gesture_tutorial_overview_step_shape.xml │ ├── drawable-v28 │ │ └── gesture_tutorial_action_button_background.xml │ ├── drawable-xhdpi │ │ └── nav_background.9.png │ ├── drawable-xxhdpi │ │ └── nav_background.9.png │ ├── drawable │ │ ├── all_apps_edu_circle.xml │ │ ├── assistant_gesture.xml │ │ ├── back_gesture.xml │ │ ├── bg_bubble_bar_drop_target.xml │ │ ├── bg_bubble_dismiss_circle.xml │ │ ├── bg_bubble_expanded_view_drop_target.xml │ │ ├── bg_floating_desktop_select.xml │ │ ├── bg_overview_actions_button.xml │ │ ├── bg_overview_clear_all_button.xml │ │ ├── bg_sandbox_close_button.xml │ │ ├── bg_sandbox_feedback.xml │ │ ├── bg_taskbar_edu_tooltip.xml │ │ ├── bg_wellbeing_toast.xml │ │ ├── bg_workspace_card_button.xml │ │ ├── button_taskbar_edu_bordered.xml │ │ ├── button_taskbar_edu_colored.xml │ │ ├── chip_hint_background_light.xml │ │ ├── default_sandbox_app_icon.xml │ │ ├── default_sandbox_app_task_thumbnail.xml │ │ ├── default_sandbox_wallpaper.xml │ │ ├── gesture_tutorial_action_button_background.xml │ │ ├── gesture_tutorial_back_step_shape.xml │ │ ├── gesture_tutorial_cancel_button_background.xml │ │ ├── gesture_tutorial_close_button.xml │ │ ├── gesture_tutorial_complete_checkmark.xml │ │ ├── gesture_tutorial_complete_checkmark_bg.xml │ │ ├── gesture_tutorial_finger_dot.xml │ │ ├── gesture_tutorial_home_step_shape.xml │ │ ├── gesture_tutorial_loop_back.xml │ │ ├── gesture_tutorial_loop_home.xml │ │ ├── gesture_tutorial_loop_overview.xml │ │ ├── gesture_tutorial_menu_back_button_background.xml │ │ ├── gesture_tutorial_menu_home_button_background.xml │ │ ├── gesture_tutorial_menu_overview_button_background.xml │ │ ├── gesture_tutorial_overview_step_shape.xml │ │ ├── gesture_tutorial_ripple.xml │ │ ├── home_gesture.xml │ │ ├── hotseat_edu_notification_icon.xml │ │ ├── hotseat_icon.xml │ │ ├── hotseat_search_bar.xml │ │ ├── ic_all_set.xml │ │ ├── ic_bubble_dismiss_white.xml │ │ ├── ic_chevron_down.xml │ │ ├── ic_clear_all.xml │ │ ├── ic_desktop.xml │ │ ├── ic_empty_recents.xml │ │ ├── ic_hourglass_top.xml │ │ ├── ic_ime_switcher.xml │ │ ├── ic_kill_app.xml │ │ ├── ic_lens.xml │ │ ├── ic_save_app_pair_left_right.xml │ │ ├── ic_save_app_pair_up_down.xml │ │ ├── ic_screenshot.xml │ │ ├── ic_share.xml │ │ ├── ic_sysbar_accessibility_button.xml │ │ ├── ic_sysbar_back.xml │ │ ├── ic_sysbar_back_kids.xml │ │ ├── ic_sysbar_home.xml │ │ ├── ic_sysbar_home_kids.xml │ │ ├── ic_sysbar_notifications.xml │ │ ├── ic_sysbar_quick_settings.xml │ │ ├── ic_sysbar_recent.xml │ │ ├── ic_sysbar_rotate_button_ccw_start_0.xml │ │ ├── ic_sysbar_rotate_button_ccw_start_90.xml │ │ ├── ic_sysbar_rotate_button_cw_start_0.xml │ │ ├── ic_sysbar_rotate_button_cw_start_90.xml │ │ ├── keyboard_quick_switch_task_view_background.xml │ │ ├── keyboard_quick_switch_text_button_background.xml │ │ ├── keyboard_quick_switch_thumbnail_background.xml │ │ ├── keyboard_quick_switch_view_background.xml │ │ ├── mock_app_icon.xml │ │ ├── mock_taskbar_background.xml │ │ ├── overview_gesture.xml │ │ ├── recents_locked.xml │ │ ├── redesigned_hotseat_icon.xml │ │ ├── redesigned_top_task_view.xml │ │ ├── rotate_prompt_bg.xml │ │ ├── rotate_tutorial_warning.xml │ │ ├── split_instructions_background.xml │ │ ├── task_menu_bg.xml │ │ ├── task_menu_item_bg.xml │ │ ├── taskbar_divider_button.xml │ │ ├── taskbar_icon_click_feedback_roundrect.xml │ │ ├── taskbar_overflow_icon.xml │ │ ├── top_task_view.xml │ │ ├── tutorial_step_indicator_pill.xml │ │ └── view_carousel.xml │ ├── interpolator │ │ └── app_open_x.xml │ ├── layout-land │ │ ├── gesture_tutorial_mock_hotseat.xml │ │ ├── gesture_tutorial_tablet_mock_hotseat.xml │ │ ├── keyboard_quick_switch_taskview.xml │ │ ├── keyboard_quick_switch_taskview_square.xml │ │ ├── redesigned_gesture_tutorial_mock_hotseat.xml │ │ └── redesigned_gesture_tutorial_tablet_mock_hotseat.xml │ ├── layout-sw600dp-land │ │ └── gesture_tutorial_step_menu.xml │ ├── layout-sw600dp │ │ └── allset_navigation.xml │ ├── layout │ │ ├── activity_allset.xml │ │ ├── all_apps_edu_view.xml │ │ ├── allset_navigation.xml │ │ ├── back_gesture_tutorial_background.xml │ │ ├── bubble_bar_drop_target.xml │ │ ├── bubble_expanded_view_drop_target.xml │ │ ├── bubble_view.xml │ │ ├── bubblebar_flyout.xml │ │ ├── bubblebar_item_view.xml │ │ ├── customizable_taskbar.xml │ │ ├── customizable_taskbar_view.xml │ │ ├── digital_wellbeing_toast.xml │ │ ├── fallback_recents_activity.xml │ │ ├── floating_header_content.xml │ │ ├── gesture_tutorial_activity.xml │ │ ├── gesture_tutorial_dialog.xml │ │ ├── gesture_tutorial_foldable_mock_hotseat.xml │ │ ├── gesture_tutorial_fragment.xml │ │ ├── gesture_tutorial_mock_conversation.xml │ │ ├── gesture_tutorial_mock_conversation_list.xml │ │ ├── gesture_tutorial_mock_hotseat.xml │ │ ├── gesture_tutorial_mock_webpage.xml │ │ ├── gesture_tutorial_rotation_prompt.xml │ │ ├── gesture_tutorial_step_menu.xml │ │ ├── gesture_tutorial_tablet_mock_conversation.xml │ │ ├── gesture_tutorial_tablet_mock_conversation_list.xml │ │ ├── gesture_tutorial_tablet_mock_hotseat.xml │ │ ├── gesture_tutorial_tablet_mock_taskbar.xml │ │ ├── gesture_tutorial_tablet_mock_webpage.xml │ │ ├── icon_app_chip_view.xml │ │ ├── icon_view.xml │ │ ├── keyboard_quick_switch_desktop_taskview.xml │ │ ├── keyboard_quick_switch_overview_taskview.xml │ │ ├── keyboard_quick_switch_taskview.xml │ │ ├── keyboard_quick_switch_taskview_square.xml │ │ ├── keyboard_quick_switch_taskview_thumbnail.xml │ │ ├── keyboard_quick_switch_view.xml │ │ ├── meminfo.xml │ │ ├── overview_actions_container.xml │ │ ├── overview_clear_all_button.xml │ │ ├── overview_panel.xml │ │ ├── predicted_app_icon.xml │ │ ├── predicted_hotseat_edu.xml │ │ ├── redesigned_gesture_tutorial_foldable_mock_hotseat.xml │ │ ├── redesigned_gesture_tutorial_fragment.xml │ │ ├── redesigned_gesture_tutorial_mock_hotseat.xml │ │ ├── redesigned_gesture_tutorial_tablet_mock_hotseat.xml │ │ ├── rotate_suggestion.xml │ │ ├── split_instructions_view.xml │ │ ├── task.xml │ │ ├── task_desktop.xml │ │ ├── task_grouped.xml │ │ ├── task_menu.xml │ │ ├── task_menu_with_arrow.xml │ │ ├── task_thumbnail.xml │ │ ├── task_thumbnail_deprecated.xml │ │ ├── task_view_menu_option.xml │ │ ├── taskbar.xml │ │ ├── taskbar_all_apps.xml │ │ ├── taskbar_all_apps_button.xml │ │ ├── taskbar_all_apps_sheet.xml │ │ ├── taskbar_app_icon.xml │ │ ├── taskbar_contextual_button.xml │ │ ├── taskbar_divider.xml │ │ ├── taskbar_divider_popup_menu.xml │ │ ├── taskbar_edu_features.xml │ │ ├── taskbar_edu_pinning.xml │ │ ├── taskbar_edu_search.xml │ │ ├── taskbar_edu_swipe.xml │ │ ├── taskbar_edu_tooltip.xml │ │ ├── taskbar_nav_button.xml │ │ ├── taskbar_overflow_button.xml │ │ ├── taskbar_predicted_app_icon.xml │ │ ├── transient_taskbar.xml │ │ └── widget_picker_activity.xml │ ├── raw-w600dp-h900dp │ │ └── all_set_page_bg.json │ ├── raw-w840dp-h480dp │ │ └── all_set_page_bg.json │ ├── raw-w840dp │ │ └── all_set_page_bg.json │ ├── raw │ │ ├── all_set_page_bg.json │ │ ├── back_gesture_tutorial_animation.json │ │ ├── back_gesture_tutorial_open_foldable_animation.json │ │ ├── back_gesture_tutorial_tablet_animation.json │ │ ├── checkmark_animation_end.json │ │ ├── checkmark_animation_in_progress.json │ │ ├── home_gesture_tutorial_animation.json │ │ ├── home_gesture_tutorial_open_foldable_animation.json │ │ ├── home_gesture_tutorial_tablet_animation.json │ │ ├── overview_gesture_tutorial_animation.json │ │ ├── overview_gesture_tutorial_open_foldable_animation.json │ │ ├── overview_gesture_tutorial_tablet_animation.json │ │ ├── taskbar_edu_pinning.json │ │ ├── taskbar_edu_search.json │ │ ├── taskbar_edu_splitscreen_persistent.json │ │ ├── taskbar_edu_splitscreen_transient.json │ │ ├── taskbar_edu_stashing.json │ │ ├── taskbar_edu_suggestions_persistent.json │ │ └── taskbar_edu_suggestions_transient.json │ ├── values-af │ │ └── strings.xml │ ├── values-am │ │ └── strings.xml │ ├── values-ar │ │ └── strings.xml │ ├── values-as │ │ └── strings.xml │ ├── values-az │ │ └── strings.xml │ ├── values-b+sr+Latn │ │ └── strings.xml │ ├── values-be │ │ └── strings.xml │ ├── values-bg │ │ └── strings.xml │ ├── values-bn │ │ └── strings.xml │ ├── values-bs │ │ └── strings.xml │ ├── values-ca │ │ └── strings.xml │ ├── values-cs │ │ └── strings.xml │ ├── values-da │ │ └── strings.xml │ ├── values-de │ │ └── strings.xml │ ├── values-el │ │ └── strings.xml │ ├── values-en-rAU │ │ └── strings.xml │ ├── values-en-rCA │ │ └── strings.xml │ ├── values-en-rGB │ │ └── strings.xml │ ├── values-en-rIN │ │ └── strings.xml │ ├── values-en-rXC │ │ └── strings.xml │ ├── values-es-rUS │ │ └── strings.xml │ ├── values-es │ │ └── strings.xml │ ├── values-et │ │ └── strings.xml │ ├── values-eu │ │ └── strings.xml │ ├── values-fa │ │ └── strings.xml │ ├── values-fi │ │ └── strings.xml │ ├── values-fr-rCA │ │ └── strings.xml │ ├── values-fr │ │ └── strings.xml │ ├── values-gl │ │ └── strings.xml │ ├── values-gu │ │ └── strings.xml │ ├── values-hi │ │ └── strings.xml │ ├── values-hr │ │ └── strings.xml │ ├── values-hu │ │ └── strings.xml │ ├── values-hy │ │ └── strings.xml │ ├── values-in │ │ └── strings.xml │ ├── values-is │ │ └── strings.xml │ ├── values-it │ │ └── strings.xml │ ├── values-iw │ │ └── strings.xml │ ├── values-ja │ │ └── strings.xml │ ├── values-ka │ │ └── strings.xml │ ├── values-kk │ │ └── strings.xml │ ├── values-km │ │ └── strings.xml │ ├── values-kn │ │ └── strings.xml │ ├── values-ko │ │ └── strings.xml │ ├── values-ky │ │ └── strings.xml │ ├── values-land │ │ └── dimens.xml │ ├── values-lo │ │ └── strings.xml │ ├── values-lt │ │ └── strings.xml │ ├── values-lv │ │ └── strings.xml │ ├── values-mk │ │ └── strings.xml │ ├── values-ml │ │ └── strings.xml │ ├── values-mn │ │ └── strings.xml │ ├── values-mr │ │ └── strings.xml │ ├── values-ms │ │ └── strings.xml │ ├── values-my │ │ └── strings.xml │ ├── values-nb │ │ └── strings.xml │ ├── values-ne │ │ └── strings.xml │ ├── values-night │ │ ├── colors.xml │ │ └── styles.xml │ ├── values-nl │ │ └── strings.xml │ ├── values-or │ │ └── strings.xml │ ├── values-pa │ │ └── strings.xml │ ├── values-pl │ │ └── strings.xml │ ├── values-pt-rPT │ │ └── strings.xml │ ├── values-pt │ │ └── strings.xml │ ├── values-ro │ │ └── strings.xml │ ├── values-ru │ │ └── strings.xml │ ├── values-si │ │ └── strings.xml │ ├── values-sk │ │ └── strings.xml │ ├── values-sl │ │ └── strings.xml │ ├── values-sq │ │ └── strings.xml │ ├── values-sr │ │ └── strings.xml │ ├── values-sv │ │ └── strings.xml │ ├── values-sw │ │ └── strings.xml │ ├── values-sw600dp-land │ │ └── dimens.xml │ ├── values-sw600dp │ │ ├── config.xml │ │ └── dimens.xml │ ├── values-sw720dp-land │ │ └── dimens.xml │ ├── values-sw720dp │ │ └── dimens.xml │ ├── values-sw900dp │ │ └── dimens.xml │ ├── values-ta │ │ └── strings.xml │ ├── values-te │ │ └── strings.xml │ ├── values-th │ │ └── strings.xml │ ├── values-tl │ │ └── strings.xml │ ├── values-tr │ │ └── strings.xml │ ├── values-uk │ │ └── strings.xml │ ├── values-ur │ │ └── strings.xml │ ├── values-uz │ │ └── strings.xml │ ├── values-vi │ │ └── strings.xml │ ├── values-zh-rCN │ │ └── strings.xml │ ├── values-zh-rHK │ │ └── strings.xml │ ├── values-zh-rTW │ │ └── strings.xml │ ├── values-zu │ │ └── strings.xml │ ├── values │ │ ├── attrs.xml │ │ ├── colors.xml │ │ ├── config.xml │ │ ├── dimens.xml │ │ ├── ids.xml │ │ ├── strings.xml │ │ └── styles.xml │ └── xml │ │ ├── indexable_launcher_prefs.xml │ │ └── overview_file_provider_paths.xml ├── src │ └── com │ │ └── android │ │ ├── launcher3 │ │ ├── CustomLauncher.java │ │ ├── CustomLauncherModelDelegate.java │ │ ├── LauncherAnimationRunner.java │ │ ├── LauncherInitListener.java │ │ ├── QuickstepAccessibilityDelegate.java │ │ ├── QuickstepTransitionManager.java │ │ ├── WidgetPickerActivity.java │ │ ├── appprediction │ │ │ ├── AppsDividerView.java │ │ │ ├── InstantAppItemInfo.java │ │ │ └── PredictionRowView.java │ │ ├── desktop │ │ │ └── DesktopRecentsTransitionController.kt │ │ ├── hybridhotseat │ │ │ ├── HotseatEduController.java │ │ │ ├── HotseatEduDialog.java │ │ │ ├── HotseatPredictionController.java │ │ │ ├── HotseatPredictionModel.java │ │ │ └── HotseatRestoreHelper.java │ │ ├── model │ │ │ ├── AppEventProducer.java │ │ │ ├── PredictionHelper.java │ │ │ ├── PredictionUpdateTask.java │ │ │ ├── QuickstepModelDelegate.java │ │ │ ├── WellbeingModel.java │ │ │ ├── WidgetPredictionsRequester.java │ │ │ └── WidgetsPredictionUpdateTask.java │ │ ├── popup │ │ │ └── QuickstepSystemShortcut.java │ │ ├── proxy │ │ │ └── ProxyActivityStarter.java │ │ ├── secondarydisplay │ │ │ └── SecondaryDisplayPredictionsImpl.java │ │ ├── splitscreen │ │ │ └── SplitShortcut.kt │ │ ├── statehandlers │ │ │ ├── DepthController.java │ │ │ └── DesktopVisibilityController.java │ │ ├── taskbar │ │ │ ├── BaseTaskbarContext.java │ │ │ ├── BlurredBitmapDrawable.kt │ │ │ ├── FallbackTaskbarUIController.java │ │ │ ├── KeyboardQuickSwitchController.java │ │ │ ├── KeyboardQuickSwitchTaskView.java │ │ │ ├── KeyboardQuickSwitchView.java │ │ │ ├── KeyboardQuickSwitchViewController.java │ │ │ ├── LauncherTaskbarUIController.java │ │ │ ├── NavbarButtonsViewController.java │ │ │ ├── NewWindowTaskbarShortcut.kt │ │ │ ├── RecentsHitboxExtender.java │ │ │ ├── StashedHandleView.java │ │ │ ├── StashedHandleViewController.java │ │ │ ├── TaskbarActivityContext.java │ │ │ ├── TaskbarAutohideSuspendController.java │ │ │ ├── TaskbarBackgroundRenderer.kt │ │ │ ├── TaskbarControllers.java │ │ │ ├── TaskbarDesktopModeController.kt │ │ │ ├── TaskbarDividerPopupView.kt │ │ │ ├── TaskbarDragController.java │ │ │ ├── TaskbarDragLayer.java │ │ │ ├── TaskbarDragLayerController.java │ │ │ ├── TaskbarDragView.java │ │ │ ├── TaskbarEduTooltip.kt │ │ │ ├── TaskbarEduTooltipController.kt │ │ │ ├── TaskbarForceVisibleImmersiveController.java │ │ │ ├── TaskbarHoverToolTipController.java │ │ │ ├── TaskbarInsetsController.kt │ │ │ ├── TaskbarKeyguardController.java │ │ │ ├── TaskbarLauncherStateController.java │ │ │ ├── TaskbarManager.java │ │ │ ├── TaskbarModelCallbacks.java │ │ │ ├── TaskbarModelCallbacksFactory.kt │ │ │ ├── TaskbarNavButtonController.java │ │ │ ├── TaskbarPinningController.kt │ │ │ ├── TaskbarPopupController.java │ │ │ ├── TaskbarRecentAppsController.kt │ │ │ ├── TaskbarScrimView.java │ │ │ ├── TaskbarScrimViewController.java │ │ │ ├── TaskbarSharedState.java │ │ │ ├── TaskbarShortcutMenuAccessibilityDelegate.java │ │ │ ├── TaskbarSpringOnStashController.java │ │ │ ├── TaskbarStashController.java │ │ │ ├── TaskbarStashViaTouchController.kt │ │ │ ├── TaskbarThresholdUtils.java │ │ │ ├── TaskbarTransitions.java │ │ │ ├── TaskbarTranslationController.java │ │ │ ├── TaskbarUIController.java │ │ │ ├── TaskbarUnfoldAnimationController.java │ │ │ ├── TaskbarView.java │ │ │ ├── TaskbarViewCallbacks.java │ │ │ ├── TaskbarViewCallbacksFactory.kt │ │ │ ├── TaskbarViewController.java │ │ │ ├── Utilities.java │ │ │ ├── VoiceInteractionWindowController.kt │ │ │ ├── allapps │ │ │ │ ├── TaskbarAllAppsContainerView.java │ │ │ │ ├── TaskbarAllAppsController.java │ │ │ │ ├── TaskbarAllAppsSlideInView.java │ │ │ │ ├── TaskbarAllAppsViewController.java │ │ │ │ └── TaskbarSearchSessionController.kt │ │ │ ├── bubbles │ │ │ │ ├── BubbleBarBackground.kt │ │ │ │ ├── BubbleBarBubbleIconsFactory.kt │ │ │ │ ├── BubbleBarController.java │ │ │ │ ├── BubbleBarItem.kt │ │ │ │ ├── BubbleBarLocationCompositeListener.kt │ │ │ │ ├── BubbleBarPinController.kt │ │ │ │ ├── BubbleBarView.java │ │ │ │ ├── BubbleBarViewController.java │ │ │ │ ├── BubbleControllers.java │ │ │ │ ├── BubbleCreator.java │ │ │ │ ├── BubbleDismissController.java │ │ │ │ ├── BubbleDismissViewExt.kt │ │ │ │ ├── BubbleDragAnimator.java │ │ │ │ ├── BubbleDragController.java │ │ │ │ ├── BubblePinController.kt │ │ │ │ ├── BubbleStashedHandleViewController.java │ │ │ │ ├── BubbleView.java │ │ │ │ ├── OWNERS │ │ │ │ ├── animation │ │ │ │ │ ├── BubbleAnimator.kt │ │ │ │ │ └── BubbleBarViewAnimator.kt │ │ │ │ ├── flyout │ │ │ │ │ ├── BubbleBarFlyoutController.kt │ │ │ │ │ ├── BubbleBarFlyoutMessage.kt │ │ │ │ │ ├── BubbleBarFlyoutPositioner.kt │ │ │ │ │ └── BubbleBarFlyoutView.kt │ │ │ │ └── stashing │ │ │ │ │ ├── BubbleStashController.kt │ │ │ │ │ ├── DeviceProfileDimensionsProviderAdapter.kt │ │ │ │ │ ├── PersistentBubbleStashController.kt │ │ │ │ │ └── TransientBubbleStashController.kt │ │ │ ├── customization │ │ │ │ ├── CustomizableTaskbarView.kt │ │ │ │ ├── TaskbarAllAppsButtonContainer.kt │ │ │ │ ├── TaskbarContainer.kt │ │ │ │ ├── TaskbarContainers.kt │ │ │ │ ├── TaskbarDividerContainer.kt │ │ │ │ ├── TaskbarFeatureEvaluator.kt │ │ │ │ ├── TaskbarIconSpecs.kt │ │ │ │ └── TaskbarSpecsEvaluator.kt │ │ │ ├── navbutton │ │ │ │ ├── AbstractNavButtonLayoutter.kt │ │ │ │ ├── KidsNavLayoutter.kt │ │ │ │ ├── LayoutResourceHelper.java │ │ │ │ ├── NavButtonLayoutFactory.kt │ │ │ │ ├── NearestTouchFrame.java │ │ │ │ ├── PhoneGestureLayoutter.kt │ │ │ │ ├── PhoneLandscapeNavLayoutter.kt │ │ │ │ ├── PhonePortraitNavLayoutter.kt │ │ │ │ ├── PhoneSeascapeNavLayoutter.kt │ │ │ │ ├── SetupNavLayoutter.kt │ │ │ │ └── TaskbarNavLayoutter.kt │ │ │ ├── overlay │ │ │ │ ├── TaskbarOverlayContext.java │ │ │ │ ├── TaskbarOverlayController.java │ │ │ │ └── TaskbarOverlayDragLayer.java │ │ │ └── unfold │ │ │ │ └── NonDestroyableScopedUnfoldTransitionProgressProvider.java │ │ └── uioverrides │ │ │ ├── BaseRecentsViewStateController.java │ │ │ ├── OverlayCallbackImpl.java │ │ │ ├── PredictedAppIcon.java │ │ │ ├── QuickstepAppWidgetHost.java │ │ │ ├── QuickstepInteractionHandler.java │ │ │ ├── QuickstepLauncher.java │ │ │ ├── QuickstepWidgetHolder.java │ │ │ ├── RecentsViewStateController.java │ │ │ ├── SystemApiWrapper.kt │ │ │ ├── flags │ │ │ └── DevOptionsUiHelper.kt │ │ │ ├── plugins │ │ │ ├── PluginEnablerImpl.java │ │ │ └── PluginManagerWrapperImpl.java │ │ │ ├── states │ │ │ ├── AllAppsState.java │ │ │ ├── BackgroundAppState.java │ │ │ ├── OverviewModalTaskState.java │ │ │ ├── OverviewState.java │ │ │ ├── QuickSwitchState.java │ │ │ ├── QuickstepAtomicAnimationFactory.java │ │ │ └── SplitScreenSelectState.java │ │ │ └── touchcontrollers │ │ │ ├── NavBarToHomeTouchController.java │ │ │ ├── NoButtonNavbarToOverviewTouchController.java │ │ │ ├── NoButtonQuickSwitchTouchController.java │ │ │ ├── PortraitOverviewStateTouchHelper.java │ │ │ ├── PortraitStatesTouchController.java │ │ │ ├── QuickSwitchTouchController.java │ │ │ ├── StatusBarTouchController.java │ │ │ ├── TaskViewTouchController.java │ │ │ ├── TransposedQuickSwitchTouchController.java │ │ │ └── TwoButtonNavbarTouchController.java │ │ └── quickstep │ │ ├── AbsSwipeUpHandler.java │ │ ├── AllAppsActionManager.kt │ │ ├── BaseActivityInterface.java │ │ ├── BaseContainerInterface.java │ │ ├── BinderTracker.java │ │ ├── DesktopSystemShortcut.kt │ │ ├── DeviceConfigWrapper.kt │ │ ├── FallbackActivityInterface.java │ │ ├── FallbackSwipeHandler.java │ │ ├── GestureState.java │ │ ├── HomeVisibilityState.kt │ │ ├── ImageActionsApi.java │ │ ├── InputConsumer.java │ │ ├── InstantAppResolverImpl.java │ │ ├── LauncherActivityInterface.java │ │ ├── LauncherBackAnimationController.java │ │ ├── LauncherRestoreEventLoggerImpl.kt │ │ ├── LauncherSearchIndexablesProvider.java │ │ ├── LauncherSwipeHandlerV2.java │ │ ├── MultiStateCallback.java │ │ ├── NavHandle.java │ │ ├── OrientationRectF.java │ │ ├── OrientationTouchTransformer.java │ │ ├── OverviewCommandHelper.kt │ │ ├── OverviewComponentObserver.java │ │ ├── QuickstepProcessInitializer.java │ │ ├── QuickstepTestInformationHandler.java │ │ ├── RecentTasksList.java │ │ ├── RecentsActivity.java │ │ ├── RecentsAnimationCallbacks.java │ │ ├── RecentsAnimationController.java │ │ ├── RecentsAnimationDeviceState.java │ │ ├── RecentsAnimationTargets.java │ │ ├── RecentsFilterState.java │ │ ├── RecentsModel.java │ │ ├── RemoteAnimationTargets.java │ │ ├── RemoteRunnable.java │ │ ├── RemoteTargetGluer.java │ │ ├── RotationTouchHelper.java │ │ ├── SimpleOrientationTouchTransformer.java │ │ ├── SplitSelectionListener.kt │ │ ├── SwipeUpAnimationLogic.java │ │ ├── SystemUiProxy.java │ │ ├── TaskAnimationManager.java │ │ ├── TaskIconCache.java │ │ ├── TaskOverlayFactory.java │ │ ├── TaskShortcutFactory.java │ │ ├── TaskThumbnailCache.java │ │ ├── TaskUtils.java │ │ ├── TaskViewUtils.java │ │ ├── TopTaskTracker.java │ │ ├── TouchInteractionService.java │ │ ├── ViewUtils.java │ │ ├── contextualeducation │ │ └── SystemContextualEduStatsManager.java │ │ ├── dagger │ │ ├── QuickStepModule.java │ │ └── QuickstepBaseAppComponent.java │ │ ├── fallback │ │ ├── FallbackNavBarTouchController.java │ │ ├── FallbackRecentsStateController.java │ │ ├── FallbackRecentsView.java │ │ ├── RecentsDragLayer.java │ │ ├── RecentsState.java │ │ └── RecentsTaskController.java │ │ ├── inputconsumers │ │ ├── AccessibilityInputConsumer.java │ │ ├── AssistantInputConsumer.java │ │ ├── BubbleBarInputConsumer.java │ │ ├── DelegateInputConsumer.java │ │ ├── DeviceLockedInputConsumer.java │ │ ├── NavHandleLongPressHandler.java │ │ ├── NavHandleLongPressInputConsumer.java │ │ ├── OneHandedModeInputConsumer.java │ │ ├── OtherActivityInputConsumer.java │ │ ├── OverviewInputConsumer.java │ │ ├── OverviewWithoutFocusInputConsumer.java │ │ ├── ProgressDelegateInputConsumer.java │ │ ├── ResetGestureInputConsumer.java │ │ ├── ScreenPinnedInputConsumer.java │ │ ├── SysUiOverlayInputConsumer.java │ │ ├── TaskbarUnstashInputConsumer.java │ │ └── TrackpadStatusBarInputConsumer.java │ │ ├── interaction │ │ ├── AllSetActivity.java │ │ ├── AnimatedTaskView.java │ │ ├── AnimatedTaskbarView.java │ │ ├── BackGestureTutorialController.java │ │ ├── BackGestureTutorialFragment.java │ │ ├── EdgeBackGestureHandler.java │ │ ├── EdgeBackGesturePanel.java │ │ ├── GestureSandboxActivity.java │ │ ├── GestureSandboxFragment.java │ │ ├── HomeGestureTutorialController.java │ │ ├── HomeGestureTutorialFragment.java │ │ ├── MenuFragment.java │ │ ├── NavBarGestureHandler.java │ │ ├── OverviewGestureTutorialController.java │ │ ├── OverviewGestureTutorialFragment.java │ │ ├── RootSandboxLayout.java │ │ ├── RotationPromptFragment.java │ │ ├── SwipeUpGestureTutorialController.java │ │ ├── TutorialController.java │ │ ├── TutorialFragment.java │ │ └── TutorialStepIndicator.java │ │ ├── logging │ │ ├── SettingsChangeLogger.java │ │ └── StatsLogCompatManager.java │ │ ├── orientation │ │ ├── LandscapePagedViewHandler.kt │ │ ├── PortraitPagedViewHandler.java │ │ ├── RecentsPagedOrientationHandler.kt │ │ └── SeascapePagedViewHandler.kt │ │ ├── recents │ │ ├── data │ │ │ ├── HighResLoadingStateNotifier.kt │ │ │ ├── RecentTasksDataSource.kt │ │ │ ├── RecentTasksRepository.kt │ │ │ ├── RecentsDeviceProfile.kt │ │ │ ├── RecentsDeviceProfileRepository.kt │ │ │ ├── RecentsDeviceProfileRepositoryImpl.kt │ │ │ ├── RecentsRotationState.kt │ │ │ ├── RecentsRotationStateRepository.kt │ │ │ ├── RecentsRotationStateRepositoryImpl.kt │ │ │ ├── TaskVisualsChangeNotifier.kt │ │ │ ├── TaskVisualsChangedDelegate.kt │ │ │ └── TasksRepository.kt │ │ ├── di │ │ │ ├── RecentsDependencies.kt │ │ │ ├── RecentsDependenciesExtras.kt │ │ │ └── RecentsDependenciesScope.kt │ │ ├── usecase │ │ │ ├── GetThumbnailPositionUseCase.kt │ │ │ ├── GetThumbnailUseCase.kt │ │ │ ├── SysUiStatusNavFlagsUseCase.kt │ │ │ └── ThumbnailPositionState.kt │ │ └── viewmodel │ │ │ ├── RecentsViewData.kt │ │ │ ├── RecentsViewModel.kt │ │ │ └── TaskContainerViewModel.kt │ │ ├── task │ │ ├── thumbnail │ │ │ ├── LiveTileView.kt │ │ │ ├── SplashAlphaUseCase.kt │ │ │ ├── TaskOverlayUiState.kt │ │ │ ├── TaskThumbnailUiState.kt │ │ │ ├── TaskThumbnailView.kt │ │ │ ├── TaskThumbnailViewData.kt │ │ │ └── data │ │ │ │ ├── TaskIconDataSource.kt │ │ │ │ └── TaskThumbnailDataSource.kt │ │ ├── util │ │ │ └── TaskOverlayHelper.kt │ │ └── viewmodel │ │ │ ├── TaskContainerData.kt │ │ │ ├── TaskOverlayViewModel.kt │ │ │ ├── TaskThumbnailViewModel.kt │ │ │ ├── TaskViewData.kt │ │ │ └── TaskViewModel.kt │ │ ├── util │ │ ├── ActiveGestureErrorDetector.java │ │ ├── ActiveGestureLog.java │ │ ├── ActivityInitListener.java │ │ ├── AnimUtils.java │ │ ├── AnimatorControllerWithResistance.java │ │ ├── AppPairLaunchTimings.kt │ │ ├── AppPairsController.java │ │ ├── AssistContentRequester.java │ │ ├── AssistStateManager.java │ │ ├── AssistUtils.java │ │ ├── AsyncClockEventDelegate.java │ │ ├── BackAnimState.kt │ │ ├── BaseDepthController.java │ │ ├── BaseUnfoldMoveFromCenterAnimator.java │ │ ├── BorderAnimator.kt │ │ ├── CachedEventDispatcher.java │ │ ├── DesktopTask.java │ │ ├── DeviceConfigHelper.kt │ │ ├── FadeOutRemoteTransition.kt │ │ ├── GestureExclusionManager.kt │ │ ├── GroupTask.java │ │ ├── ImageActionUtils.java │ │ ├── InputConsumerProxy.java │ │ ├── InputProxyHandlerFactory.java │ │ ├── LauncherUnfoldAnimationController.java │ │ ├── LauncherViewsMoveFromCenterTranslationApplier.java │ │ ├── LayoutUtils.java │ │ ├── LogUtils.kt │ │ ├── LottieAnimationColorUtils.java │ │ ├── MotionPauseDetector.java │ │ ├── MultiValueUpdateListener.java │ │ ├── NavBarPosition.kt │ │ ├── OverviewToHomeAnim.java │ │ ├── OverviewToSplitTimings.java │ │ ├── PhoneAppPairLaunchTimings.kt │ │ ├── PhoneOverviewToSplitTimings.java │ │ ├── PhoneSplitToConfirmTimings.java │ │ ├── QuickstepOnboardingPrefs.java │ │ ├── RecentsAtomicAnimationFactory.java │ │ ├── RecentsOrientedState.java │ │ ├── RecentsViewUtils.kt │ │ ├── RecordingSurfaceTransaction.java │ │ ├── RectFSpringAnim.java │ │ ├── ScalingWorkspaceRevealAnim.kt │ │ ├── SlideInRemoteTransition.kt │ │ ├── SplitAnimationController.kt │ │ ├── SplitAnimationTimings.java │ │ ├── SplitScreenUtils.kt │ │ ├── SplitSelectDataHolder.kt │ │ ├── SplitSelectStateController.java │ │ ├── SplitToConfirmTimings.java │ │ ├── SplitToWorkspaceController.java │ │ ├── SplitWithKeyboardShortcutController.java │ │ ├── StaggeredWorkspaceAnim.java │ │ ├── SurfaceTransaction.java │ │ ├── SurfaceTransactionApplier.java │ │ ├── SwipePipToHomeAnimator.java │ │ ├── SystemActionConstants.java │ │ ├── SystemUiFlagUtils.kt │ │ ├── SystemWindowManagerProxy.java │ │ ├── TISBindHelper.java │ │ ├── TabletAppPairLaunchTimings.kt │ │ ├── TabletHomeToSplitTimings.java │ │ ├── TabletOverviewToSplitTimings.java │ │ ├── TabletSplitToConfirmTimings.java │ │ ├── TaskCornerRadius.java │ │ ├── TaskGridNavHelper.java │ │ ├── TaskKeyByLastActiveTimeCache.java │ │ ├── TaskKeyCache.java │ │ ├── TaskKeyLruCache.java │ │ ├── TaskRemovedDuringLaunchListener.java │ │ ├── TaskRestartedDuringLaunchListener.java │ │ ├── TaskViewSimulator.java │ │ ├── TaskVisualsChangeListener.java │ │ ├── TransformParams.java │ │ ├── TriggerSwipeUpTouchTracker.java │ │ ├── UnfoldMoveFromCenterHotseatAnimator.java │ │ ├── UnfoldMoveFromCenterWorkspaceAnimator.java │ │ ├── VibrationConstants.java │ │ ├── WorkspaceRevealAnim.java │ │ ├── WorkspaceUnlockAnim.java │ │ └── unfold │ │ │ ├── LauncherJankMonitorTransitionProgressListener.kt │ │ │ ├── LauncherUnfoldTransitionController.kt │ │ │ ├── PreemptiveUnfoldTransitionProgressProvider.kt │ │ │ ├── ProxyUnfoldTransitionProvider.kt │ │ │ └── UnfoldAnimationBuilder.kt │ │ └── views │ │ ├── AllAppsEduView.java │ │ ├── ClearAllButton.java │ │ ├── DesktopTaskView.kt │ │ ├── DigitalWellBeingToast.kt │ │ ├── FixedSizeImageView.kt │ │ ├── FloatingAppPairBackground.kt │ │ ├── FloatingAppPairView.kt │ │ ├── FloatingFullscreenAppPairBackground.kt │ │ ├── FloatingTaskThumbnailView.java │ │ ├── FloatingTaskView.java │ │ ├── FloatingWidgetBackgroundView.java │ │ ├── FloatingWidgetView.java │ │ ├── GroupedTaskView.kt │ │ ├── IconAppChipView.java │ │ ├── IconView.kt │ │ ├── LaunchableConstraintLayout.kt │ │ ├── LauncherRecentsView.java │ │ ├── MemInfoView.java │ │ ├── OverviewActionsView.java │ │ ├── RecentsView.java │ │ ├── RecentsViewContainer.java │ │ ├── RecentsViewModelHelper.kt │ │ ├── SplitInstructionsView.java │ │ ├── SplitPlaceholderView.java │ │ ├── TaskContainer.kt │ │ ├── TaskMenuView.java │ │ ├── TaskMenuViewWithArrow.kt │ │ ├── TaskThumbnailViewDeprecated.java │ │ ├── TaskView.kt │ │ ├── TaskViewIcon.java │ │ └── TaskViewType.kt ├── testing │ └── com │ │ └── android │ │ └── launcher3 │ │ └── taskbar │ │ └── bubbles │ │ └── testing │ │ └── FakeBubbleViewFactory.kt └── tests │ ├── OWNERS │ ├── multivalentScreenshotTests │ └── src │ │ └── com │ │ └── android │ │ └── launcher3 │ │ └── taskbar │ │ └── bubbles │ │ ├── BubbleBarViewScreenshotTest.kt │ │ ├── BubbleViewScreenshotTest.kt │ │ └── flyout │ │ └── BubbleBarFlyoutViewScreenshotTest.kt │ ├── multivalentTests │ └── src │ │ └── com │ │ └── android │ │ ├── launcher3 │ │ ├── model │ │ │ ├── AppEventProducerTest.java │ │ │ ├── QuickstepModelDelegateTest.kt │ │ │ └── WidgetsPredictionsRequesterTest.kt │ │ └── taskbar │ │ │ ├── RecentsHitboxExtenderTest.java │ │ │ ├── TaskbarControllerTestUtil.kt │ │ │ ├── TaskbarDesktopModeControllerTest.kt │ │ │ ├── TaskbarEduTooltipControllerTest.kt │ │ │ ├── TaskbarNavButtonControllerTest.java │ │ │ ├── TaskbarViewControllerTest.kt │ │ │ ├── allapps │ │ │ └── TaskbarAllAppsControllerTest.kt │ │ │ ├── bubbles │ │ │ ├── BubbleBarInputConsumerTest.kt │ │ │ ├── BubbleViewTest.kt │ │ │ ├── OWNERS │ │ │ ├── animation │ │ │ │ ├── BubbleAnimatorTest.kt │ │ │ │ └── BubbleBarViewAnimatorTest.kt │ │ │ ├── flyout │ │ │ │ └── BubbleBarFlyoutControllerTest.kt │ │ │ └── stashing │ │ │ │ ├── PersistentBubbleStashControllerTest.kt │ │ │ │ ├── StashingTestUtils.kt │ │ │ │ └── TransientBubbleStashControllerTest.kt │ │ │ ├── navbutton │ │ │ └── NavButtonLayoutFactoryTest.kt │ │ │ ├── overlay │ │ │ └── TaskbarOverlayControllerTest.kt │ │ │ └── rules │ │ │ ├── TaskbarModeRule.kt │ │ │ ├── TaskbarModeRuleTest.kt │ │ │ ├── TaskbarPinningPreferenceRule.kt │ │ │ ├── TaskbarPinningPreferenceRuleTest.kt │ │ │ ├── TaskbarPreferenceRule.kt │ │ │ ├── TaskbarPreferenceRuleTest.kt │ │ │ ├── TaskbarUnitTestRule.kt │ │ │ ├── TaskbarUnitTestRuleTest.kt │ │ │ ├── TaskbarWindowSandboxContext.kt │ │ │ └── TaskbarWindowSandboxContextTest.kt │ │ └── quickstep │ │ ├── AbsSwipeUpHandlerTestCase.java │ │ ├── AllAppsActionManagerTest.kt │ │ ├── FallbackSwipeHandlerTestCase.java │ │ ├── FullscreenDrawParamsTest.kt │ │ ├── HotseatWidthCalculationTest.kt │ │ ├── LauncherRestoreEventLoggerImplTest.kt │ │ ├── LauncherSwipeHandlerV2Test.kt │ │ ├── LauncherSwipeHandlerV2TestCase.java │ │ ├── MultiStateCallbackTest.java │ │ ├── NavigationBarRotationContextTest.java │ │ ├── OverviewCommandHelperTest.kt │ │ ├── RobolectricTest.kt │ │ ├── inputconsumers │ │ └── NavHandleLongPressInputConsumerTest.java │ │ ├── logging │ │ └── SettingsChangeLoggerTest.kt │ │ ├── orientation │ │ ├── LandscapePagedViewHandlerTest.kt │ │ └── SeascapePagedViewHandlerTest.kt │ │ ├── recents │ │ ├── data │ │ │ ├── FakeHighResLoadingStateNotifier.kt │ │ │ ├── FakeRecentTasksDataSource.kt │ │ │ ├── FakeRecentsDeviceProfileRepository.kt │ │ │ ├── FakeRecentsRotationStateRepository.kt │ │ │ ├── FakeTaskIconDataSource.kt │ │ │ ├── FakeTaskThumbnailDataSource.kt │ │ │ ├── FakeTaskVisualsChangeNotifier.kt │ │ │ ├── FakeTasksRepository.kt │ │ │ ├── RecentsDeviceProfileRepositoryImplTest.kt │ │ │ ├── RecentsRotationStateRepositoryImplTest.kt │ │ │ ├── TaskVisualsChangedDelegateTest.kt │ │ │ └── TasksRepositoryTest.kt │ │ ├── usecase │ │ │ ├── GetThumbnailPositionUseCaseTest.kt │ │ │ ├── GetThumbnailUseCaseTest.kt │ │ │ └── SysUiStatusNavFlagsUseCaseTest.kt │ │ └── viewmodel │ │ │ └── RecentsViewModelTest.kt │ │ ├── task │ │ ├── thumbnail │ │ │ ├── SplashAlphaUseCaseTest.kt │ │ │ └── TaskThumbnailViewModelTest.kt │ │ └── viewmodel │ │ │ └── TaskOverlayViewModelTest.kt │ │ ├── taskbar │ │ └── customization │ │ │ └── TaskbarSpecsEvaluatorTest.kt │ │ └── util │ │ ├── AppPairsControllerTest.kt │ │ ├── DesktopTaskTest.kt │ │ ├── GroupTaskTest.kt │ │ ├── RecentsOrientedStateTest.java │ │ ├── SplitAnimationControllerTest.kt │ │ ├── SplitSelectStateControllerTest.kt │ │ ├── TaskGridNavHelperTest.kt │ │ ├── TaskKeyByLastActiveTimeCacheTest.java │ │ ├── TaskViewSimulatorTest.java │ │ └── TestExtensions.kt │ ├── multivalentTestsForDevice │ └── src │ └── com │ └── android │ ├── launcher3 │ ├── model │ │ └── WidgetsPredicationUpdateTaskTest.java │ ├── taskbar │ │ ├── FallbackTaskbarUIControllerTest.kt │ │ ├── TaskbarBaseTestCase.kt │ │ ├── TaskbarHoverToolTipControllerTest.java │ │ ├── TaskbarKeyguardControllerTest.kt │ │ └── TaskbarRecentAppsControllerTest.kt │ └── testcomponent │ │ └── ExcludeFromRecentsTestActivity.java │ └── quickstep │ ├── AbstractQuickStepTest.java │ ├── AbstractTaplTestsTaskbar.java │ ├── DesktopSystemShortcutTest.kt │ ├── FallbackRecentsTest.java │ ├── NavigationModeSwitchRule.java │ ├── OrientationTouchTransformerTest.java │ ├── RecentTasksListTest.java │ ├── RecentsAnimationDeviceStateTest.kt │ ├── RecentsModelTest.java │ ├── TaplDigitalWellBeingToastTest.java │ ├── TaplOverviewIconTest.java │ ├── TaplPrivateSpaceTest.java │ ├── TaplStartLauncherViaGestureTests.java │ ├── TaplTestsKeyboardQuickSwitch.java │ ├── TaplTestsOverviewDesktop.kt │ ├── TaplTestsPersistentTaskbar.java │ ├── TaplTestsQuickstep.java │ ├── TaplTestsSplitscreen.java │ ├── TaplTestsTaskbar.java │ ├── TaplTestsTrackpad.java │ ├── TaplTestsTransientTaskbar.java │ ├── TaskAnimationManagerTest.java │ ├── TaskThumbnailCacheTest.java │ ├── TaskViewTest.java │ ├── TaskbarModeSwitchRule.java │ ├── taskbar │ └── controllers │ │ └── TaskbarPinningControllerTest.kt │ └── util │ ├── GestureExclusionManagerTest.kt │ ├── SplitScreenTestUtils.kt │ ├── SplitSelectDataHolderTest.kt │ ├── TaplTestsPredictionRow.java │ └── unfold │ └── PreemptiveUnfoldTransitionProgressProviderTest.kt ├── res ├── anim │ ├── no_anim.xml │ └── task_open_enter.xml ├── animator │ ├── all_apps_fastscroll_icon_anim.xml │ ├── discovery_bounce.xml │ └── overview_button_anim.xml ├── color-night-v31 │ ├── accent_ripple_color.xml │ ├── all_apps_button_color.xml │ ├── all_apps_button_color_2.xml │ ├── all_apps_tab_background_selected.xml │ ├── all_apps_tab_text.xml │ ├── all_apps_tabs_background.xml │ ├── folder_background_dark.xml │ ├── folder_preview_dark.xml │ ├── material_color_surface_container_lowest.xml │ ├── popup_shade_first.xml │ ├── popup_shade_second.xml │ ├── popup_shade_third.xml │ ├── qsb_tertiary.xml │ ├── taskbar_background.xml │ ├── taskbar_divider_background.xml │ ├── taskbar_stroke.xml │ ├── widget_picker_primary_surface_color_dark.xml │ ├── widget_picker_secondary_surface_color_dark.xml │ └── widget_picker_tab_background_unselected_dark.xml ├── color-night │ ├── accent_ripple_color.xml │ ├── all_apps_tab_background_selected.xml │ ├── all_apps_tab_text.xml │ └── all_apps_tabs_background.xml ├── color-v31 │ ├── accent_ripple_color.xml │ ├── all_apps_button_bg_color.xml │ ├── all_apps_button_color.xml │ ├── all_apps_button_color_1.xml │ ├── all_apps_button_color_2.xml │ ├── all_apps_button_color_3.xml │ ├── all_apps_button_color_4.xml │ ├── all_apps_tab_background_selected.xml │ ├── all_apps_tab_text.xml │ ├── all_apps_tabs_background.xml │ ├── folder_background_light.xml │ ├── folder_preview_light.xml │ ├── home_settings_switch_thumb_color.xml │ ├── home_settings_switch_track_color.xml │ ├── material_color_surface_container_lowest.xml │ ├── overview_scrim.xml │ ├── overview_scrim_dark.xml │ ├── popup_shade_first.xml │ ├── popup_shade_second.xml │ ├── popup_shade_third.xml │ ├── qsb_primary.xml │ ├── qsb_quaternary.xml │ ├── qsb_secondary.xml │ ├── qsb_tertiary.xml │ ├── taskbar_background.xml │ ├── taskbar_divider_background.xml │ ├── taskbar_edu_button_color.xml │ ├── widget_picker_primary_surface_color_light.xml │ └── widget_picker_secondary_surface_color_light.xml ├── color-v33 │ ├── overview_scrim.xml │ └── overview_scrim_dark.xml ├── color │ ├── accent_ripple_color.xml │ ├── all_apps_bg_hand_fill.xml │ ├── all_apps_bg_hand_fill_dark.xml │ ├── all_apps_tab_background_selected.xml │ ├── all_apps_tab_text.xml │ ├── all_apps_tabs_background.xml │ ├── arrow_tip_view_bg.xml │ ├── arrow_tip_view_content.xml │ ├── button_bg.xml │ ├── button_text.xml │ ├── cell_layout_bg_color.xml │ ├── drop_target_text.xml │ ├── hotseat_qsb_bg_color.xml │ ├── meminfo_bg.xml │ ├── overview_button.xml │ ├── overview_scrim.xml │ ├── overview_scrim_dark.xml │ ├── popup_shade_first.xml │ ├── popup_shade_second.xml │ ├── popup_shade_third.xml │ ├── surface.xml │ ├── system_shortcut_text.xml │ ├── taskbar_background_dark.xml │ ├── taskbar_stroke.xml │ ├── widget_picker_tab_text.xml │ └── widgets_picker_scrim.xml ├── drawable-hdpi │ └── ic_widget_resize_handle.png ├── drawable-mdpi │ └── ic_widget_resize_handle.png ├── drawable-night │ └── ic_derpowl.png ├── drawable-sw720dp │ └── ic_transient_taskbar_all_apps_search_button.xml ├── drawable-v28 │ ├── bg_celllayout.xml │ ├── round_rect_folder.xml │ ├── round_rect_primary.xml │ └── top_round_rect_primary.xml ├── drawable-v31 │ ├── home_settings_switch_thumb.xml │ └── home_settings_switch_track.xml ├── drawable-xhdpi │ └── ic_widget_resize_handle.png ├── drawable-xxhdpi │ └── ic_widget_resize_handle.png ├── drawable-xxxhdpi │ └── ic_widget_resize_handle.png ├── drawable │ ├── add_item_dialog_background.xml │ ├── all_apps_divider.xml │ ├── all_apps_search_hint.xml │ ├── all_apps_tabs_background.xml │ ├── arrow_toast_rounded_background.xml │ ├── avd_hidden_lock.xml │ ├── avd_hidden_unlock.xml │ ├── avd_protected_lock.xml │ ├── avd_protected_unlock.xml │ ├── bg_all_apps_button.xml │ ├── bg_all_apps_searchbox.xml │ ├── bg_all_apps_searchbox_google.xml │ ├── bg_all_apps_searchbox_google_themed.xml │ ├── bg_celllayout.xml │ ├── bg_google_qsb.xml │ ├── bg_letter_list_text.xml │ ├── bg_notification_content.xml │ ├── bg_ps_header.xml │ ├── bg_ps_lock_button.xml │ ├── bg_ps_mask_left_corner.xml │ ├── bg_ps_mask_right_corner.xml │ ├── bg_ps_transition_image.xml │ ├── bg_ps_unlock_button.xml │ ├── bg_rounded_corner_bottom_sheet.xml │ ├── bg_rounded_corner_bottom_sheet_handle.xml │ ├── bg_widgets_content.xml │ ├── bg_widgets_full_sheet.xml │ ├── bg_widgets_header.xml │ ├── bg_widgets_header_states.xml │ ├── bg_widgets_header_states_two_pane.xml │ ├── bg_widgets_header_two_pane.xml │ ├── bg_widgets_searchbox.xml │ ├── bg_work_apps_paused_action_button.xml │ ├── bkg_appseat.xml │ ├── bottom_sheet_top_border.xml │ ├── bubble_ic_overflow_button.xml │ ├── button_bottom_rounded_colored_ripple.xml │ ├── button_rounded_colored_ripple.xml │ ├── button_top_rounded_bordered_ripple.xml │ ├── cloud_download_24px.xml │ ├── cloud_download_semibold_24px.xml │ ├── deep_shortcuts_text_placeholder.xml │ ├── derp_about.xml │ ├── derp_branding_image.xml │ ├── derp_card.xml │ ├── desktop_mode_ic_taskbar_menu_new_window.xml │ ├── drop_target_background.xml │ ├── drop_target_frame.xml │ ├── drop_target_frame_hover.xml │ ├── enter_home_gardening_icon.xml │ ├── float_portrait_2_24px.xml │ ├── full_rounded_colored_ripple.xml │ ├── full_rounded_transparent_ripple.xml │ ├── gm_edit_24.xml │ ├── gutter_horizontal.xml │ ├── horizontal_ellipsis.xml │ ├── ic_allapps_search.xml │ ├── ic_android_version.xml │ ├── ic_apps.xml │ ├── ic_arrow_back_ui.xml │ ├── ic_battery_widget_category.xml │ ├── ic_block_no_shadow.xml │ ├── ic_bubble_button.xml │ ├── ic_bubbles_widget_category.xml │ ├── ic_caption_desktop_button_foreground.xml │ ├── ic_close_work_edu.xml │ ├── ic_conversations_widget_category.xml │ ├── ic_corp.xml │ ├── ic_corp_off.xml │ ├── ic_deepshortcut_placeholder.xml │ ├── ic_derp_apps.xml │ ├── ic_derp_apps_bg.xml │ ├── ic_derp_home.xml │ ├── ic_derp_home_bg.xml │ ├── ic_derp_icons.xml │ ├── ic_derp_icons_bg.xml │ ├── ic_derp_more.xml │ ├── ic_derp_more_bg.xml │ ├── ic_derp_recent.xml │ ├── ic_derp_recent_bg.xml │ ├── ic_derp_suggestions.xml │ ├── ic_derp_suggestions_bg.xml │ ├── ic_derpowl.png │ ├── ic_desktop_with_bg.xml │ ├── ic_expand_less.xml │ ├── ic_expand_more.xml │ ├── ic_gm_close_24.xml │ ├── ic_help.xml │ ├── ic_hidden_locked.xml │ ├── ic_hidden_unlocked.xml │ ├── ic_icon_pack_plus.xml │ ├── ic_info_no_shadow.xml │ ├── ic_install_no_shadow.xml │ ├── ic_install_to_private.xml │ ├── ic_lens_color.xml │ ├── ic_lens_themed.xml │ ├── ic_lock.xml │ ├── ic_mic_color.xml │ ├── ic_mic_themed.xml │ ├── ic_more_vert_dots.xml │ ├── ic_note_taking_widget_category.xml │ ├── ic_palette.xml │ ├── ic_pin.xml │ ├── ic_pixel_weather_launcher_foreground.xml │ ├── ic_pixel_weather_launcher_foreground_0.xml │ ├── ic_pixel_weather_launcher_foreground_1.xml │ ├── ic_pixel_weather_launcher_foreground_2.xml │ ├── ic_pixel_weather_launcher_foreground_3.xml │ ├── ic_plus.xml │ ├── ic_private_profile_app_scroller_badge.xml │ ├── ic_private_space_with_background.xml │ ├── ic_proper_seekbar_minus.xml │ ├── ic_proper_seekbar_plus.xml │ ├── ic_proper_seekbar_reset.xml │ ├── ic_protected_locked.xml │ ├── ic_protected_unlocked.xml │ ├── ic_ps_settings.xml │ ├── ic_remove_no_shadow.xml │ ├── ic_select_windows.xml │ ├── ic_setting.xml │ ├── ic_settings_about.xml │ ├── ic_settings_appdrawer.xml │ ├── ic_settings_homescreen.xml │ ├── ic_settings_icons.xml │ ├── ic_settings_misc.xml │ ├── ic_settings_recents.xml │ ├── ic_snapshot_widget_category.xml │ ├── ic_split_exit.xml │ ├── ic_split_horizontal.xml │ ├── ic_split_vertical.xml │ ├── ic_super_g_color.xml │ ├── ic_super_g_themed.xml │ ├── ic_taskbar_all_apps_search_button.xml │ ├── ic_touch.xml │ ├── ic_transient_taskbar_all_apps_search_button.xml │ ├── ic_uninstall_no_shadow.xml │ ├── ic_visibility.xml │ ├── ic_warning.xml │ ├── ic_weather_widget_category.xml │ ├── ic_widget.xml │ ├── ic_widget_height_decrease.xml │ ├── ic_widget_height_increase.xml │ ├── ic_widget_width_decrease.xml │ ├── ic_widget_width_increase.xml │ ├── icon_menu_arrow_background.xml │ ├── meminfo_bg.xml │ ├── middle_item_primary.xml │ ├── padded_rounded_action_button.xml │ ├── page_indicator.xml │ ├── pending_widget_bg.xml │ ├── pill_ripple.xml │ ├── popup_background.xml │ ├── private_space_app_divider.xml │ ├── private_space_install_app_icon.xml │ ├── ps_lock_background.xml │ ├── ps_settings_background.xml │ ├── qsb_host_view_focus_bg.xml │ ├── round_rect_folder.xml │ ├── round_rect_primary.xml │ ├── rounded_action_button.xml │ ├── rounded_popup_ripple.xml │ ├── single_item_primary.xml │ ├── tooltip_frame.xml │ ├── ui_scrim.xml │ ├── widget_cell_add_button_background.xml │ ├── widget_internal_focus_bg.xml │ ├── widget_picker_collapse_handle.xml │ ├── widget_picker_preview_pane_scroll_thumb.xml │ ├── widget_picker_tabs_background.xml │ ├── widget_reconfigure_button_frame.xml │ ├── widget_resize_frame.xml │ ├── widget_suggestions.xml │ ├── widget_suggestions_icon.xml │ ├── widgets_surface_background.xml │ ├── widgets_tray_expand_button.xml │ ├── work_apps_toggle_background.xml │ ├── work_card.xml │ └── work_mode_fab_background.xml ├── interpolator │ ├── decelerate_quart.xml │ ├── decelerate_quint.xml │ ├── disco_bounce.xml │ └── large_folder_preview_item_open_interpolator.xml ├── layout-v31 │ └── settings_activity.xml ├── layout-v34 │ └── settingslib_main_switch_bar.xml ├── layout │ ├── activity_hidden_apps.xml │ ├── add_item_confirmation_activity.xml │ ├── all_apps.xml │ ├── all_apps_bottom_sheet_background.xml │ ├── all_apps_content.xml │ ├── all_apps_divider.xml │ ├── all_apps_empty_search.xml │ ├── all_apps_fast_scroller.xml │ ├── all_apps_icon.xml │ ├── all_apps_icon_twoline.xml │ ├── all_apps_personal_work_tabs.xml │ ├── all_apps_prediction_row_icon.xml │ ├── all_apps_rv_layout.xml │ ├── all_apps_tabs.xml │ ├── app_icon.xml │ ├── app_pair_icon.xml │ ├── app_widget_resize_frame.xml │ ├── appwidget_error.xml │ ├── appwidget_not_ready.xml │ ├── arrow_toast.xml │ ├── bubble_bar_overflow_button.xml │ ├── deep_shortcut.xml │ ├── deep_shortcut_container.xml │ ├── derp_about.xml │ ├── derp_card.xml │ ├── derp_dashboard_card.xml │ ├── derp_logo.xml │ ├── derp_settings_header.xml │ ├── develop_options_edit_text.xml │ ├── developer_options_top_bar.xml │ ├── dialog_trust_welcome.xml │ ├── drop_target_bar.xml │ ├── drop_target_tool_tip.xml │ ├── empty_view.xml │ ├── fast_scroller_letter_list_text_view.xml │ ├── floating_app_pair_view.xml │ ├── floating_header_content.xml │ ├── floating_icon_view.xml │ ├── floating_split_select_view.xml │ ├── floating_surface_view.xml │ ├── floating_widget_view.xml │ ├── folder_app_pair.xml │ ├── folder_application.xml │ ├── folder_icon.xml │ ├── folder_page.xml │ ├── home_settings.xml │ ├── hotseat.xml │ ├── item_hidden_app.xml │ ├── keyboard_drag_and_drop.xml │ ├── launcher.xml │ ├── launcher_preview_layout.xml │ ├── launcher_preview_two_panel_layout.xml │ ├── longpress_options_menu.xml │ ├── notification_gutter.xml │ ├── notification_pref_warning.xml │ ├── overview_actions_container.xml │ ├── overview_panel.xml │ ├── popup_container.xml │ ├── predicted_app_icon.xml │ ├── preference_proper_seekbar.xml │ ├── preference_widget_icons_preview.xml │ ├── preference_widget_switch_compat.xml │ ├── private_space_divider.xml │ ├── private_space_header.xml │ ├── private_space_mask_view.xml │ ├── qsb_default_view.xml │ ├── qsb_preview.xml │ ├── search_container_all_apps.xml │ ├── search_container_hotseat.xml │ ├── search_container_workspace.xml │ ├── search_results_rv_layout.xml │ ├── secondary_launcher.xml │ ├── settings_activity.xml │ ├── settings_layout.xml │ ├── snackbar.xml │ ├── system_shortcut.xml │ ├── system_shortcut_content.xml │ ├── system_shortcut_icon_only.xml │ ├── system_shortcut_icon_only_end.xml │ ├── system_shortcut_icon_only_start.xml │ ├── system_shortcut_icons_container.xml │ ├── system_shortcut_rows_container.xml │ ├── system_shortcut_spacer.xml │ ├── user_folder_icon_normalized.xml │ ├── widget_cell.xml │ ├── widget_cell_content.xml │ ├── widget_list_divider.xml │ ├── widget_recommendations.xml │ ├── widget_recommendations_table.xml │ ├── widget_shortcut_container.xml │ ├── widget_shortcut_container_material_u.xml │ ├── widgets_bottom_sheet.xml │ ├── widgets_bottom_sheet_content.xml │ ├── widgets_full_sheet.xml │ ├── widgets_full_sheet_paged_view.xml │ ├── widgets_full_sheet_recyclerview.xml │ ├── widgets_list_row_header.xml │ ├── widgets_list_row_header_two_pane.xml │ ├── widgets_list_row_view.xml │ ├── widgets_search_bar.xml │ ├── widgets_table_container.xml │ ├── widgets_two_pane_sheet.xml │ ├── widgets_two_pane_sheet_paged_view.xml │ ├── widgets_two_pane_sheet_recyclerview.xml │ ├── work_apps_edu.xml │ ├── work_apps_paused.xml │ ├── work_mode_fab.xml │ ├── workspace_screen.xml │ └── workspace_screen_foldable.xml ├── menu │ ├── menu_icon_pack.xml │ └── menu_trust_apps.xml ├── mipmap-hdpi │ └── ic_launcher_home.png ├── mipmap-mdpi │ └── ic_launcher_home.png ├── mipmap-xhdpi │ └── ic_launcher_home.png ├── mipmap-xxhdpi │ └── ic_launcher_home.png ├── mipmap-xxxhdpi │ └── ic_launcher_home.png ├── raw │ └── downgrade_schema.json ├── values-af │ └── strings.xml ├── values-am │ └── strings.xml ├── values-ar │ └── strings.xml ├── values-as │ └── strings.xml ├── values-az │ └── strings.xml ├── values-b+sr+Latn │ └── strings.xml ├── values-be │ └── strings.xml ├── values-bg │ └── strings.xml ├── values-bn │ └── strings.xml ├── values-bs │ └── strings.xml ├── values-ca │ └── strings.xml ├── values-cs │ └── strings.xml ├── values-da │ └── strings.xml ├── values-de │ ├── derp_strings.xml │ └── strings.xml ├── values-el │ └── strings.xml ├── values-en-rAU │ └── strings.xml ├── values-en-rCA │ └── strings.xml ├── values-en-rGB │ └── strings.xml ├── values-en-rIN │ └── strings.xml ├── values-en-rXC │ └── strings.xml ├── values-es-rUS │ └── strings.xml ├── values-es │ └── strings.xml ├── values-et │ └── strings.xml ├── values-eu │ └── strings.xml ├── values-fa │ └── strings.xml ├── values-fi │ └── strings.xml ├── values-fr-rCA │ └── strings.xml ├── values-fr │ └── strings.xml ├── values-gl │ └── strings.xml ├── values-gu │ └── strings.xml ├── values-hi │ └── strings.xml ├── values-hr │ └── strings.xml ├── values-hu │ └── strings.xml ├── values-hy │ └── strings.xml ├── values-in │ └── strings.xml ├── values-is │ └── strings.xml ├── values-it │ └── strings.xml ├── values-iw │ └── strings.xml ├── values-ja │ └── strings.xml ├── values-ka │ └── strings.xml ├── values-kk │ └── strings.xml ├── values-km │ └── strings.xml ├── values-kn │ └── strings.xml ├── values-ko │ └── strings.xml ├── values-ky │ └── strings.xml ├── values-land │ ├── dimens.xml │ └── styles.xml ├── values-ldrtl │ ├── derp_strings.xml │ └── strings.xml ├── values-lo │ └── strings.xml ├── values-lt │ └── strings.xml ├── values-lv │ └── strings.xml ├── values-mk │ └── strings.xml ├── values-ml │ └── strings.xml ├── values-mn │ └── strings.xml ├── values-mr │ └── strings.xml ├── values-ms │ └── strings.xml ├── values-my │ └── strings.xml ├── values-nb │ └── strings.xml ├── values-ne │ └── strings.xml ├── values-night-v31 │ └── colors.xml ├── values-night-v34 │ └── colors.xml ├── values-night │ ├── colors.xml │ ├── derp_colors.xml │ └── styles.xml ├── values-nl │ └── strings.xml ├── values-or │ └── strings.xml ├── values-pa │ └── strings.xml ├── values-pl │ └── strings.xml ├── values-pt-rPT │ └── strings.xml ├── values-pt │ └── strings.xml ├── values-ro │ └── strings.xml ├── values-ru │ └── strings.xml ├── values-si │ └── strings.xml ├── values-sk │ └── strings.xml ├── values-sl │ └── strings.xml ├── values-sq │ └── strings.xml ├── values-sr │ └── strings.xml ├── values-sv │ └── strings.xml ├── values-sw │ └── strings.xml ├── values-sw340dp │ └── dimens.xml ├── values-sw600dp-land │ ├── dimens.xml │ └── styles.xml ├── values-sw600dp │ ├── config.xml │ ├── dimens.xml │ └── styles.xml ├── values-sw640dp-land │ └── styles.xml ├── values-sw640dp │ └── styles.xml ├── values-sw700dp │ └── styles.xml ├── values-sw720dp-land │ └── dimens.xml ├── values-sw720dp │ └── dimens.xml ├── values-ta │ └── strings.xml ├── values-te │ └── strings.xml ├── values-th │ └── strings.xml ├── values-tl │ └── strings.xml ├── values-tr │ └── strings.xml ├── values-uk │ └── strings.xml ├── values-ur │ └── strings.xml ├── values-uz │ └── strings.xml ├── values-v28 │ └── dimens.xml ├── values-v29 │ └── styles.xml ├── values-v30 │ └── styles.xml ├── values-v31 │ ├── colors.xml │ ├── config.xml │ └── styles.xml ├── values-v34 │ └── colors.xml ├── values-vi │ └── strings.xml ├── values-zh-rCN │ ├── derp_config.xml │ ├── derp_strings.xml │ └── strings.xml ├── values-zh-rHK │ └── strings.xml ├── values-zh-rTW │ └── strings.xml ├── values-zu │ └── strings.xml ├── values │ ├── attrs.xml │ ├── colors.xml │ ├── config.xml │ ├── derp_attrs.xml │ ├── derp_colors.xml │ ├── derp_config.xml │ ├── derp_dimens.xml │ ├── derp_strings.xml │ ├── derp_styles.xml │ ├── dimens.xml │ ├── id.xml │ ├── strings.xml │ └── styles.xml └── xml │ ├── backupscheme.xml │ ├── default_workspace_2x2.xml │ ├── default_workspace_3x3.xml │ ├── default_workspace_4x4.xml │ ├── default_workspace_4x5.xml │ ├── default_workspace_5x5.xml │ ├── default_workspace_5x6.xml │ ├── default_workspace_5x7.xml │ ├── default_workspace_6x5.xml │ ├── device_profiles.xml │ ├── dynamic_resources.xml │ ├── folder_shapes.xml │ ├── grayscale_icon_map.xml │ ├── launcher_about.xml │ ├── launcher_app_drawer_preferences.xml │ ├── launcher_home_screen_preferences.xml │ ├── launcher_icons_preferences.xml │ ├── launcher_misc_preferences.xml │ ├── launcher_preferences.xml │ ├── launcher_recents_preferences.xml │ ├── paddings_4x5.xml │ ├── paddings_handhelds.xml │ ├── split_configuration.xml │ └── widget_sections.xml ├── src └── com │ └── android │ └── launcher3 │ ├── AbstractFloatingView.java │ ├── AbstractFloatingViewHelper.kt │ ├── Alarm.java │ ├── AppFilter.java │ ├── AppWidgetResizeFrame.java │ ├── AppWidgetsRestoredReceiver.java │ ├── AutoInstallsLayout.java │ ├── BaseActivity.java │ ├── BaseDraggingActivity.java │ ├── BubbleTextView.java │ ├── ButtonDropTarget.java │ ├── CellLayout.java │ ├── CellLayoutContainer.java │ ├── CheckLongPressHelper.java │ ├── DefaultLayoutParser.java │ ├── DeleteDropTarget.java │ ├── DevicePaddings.java │ ├── DeviceProfile.java │ ├── DragSource.java │ ├── DropTarget.java │ ├── DropTargetBar.java │ ├── DropTargetHandler.kt │ ├── ExtendedEditText.java │ ├── FastScrollRecyclerView.java │ ├── FirstFrameAnimatorHelper.java │ ├── GestureNavContract.java │ ├── Hotseat.java │ ├── Insettable.java │ ├── InsettableFrameLayout.java │ ├── InterruptibleInOutAnimator.java │ ├── InvariantDeviceProfile.java │ ├── Launcher.java │ ├── LauncherAnimUtils.java │ ├── LauncherAppState.java │ ├── LauncherApplication.java │ ├── LauncherBackupAgent.java │ ├── LauncherConstants.java │ ├── LauncherFiles.java │ ├── LauncherModel.java │ ├── LauncherPrefs.kt │ ├── LauncherProvider.java │ ├── LauncherRootView.java │ ├── LauncherSettings.java │ ├── LauncherState.java │ ├── LogAccelerateInterpolator.java │ ├── LogDecelerateInterpolator.java │ ├── MainProcessInitializer.java │ ├── ModelCallbacks.kt │ ├── MotionEventsUtils.java │ ├── MultipageCellLayout.java │ ├── OnAlarmListener.java │ ├── PagedView.java │ ├── PendingAddItemInfo.java │ ├── Reorderable.java │ ├── SecondaryDropTarget.java │ ├── SessionCommitReceiver.java │ ├── ShortcutAndWidgetContainer.java │ ├── Utilities.java │ ├── UtilitiesKt.kt │ ├── Workspace.java │ ├── WorkspaceLayoutManager.java │ ├── WorkspaceStateTransitionAnimation.java │ ├── accessibility │ ├── AccessibleDragListenerAdapter.kt │ ├── BaseAccessibilityDelegate.java │ ├── DragAndDropAccessibilityDelegate.java │ ├── DragViewStateAnnouncer.java │ ├── FolderAccessibilityHelper.java │ ├── LauncherAccessibilityDelegate.java │ ├── ShortcutMenuAccessibilityDelegate.java │ └── WorkspaceAccessibilityHelper.java │ ├── allapps │ ├── ActivityAllAppsContainerView.java │ ├── AllAppsFastScrollHelper.java │ ├── AllAppsGridAdapter.java │ ├── AllAppsPagedView.java │ ├── AllAppsRecyclerView.java │ ├── AllAppsStore.java │ ├── AllAppsTransitionController.java │ ├── AllAppsTransitionListener.java │ ├── AlphabeticalAppsList.java │ ├── AppInfoComparator.java │ ├── BaseAllAppsAdapter.java │ ├── DiscoveryBounce.java │ ├── FloatingHeaderRow.java │ ├── FloatingHeaderView.java │ ├── FloatingMaskView.java │ ├── LauncherAllAppsContainerView.java │ ├── LetterListTextView.java │ ├── PluginHeaderRow.java │ ├── PrivateAppsSectionDecorator.java │ ├── PrivateProfileManager.java │ ├── PrivateSpaceSettingsButton.java │ ├── RecyclerViewAnimationController.java │ ├── SearchRecyclerView.java │ ├── SearchTransitionController.java │ ├── SearchUiManager.java │ ├── SecondaryLauncherAllAppsContainerView.java │ ├── SectionDecorationHandler.java │ ├── SectionDecorationInfo.java │ ├── UserProfileManager.java │ ├── WorkEduCard.java │ ├── WorkModeSwitch.java │ ├── WorkPausedCard.java │ ├── WorkProfileManager.java │ └── search │ │ ├── AllAppsSearchBarController.java │ │ ├── AllAppsSearchUiDelegate.java │ │ ├── AppsSearchContainerLayout.java │ │ ├── DefaultAppSearchAlgorithm.java │ │ ├── DefaultSearchAdapterProvider.java │ │ └── SearchAdapterProvider.java │ ├── anim │ ├── AlphaUpdateListener.java │ ├── AnimatedFloat.java │ ├── AnimatedPropertySetter.java │ ├── AnimationSuccessListener.java │ ├── AnimatorListeners.java │ ├── AnimatorPlaybackController.java │ ├── FlingSpringAnim.java │ ├── KeyboardInsetAnimationCallback.java │ ├── PendingAnimation.java │ ├── PropertyListBuilder.java │ ├── PropertyResetListener.java │ ├── PropertySetter.java │ ├── RevealOutlineAnimation.java │ ├── RoundedRectRevealOutlineProvider.java │ ├── SpringAnimationBuilder.java │ └── SpringProperty.java │ ├── apppairs │ ├── AppPairIcon.java │ ├── AppPairIconDrawable.java │ ├── AppPairIconDrawingParams.kt │ └── AppPairIconGraphic.kt │ ├── backuprestore │ └── LauncherRestoreEventLogger.kt │ ├── celllayout │ ├── CellInfo.kt │ ├── CellLayoutLayoutParams.java │ ├── CellPosMapper.java │ ├── DelegatedCellDrawing.kt │ ├── ItemConfiguration.kt │ ├── MulticellReorderAlgorithm.java │ ├── ReorderAlgorithm.java │ ├── ReorderParameters.kt │ ├── ReorderPreviewAnimation.kt │ └── ViewCluster.kt │ ├── compat │ ├── AccessibilityManagerCompat.java │ └── AlphabeticIndexCompat.java │ ├── config │ └── FeatureFlags.java │ ├── contextualeducation │ └── ContextualEduStatsManager.java │ ├── customization │ └── IconDatabase.java │ ├── dagger │ ├── ActivityContextScope.java │ ├── ApplicationContext.java │ ├── LauncherAppSingleton.java │ └── LauncherBaseAppComponent.java │ ├── debug │ └── TestEventsEmitterProduction.kt │ ├── dot │ ├── DotInfo.java │ └── FolderDotInfo.java │ ├── dragndrop │ ├── AddItemActivity.java │ ├── BaseItemDragListener.java │ ├── DragController.java │ ├── DragDriver.java │ ├── DragLayer.java │ ├── DragOptions.java │ ├── DragView.java │ ├── DraggableView.java │ ├── FlingToDeleteHelper.java │ ├── FolderAdaptiveIcon.java │ ├── LauncherDragController.java │ ├── LauncherDragView.java │ ├── PinItemDragListener.java │ ├── PinShortcutRequestActivityInfo.java │ ├── PinWidgetFlowHandler.java │ ├── SimpleDragLayer.java │ └── SpringLoadedDragController.java │ ├── folder │ ├── ClippedFolderIconLayoutRule.java │ ├── Folder.java │ ├── FolderAnimationManager.java │ ├── FolderGridOrganizer.java │ ├── FolderIcon.java │ ├── FolderNameEditText.java │ ├── FolderNameInfos.java │ ├── FolderNameProvider.java │ ├── FolderPagedView.java │ ├── FolderPreviewItemAnim.java │ ├── LauncherDelegate.java │ ├── PreviewBackground.java │ ├── PreviewItemDrawingParams.java │ └── PreviewItemManager.java │ ├── graphics │ ├── BitmapCreationCheck.java │ ├── DragPreviewProvider.java │ ├── DrawableFactory.java │ ├── FastScrollThumbDrawable.java │ ├── FragmentWithPreview.java │ ├── GridCustomizationsProvider.java │ ├── IconPalette.java │ ├── IconShape.java │ ├── LauncherPreviewRenderer.java │ ├── PreloadIconDrawable.java │ ├── PreviewSurfaceRenderer.java │ ├── Scrim.java │ ├── SysUiScrim.java │ ├── TintedDrawableSpan.java │ └── TriangleShape.java │ ├── icons │ ├── IconCache.java │ ├── LauncherIconProvider.java │ ├── LauncherIcons.java │ ├── Legacy.kt │ ├── MonochromeIconFactory.java │ ├── ShortcutCachingLogic.java │ ├── ThirdPartyDrawableFactory.java │ ├── ThirdPartyIconProvider.java │ ├── ThirdPartyIconUtils.java │ ├── calendar │ │ ├── DateChangeReceiver.java │ │ └── DynamicCalendar.java │ ├── clock │ │ ├── AutoUpdateClock.java │ │ ├── ClockLayers.java │ │ ├── CustomClock.java │ │ └── DynamicClock.java │ └── pack │ │ ├── GetLaunchableInfoTask.java │ │ ├── IconPack.java │ │ ├── IconPackHeaderPreference.java │ │ ├── IconPackManager.java │ │ ├── IconPackParser.java │ │ ├── IconPackSettingsActivity.java │ │ ├── IconPackSettingsFragment.java │ │ ├── IconResolver.java │ │ ├── IconResolverExternal.java │ │ ├── IconResolverMasked.java │ │ ├── RadioHeaderPreference.java │ │ └── RadioSettingsFragment.java │ ├── keyboard │ ├── FocusIndicatorHelper.java │ ├── FocusedItemDecorator.java │ ├── ItemFocusIndicatorHelper.java │ ├── KeyboardDragAndDropView.java │ └── ViewGroupFocusHelper.java │ ├── lineage │ └── trust │ │ ├── HiddenAppsFilter.java │ │ ├── LoadTrustComponentsTask.java │ │ ├── TrustAppsActivity.java │ │ ├── TrustAppsAdapter.java │ │ ├── UpdateItemTask.java │ │ └── db │ │ ├── TrustComponent.java │ │ └── TrustDatabaseHelper.java │ ├── logging │ ├── ColdRebootStartupLatencyLogger.kt │ ├── FileLog.java │ ├── InstanceId.java │ ├── InstanceIdSequence.java │ ├── KeyboardStateManager.java │ ├── StartupLatencyLogger.kt │ ├── StatsLogManager.java │ └── UiEvent.java │ ├── model │ ├── AddWorkspaceItemsTask.java │ ├── AllAppsList.java │ ├── BaseLauncherBinder.java │ ├── BgDataModel.java │ ├── CacheDataUpdatedTask.java │ ├── DatabaseHelper.java │ ├── DbDowngradeHelper.java │ ├── DeviceGridState.java │ ├── FirstScreenBroadcast.java │ ├── FirstScreenBroadcastHelper.kt │ ├── FirstScreenBroadcastModel.kt │ ├── GridBackupTable.java │ ├── GridSizeMigrationUtil.java │ ├── ItemInstallQueue.java │ ├── LoaderCursor.java │ ├── LoaderMemoryLogger.java │ ├── LoaderTask.java │ ├── ModelDbController.java │ ├── ModelDelegate.java │ ├── ModelLauncherCallbacks.kt │ ├── ModelTaskController.kt │ ├── ModelUtils.java │ ├── ModelWriter.java │ ├── PackageIncrementalDownloadUpdatedTask.java │ ├── PackageInstallStateChangedTask.java │ ├── PackageUpdatedTask.java │ ├── ReloadStringCacheTask.java │ ├── SdCardAvailableReceiver.java │ ├── ShortcutsChangedTask.java │ ├── StringCache.java │ ├── UserLockStateChangedTask.java │ ├── UserManagerState.java │ ├── WidgetItem.java │ ├── WidgetsModel.java │ ├── WorkspaceItemProcessor.kt │ ├── WorkspaceItemSpaceFinder.java │ └── data │ │ ├── AppInfo.java │ │ ├── AppPairInfo.kt │ │ ├── CollectionInfo.kt │ │ ├── FolderInfo.java │ │ ├── IconRequestInfo.java │ │ ├── ItemInfo.java │ │ ├── ItemInfoWithIcon.java │ │ ├── LauncherAppWidgetInfo.java │ │ ├── PackageItemInfo.java │ │ ├── PrivateSpaceInstallAppButtonInfo.java │ │ ├── TaskItemInfo.kt │ │ ├── WorkspaceItemFactory.java │ │ └── WorkspaceItemInfo.java │ ├── notification │ ├── NotificationGroup.java │ ├── NotificationKeyData.java │ └── NotificationListener.java │ ├── pageindicators │ ├── PageIndicator.java │ └── PageIndicatorDots.java │ ├── pm │ ├── InstallSessionHelper.java │ ├── InstallSessionTracker.java │ ├── PackageInstallInfo.java │ ├── PinRequestHelper.java │ ├── ShortcutConfigActivityInfo.java │ └── UserCache.java │ ├── popup │ ├── ArrowPopup.java │ ├── LauncherPopupLiveUpdateHandler.java │ ├── PopupContainerWithArrow.java │ ├── PopupDataProvider.java │ ├── PopupLiveUpdateHandler.java │ ├── PopupPopulator.java │ ├── RemoteActionShortcut.java │ ├── RoundedArrowDrawable.java │ └── SystemShortcut.java │ ├── provider │ ├── LauncherDbUtils.java │ └── RestoreDbTask.java │ ├── qsb │ ├── AssistantIconView.java │ ├── LauncherUnlockAnimationController.java │ ├── QsbContainerView.java │ ├── QsbLayout.java │ ├── QsbWidgetHostView.java │ └── SmartspaceViewContainer.java │ ├── recyclerview │ ├── AllAppsRecyclerViewPool.kt │ └── ViewHolderBinder.java │ ├── responsive │ ├── HotseatSpecsProvider.kt │ ├── ResponsiveCellSpecsProvider.kt │ ├── ResponsiveSpec.kt │ ├── ResponsiveSpecGroup.kt │ ├── ResponsiveSpecsParser.kt │ ├── ResponsiveSpecsProvider.kt │ └── SizeSpec.kt │ ├── search │ ├── SearchAlgorithm.java │ ├── SearchCallback.java │ └── StringMatcherUtility.java │ ├── secondarydisplay │ ├── PinnedAppsAdapter.java │ ├── SecondaryDisplayLauncher.java │ ├── SecondaryDisplayPredictions.java │ ├── SecondaryDragController.java │ ├── SecondaryDragLayer.java │ └── SecondaryDragView.java │ ├── settings │ ├── NotificationDotsPreference.java │ ├── PreferenceHighlighter.java │ ├── SettingsAbout.java │ ├── SettingsActivity.java │ ├── SettingsAppDrawer.java │ ├── SettingsHomescreen.java │ ├── SettingsIcons.java │ ├── SettingsMisc.java │ ├── SettingsRecents.java │ ├── preference │ │ ├── IconPackPrefSetter.java │ │ ├── ReloadingListPreference.java │ │ └── RestartPreference.java │ └── preferences │ │ └── ProperSeekBarPreference.java │ ├── shortcuts │ ├── DeepShortcutTextView.java │ ├── DeepShortcutView.java │ ├── ShortcutDragPreviewProvider.java │ ├── ShortcutKey.java │ └── ShortcutRequest.java │ ├── statemanager │ ├── BaseState.java │ ├── StateManager.java │ ├── StatefulActivity.java │ └── StatefulContainer.java │ ├── states │ ├── EditModeState.kt │ ├── HintState.java │ ├── RotationHelper.java │ ├── SpringLoadedState.java │ └── StateAnimationConfig.java │ ├── testing │ ├── TestInformationHandler.java │ ├── TestInformationProvider.java │ └── TestLogging.java │ ├── touch │ ├── AbstractStateChangeTouchController.java │ ├── AllAppsSwipeController.java │ ├── BaseSwipeDetector.java │ ├── BothAxesSwipeDetector.java │ ├── DefaultPagedViewHandler.java │ ├── ItemClickHandler.java │ ├── ItemLongClickListener.java │ ├── OverScroll.java │ ├── PagedOrientationHandler.java │ ├── SingleAxisSwipeDetector.java │ └── WorkspaceTouchListener.java │ ├── util │ ├── ActivityLifecycleCallbacksAdapter.java │ ├── ActivityOptionsWrapper.java │ ├── ActivityResultInfo.java │ ├── ActivityTracker.java │ ├── ApiWrapper.java │ ├── AppReloader.java │ ├── BackPressHandler.java │ ├── CancellableTask.kt │ ├── CannedAnimationCoordinator.kt │ ├── CellAndSpan.java │ ├── CellContentDimensions.kt │ ├── ContentWriter.java │ ├── DaggerSingletonObject.java │ ├── DaggerSingletonTracker.java │ ├── DimensionUtils.kt │ ├── DisplayController.java │ ├── DynamicResource.java │ ├── EdgeEffectCompat.java │ ├── EventLogArray.kt │ ├── ExecutorUtil.java │ ├── Executors.java │ ├── FlagDebugUtils.kt │ ├── FlingAnimation.java │ ├── FlingBlockCheck.java │ ├── GridOccupancy.java │ ├── HorizontalInsettableView.java │ ├── IOUtils.java │ ├── IconSizeSteps.kt │ ├── InstantAppResolver.java │ ├── IntArray.java │ ├── IntSet.java │ ├── IntSparseArrayMap.java │ ├── ItemInflater.kt │ ├── ItemInfoMatcher.java │ ├── KeyboardShortcutsDelegate.java │ ├── LabelComparator.java │ ├── LauncherBindableItemsContainer.java │ ├── LauncherLayoutBuilder.kt │ ├── LockedUserState.kt │ ├── LogConfig.java │ ├── LooperExecutor.java │ ├── LooperIdleLock.java │ ├── MainThreadInitializedObject.java │ ├── MultiPropertyFactory.java │ ├── MultiScalePropertyFactory.java │ ├── MultiTranslateDelegate.java │ ├── MultiValueAlpha.java │ ├── NavigationMode.java │ ├── ObjectWrapper.java │ ├── OnboardingPrefs.kt │ ├── OverlayEdgeEffect.java │ ├── PackageManagerHelper.java │ ├── PackageUserKey.java │ ├── ParcelableSparseArray.java │ ├── Partner.java │ ├── PendingRequestArgs.java │ ├── PendingSplitSelectInfo.java │ ├── PersistedItemArray.java │ ├── PluginManagerWrapper.java │ ├── PluralMessageFormat.java │ ├── Preconditions.java │ ├── ResourceBasedOverride.java │ ├── ResourceHelper.kt │ ├── RotationUtils.java │ ├── RunnableList.java │ ├── ScreenOnTracker.java │ ├── ScrollableLayoutManager.java │ ├── SettingsCache.java │ ├── ShortcutUtil.java │ ├── SimpleBroadcastReceiver.java │ ├── SplitConfigurationOptions.java │ ├── StableViewInfo.kt │ ├── StartActivityParams.java │ ├── SystemUiController.java │ ├── Themes.java │ ├── Thunk.java │ ├── TouchController.java │ ├── TouchUtil.java │ ├── TraceHelper.java │ ├── TransformingTouchDelegate.java │ ├── TranslateEdgeEffect.java │ ├── VelocityUtils.java │ ├── VibratorWrapper.java │ ├── ViewCache.java │ ├── ViewOnDrawExecutor.java │ ├── ViewPool.java │ ├── WallpaperColorHints.kt │ ├── WallpaperOffsetInterpolator.java │ ├── WindowBounds.java │ ├── coroutines │ │ └── DispatcherProvider.kt │ ├── rects │ │ └── Rects.kt │ └── window │ │ ├── CachedDisplayInfo.java │ │ ├── RefreshRateTracker.java │ │ └── WindowManagerProxy.java │ ├── views │ ├── AbstractSlideInView.java │ ├── AccessibilityActionsView.java │ ├── ActivityContext.java │ ├── ArrowTipView.java │ ├── BaseDragLayer.java │ ├── BubbleTextHolder.java │ ├── ClipIconView.java │ ├── ClipPathView.java │ ├── ComposeInitializer.java │ ├── DoubleShadowBubbleTextView.java │ ├── DoubleShadowIconDrawable.kt │ ├── FloatingIconView.java │ ├── FloatingIconViewCompanion.java │ ├── FloatingSurfaceView.java │ ├── FloatingView.java │ ├── IconButtonView.java │ ├── ListenerView.java │ ├── OptionsPopupView.java │ ├── RecyclerViewFastScroller.java │ ├── ScrimView.java │ ├── ShadowInfo.kt │ ├── Snackbar.java │ ├── SpringRelativeLayout.java │ └── StickyHeaderLayout.java │ ├── widget │ ├── AddItemWidgetsBottomSheet.java │ ├── BaseLauncherAppWidgetHostView.java │ ├── BaseWidgetSheet.java │ ├── DatabaseWidgetPreviewLoader.java │ ├── LauncherAppWidgetHost.java │ ├── LauncherAppWidgetHostView.java │ ├── LauncherAppWidgetProviderInfo.java │ ├── LauncherWidgetHolder.java │ ├── ListenableHostView.java │ ├── LocalColorExtractor.java │ ├── NavigableAppWidgetHostView.java │ ├── PendingAddShortcutInfo.java │ ├── PendingAddWidgetInfo.java │ ├── PendingAppWidgetHostView.java │ ├── PendingItemDragHelper.java │ ├── RoundedCornerEnforcement.java │ ├── WidgetAddFlowHandler.java │ ├── WidgetCell.java │ ├── WidgetCellPreview.java │ ├── WidgetHostViewLoader.java │ ├── WidgetImageView.java │ ├── WidgetInflater.kt │ ├── WidgetItemComparator.java │ ├── WidgetManagerHelper.java │ ├── WidgetSections.java │ ├── WidgetTableRow.java │ ├── WidgetsBottomSheet.java │ ├── custom │ │ ├── CustomAppWidgetProviderInfo.java │ │ └── CustomWidgetManager.java │ ├── model │ │ ├── WidgetListSpaceEntry.java │ │ ├── WidgetsListBaseEntriesBuilder.kt │ │ ├── WidgetsListBaseEntry.java │ │ ├── WidgetsListContentEntry.java │ │ └── WidgetsListHeaderEntry.java │ ├── picker │ │ ├── OWNERS │ │ ├── OnHeaderClickListener.java │ │ ├── WidgetPagedView.java │ │ ├── WidgetRecommendationCategory.java │ │ ├── WidgetRecommendationCategoryProvider.java │ │ ├── WidgetRecommendationsView.java │ │ ├── WidgetsDiffCallback.java │ │ ├── WidgetsFullSheet.java │ │ ├── WidgetsListAdapter.java │ │ ├── WidgetsListDrawableState.java │ │ ├── WidgetsListHeader.java │ │ ├── WidgetsListHeaderHolder.java │ │ ├── WidgetsListHeaderViewHolderBinder.java │ │ ├── WidgetsListItemAnimator.java │ │ ├── WidgetsListTableView.java │ │ ├── WidgetsListTableViewHolderBinder.java │ │ ├── WidgetsRecommendationTableLayout.java │ │ ├── WidgetsRecyclerView.java │ │ ├── WidgetsRowViewHolder.java │ │ ├── WidgetsSpaceViewHolderBinder.java │ │ ├── WidgetsTwoPaneSheet.java │ │ ├── model │ │ │ ├── WidgetPickerDataProvider.kt │ │ │ └── data │ │ │ │ └── WidgetPickerData.kt │ │ ├── search │ │ │ ├── LauncherWidgetsSearchBar.java │ │ │ ├── SearchModeListener.java │ │ │ ├── SimpleWidgetsSearchAlgorithm.java │ │ │ ├── WidgetsSearchBar.java │ │ │ └── WidgetsSearchBarController.java │ │ └── util │ │ │ ├── WidgetPreviewContainerSize.kt │ │ │ └── WidgetPreviewContainerSizes.kt │ └── util │ │ ├── WidgetDragScaleUtils.java │ │ ├── WidgetSizes.java │ │ └── WidgetsTableUtils.java │ └── workprofile │ ├── PersonalWorkPagedView.java │ └── PersonalWorkSlidingTabStrip.java ├── src_build_config └── com │ └── android │ └── launcher3 │ └── BuildConfig.java ├── src_no_quickstep └── com │ └── android │ └── launcher3 │ ├── dagger │ └── LauncherAppComponent.java │ └── uioverrides │ └── states │ ├── AllAppsState.java │ └── OverviewState.java ├── src_plugins ├── README.md └── com │ └── android │ └── systemui │ └── plugins │ ├── AllAppsRow.java │ ├── CustomWidgetPlugin.java │ ├── FirstScreenWidget.java │ ├── HotseatPlugin.java │ ├── LauncherOverlayPlugin.java │ ├── NetworkFetcherPlugin.java │ ├── OneSearch.java │ ├── ResourceProvider.java │ └── shared │ └── LauncherOverlayManager.java ├── tests ├── Android.bp ├── AndroidManifest-common.xml ├── AndroidManifest.xml ├── Launcher3Tests.xml ├── OWNERS ├── assets │ ├── ReorderAlgorithmUnitTest │ │ └── reorder_algorithm_test_cases │ ├── ReorderWidgets │ │ ├── full_reorder_case │ │ ├── move_out_reorder_case │ │ ├── multiple_cell_layouts_no_space_reorder │ │ ├── multiple_cell_layouts_reorder_other_side │ │ ├── multiple_cell_layouts_simple_reorder │ │ ├── push_reorder_case │ │ └── simple_reorder_case │ ├── databases │ │ ├── BackupAndRestore │ │ │ ├── launcher.db │ │ │ ├── launcher_3_by_3.db │ │ │ ├── launcher_4_by_4.db │ │ │ └── launcher_4_by_5.db │ │ ├── GridMigrationTest │ │ │ ├── flagged_result5x5to5x8.db │ │ │ ├── result5x5to3x3.db │ │ │ ├── result5x5to4x7.db │ │ │ ├── result5x5to5x8.db │ │ │ └── test_launcher.db │ │ ├── v30_workspace_items.sql │ │ └── workspace_items.sql │ └── dumpTests │ │ └── DeviceProfileDumpTest │ │ ├── phonePortrait.txt │ │ ├── phonePortrait3Button.txt │ │ ├── phoneVerticalBar.txt │ │ ├── phoneVerticalBar3Button.txt │ │ ├── tabletLandscape.txt │ │ ├── tabletLandscape3Button.txt │ │ ├── tabletPortrait.txt │ │ ├── tabletPortrait3Button.txt │ │ ├── twoPanelLandscape.txt │ │ ├── twoPanelLandscape3Button.txt │ │ ├── twoPanelLandscape3Button_decoupleDepth.txt │ │ ├── twoPanelLandscape_decoupleDepth.txt │ │ ├── twoPanelPortrait.txt │ │ ├── twoPanelPortrait3Button.txt │ │ ├── twoPanelPortrait3Button_decoupleDepth.txt │ │ └── twoPanelPortrait_decoupleDepth.txt ├── config │ └── robolectric.properties ├── multivalentTests │ ├── dummy_app │ │ ├── Android.bp │ │ ├── AndroidManifest.xml │ │ ├── res │ │ │ ├── layout │ │ │ │ └── empty_activity.xml │ │ │ ├── mipmap-anydpi │ │ │ │ ├── ic_launcher1.xml │ │ │ │ └── ic_launcher2.xml │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher1.png │ │ │ │ ├── ic_launcher2.png │ │ │ │ ├── icon_back_1.png │ │ │ │ └── icon_fore_1.png │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher1.png │ │ │ │ ├── ic_launcher2.png │ │ │ │ ├── icon_back_1.png │ │ │ │ └── icon_fore_1.png │ │ │ └── values │ │ │ │ └── colors.xml │ │ └── src │ │ │ └── com │ │ │ └── example │ │ │ └── android │ │ │ └── aardwolf │ │ │ └── Activity1.java │ ├── shared │ │ ├── AndroidManifest.xml │ │ └── com │ │ │ └── android │ │ │ └── launcher3 │ │ │ └── testing │ │ │ ├── OWNERS │ │ │ └── shared │ │ │ ├── HotseatCellCenterRequest.java │ │ │ ├── ResourceUtils.java │ │ │ ├── TestInformationRequest.java │ │ │ ├── TestProtocol.java │ │ │ └── WorkspaceCellCenterRequest.java │ └── src │ │ └── com │ │ └── android │ │ └── launcher3 │ │ ├── AbstractDeviceProfileTest.kt │ │ ├── AbstractFloatingViewHelperTest.kt │ │ ├── AppFilterTest.kt │ │ ├── AppWidgetsRestoredReceiverTest.kt │ │ ├── AutoInstallsLayoutTest.kt │ │ ├── DeleteDropTargetTest.kt │ │ ├── FakeInvariantDeviceProfileTest.kt │ │ ├── LauncherPrefsTest.kt │ │ ├── RoboObjectInitializer.kt │ │ ├── UtilitiesKtTest.kt │ │ ├── UtilitiesTest.kt │ │ ├── accessibility │ │ ├── AccessibleDragListenerAdapterTest.kt │ │ └── FolderAccessibilityHelperTest.kt │ │ ├── allapps │ │ ├── AlphabeticalAppsListTest.java │ │ ├── FloatingHeaderViewTest.kt │ │ └── PrivateSpaceSettingsButtonTest.java │ │ ├── celllayout │ │ ├── CellLayoutMethodsTest.kt │ │ ├── CellLayoutTestCaseReader.java │ │ ├── CellLayoutTestUtils.java │ │ ├── CellPosMapperTest.java │ │ ├── FavoriteItemsTransaction.java │ │ ├── HotseatReorderUnitTest.kt │ │ ├── ReorderAlgorithmUnitTest.java │ │ ├── ReorderAlgorithmUnitTestCase.java │ │ ├── ReorderPreviewAnimationTest.kt │ │ ├── ReorderTestCase.java │ │ ├── UnitTestCellLayoutBuilderRule.kt │ │ ├── board │ │ │ ├── BoardClasses.kt │ │ │ ├── CellLayoutBoard.java │ │ │ ├── IdenticalBoardComparator.kt │ │ │ ├── PermutedBoardComparator.kt │ │ │ └── TestWorkspaceBuilder.kt │ │ └── testgenerator │ │ │ ├── DeterministicRandomGenerator.kt │ │ │ ├── RandomBoardGenerator.kt │ │ │ └── RandomMultiBoardGenerator.kt │ │ ├── folder │ │ ├── FolderNameInfosTest.kt │ │ ├── FolderNameProviderTest.java │ │ ├── FolderPagedViewTest.kt │ │ ├── FolderTest.kt │ │ ├── PreviewBackgroundTest.java │ │ └── PreviewItemManagerTest.kt │ │ ├── icons │ │ ├── FastBitmapDrawableTest.java │ │ ├── IconCacheTest.java │ │ ├── IconCacheUpdateHandlerTest.kt │ │ └── UserBadgeDrawableTest.kt │ │ ├── logging │ │ ├── FileLogTest.java │ │ └── StartupLatencyLoggerTest.kt │ │ ├── model │ │ ├── AbstractWorkspaceModelTest.kt │ │ ├── AddWorkspaceItemsTaskTest.kt │ │ ├── AsyncBindingTest.kt │ │ ├── CacheDataUpdatedTaskTest.java │ │ ├── DatabaseHelperTest.kt │ │ ├── DbDowngradeHelperTest.java │ │ ├── DefaultLayoutProviderTest.java │ │ ├── FactitiousDbController.kt │ │ ├── FirstScreenBroadcastHelperTest.kt │ │ ├── FolderIconLoadTest.kt │ │ ├── GridSizeMigrationUtilTest.kt │ │ ├── LoaderCursorTest.java │ │ ├── ModelTestRule.kt │ │ ├── PackageInstallStateChangedTaskTest.java │ │ ├── WidgetsModelTest.kt │ │ ├── WorkspaceItemProcessorTest.kt │ │ ├── WorkspaceItemSpaceFinderTest.kt │ │ └── data │ │ │ └── ItemInfoWithIconTest.kt │ │ ├── pm │ │ ├── InstallSessionTrackerTest.kt │ │ └── UserCacheTest.kt │ │ ├── popup │ │ └── PopupPopulatorTest.java │ │ ├── provider │ │ └── RestoreDbTaskTest.java │ │ ├── responsive │ │ ├── AllAppsSpecsTest.kt │ │ ├── CalculatedAllAppsSpecTest.kt │ │ ├── CalculatedFolderSpecTest.kt │ │ ├── CalculatedHotseatSpecTest.kt │ │ ├── CalculatedWorkspaceSpecTest.kt │ │ ├── FolderSpecTest.kt │ │ ├── HotseatSpecsProviderTest.kt │ │ ├── ResponsiveCellSpecsProviderTest.kt │ │ ├── ResponsiveSpecsProviderTest.kt │ │ ├── SizeSpecTest.kt │ │ └── WorkspaceSpecsTest.kt │ │ ├── testcomponent │ │ ├── AppWidgetDynamicColors.java │ │ ├── AppWidgetHidden.java │ │ ├── AppWidgetNoConfig.java │ │ ├── AppWidgetWithConfig.java │ │ └── TouchEventGenerator.java │ │ ├── touch │ │ └── SingleAxisSwipeDetectorTest.java │ │ ├── ui │ │ ├── ActivityAllAppsContainerViewTest.java │ │ ├── BubbleTextViewTest.java │ │ └── TestViewHelpers.java │ │ ├── util │ │ ├── ActivityContextWrapper.java │ │ ├── CancellableTaskTest.kt │ │ ├── CellContentDimensionsTest.kt │ │ ├── DisplayControllerTest.kt │ │ ├── GridOccupancyTest.java │ │ ├── IconSizeStepsTest.kt │ │ ├── IntArrayTest.java │ │ ├── IntSetTest.java │ │ ├── ItemInfoMatcherTest.kt │ │ ├── LauncherModelHelper.java │ │ ├── LauncherMultivalentJUnit.kt │ │ ├── LockedUserStateTest.kt │ │ ├── ModelTestExtensions.kt │ │ ├── MultiPropertyFactoryTest.kt │ │ ├── MultiScalePropertyTest.kt │ │ ├── PackageManagerHelperTest.java │ │ ├── PackageUserKeyTest.java │ │ ├── ReflectionHelpers.java │ │ ├── RunnableListTest.kt │ │ ├── ScreenOnTrackerTest.kt │ │ ├── ShortcutUtilTest.kt │ │ ├── SimpleBroadcastReceiverTest.kt │ │ ├── SystemUiControllerTest.kt │ │ ├── TestDispatcherProvider.kt │ │ ├── TestResourceHelper.kt │ │ ├── TestSandboxModelContextWrapper.java │ │ ├── TestUtil.java │ │ ├── TouchUtilTest.kt │ │ ├── VibratorWrapperTest.kt │ │ ├── ViewCacheTest.kt │ │ ├── ViewOnDrawExecutorTest.kt │ │ ├── ViewPoolTest.kt │ │ ├── WidgetUtils.java │ │ ├── rule │ │ │ ├── BackAndRestoreRule.kt │ │ │ ├── SetFlagsRuleExt.kt │ │ │ └── TestStabilityRule.java │ │ └── window │ │ │ └── WindowManagerProxyTest.kt │ │ └── widget │ │ ├── GeneratedPreviewTest.kt │ │ ├── LauncherAppWidgetHostTest.kt │ │ ├── LauncherAppWidgetProviderInfoTest.java │ │ ├── LauncherWidgetHolderTest.kt │ │ ├── ListenableHostViewTest.kt │ │ ├── RoundedCornerEnforcementTest.kt │ │ ├── WidgetAddFlowHandlerTest.kt │ │ ├── WidgetManagerHelperTest.kt │ │ ├── custom │ │ ├── CustomAppWidgetProviderInfoTest.kt │ │ └── CustomWidgetManagerTest.kt │ │ ├── model │ │ └── WidgetsListBaseEntriesBuilderTest.kt │ │ ├── picker │ │ ├── OWNERS │ │ ├── WidgetImageViewTest.kt │ │ ├── WidgetRecommendationCategoryProviderTest.java │ │ ├── WidgetsListHeaderAccessibilityTest.java │ │ ├── WidgetsListHeaderViewHolderBinderTest.java │ │ ├── WidgetsListTableViewHolderBinderTest.java │ │ ├── model │ │ │ ├── WidgetPickerDataProviderTest.kt │ │ │ ├── WidgetsListContentEntryTest.java │ │ │ └── data │ │ │ │ └── WidgetPickerDataTest.kt │ │ ├── search │ │ │ ├── SimpleWidgetsSearchAlgorithmTest.java │ │ │ └── WidgetsSearchBarControllerTest.java │ │ └── util │ │ │ ├── WidgetPreviewContainerSizesTest.kt │ │ │ └── WidgetsTableUtilsTest.java │ │ └── util │ │ └── WidgetDragScaleUtilsTest.kt ├── multivalentTestsForDevice ├── res │ ├── drawable │ │ ├── test_drawable_pin_item.xml │ │ ├── test_icon.xml │ │ ├── test_theme_icon.xml │ │ ├── test_widget_dynamic_colors_icon.xml │ │ ├── test_widget_no_config_icon.xml │ │ ├── test_widget_with_config_icon.xml │ │ └── test_widget_with_dialog_icon.xml │ ├── layout │ │ ├── test_layout_appwidget_blue.xml │ │ ├── test_layout_appwidget_dynamic_colors.xml │ │ ├── test_layout_appwidget_red.xml │ │ ├── test_layout_appwidget_view.xml │ │ └── test_layout_widget_list.xml │ ├── raw │ │ ├── aardwolf_dummy_app.apk │ │ ├── db_schema_v10.json │ │ └── reorder_algorithm_test.txt │ ├── values │ │ ├── attrs.xml │ │ ├── strings.xml │ │ └── styles.xml │ └── xml │ │ ├── appwidget_dynamic_colors.xml │ │ ├── appwidget_hidden.xml │ │ ├── appwidget_no_config.xml │ │ ├── appwidget_no_config_large.xml │ │ ├── appwidget_with_config.xml │ │ ├── invalid_all_apps_file_case_1.xml │ │ ├── invalid_all_apps_file_case_2.xml │ │ ├── invalid_all_apps_file_case_3.xml │ │ ├── invalid_cell_specs_1.xml │ │ ├── invalid_cell_specs_2.xml │ │ ├── invalid_cell_specs_3.xml │ │ ├── invalid_folders_specs_1.xml │ │ ├── invalid_folders_specs_2.xml │ │ ├── invalid_folders_specs_3.xml │ │ ├── invalid_folders_specs_4.xml │ │ ├── invalid_folders_specs_5.xml │ │ ├── invalid_hotseat_file_case_1.xml │ │ ├── invalid_hotseat_file_case_2.xml │ │ ├── invalid_responsive_spec_1.xml │ │ ├── invalid_responsive_spec_2.xml │ │ ├── invalid_responsive_spec_3.xml │ │ ├── invalid_responsive_spec_4.xml │ │ ├── invalid_responsive_spec_5.xml │ │ ├── invalid_responsive_spec_6.xml │ │ ├── invalid_workspace_file_case_1.xml │ │ ├── invalid_workspace_file_case_2.xml │ │ ├── invalid_workspace_file_case_3.xml │ │ ├── invalid_workspace_file_case_4.xml │ │ ├── max_shortcuts.xml │ │ ├── shortcuts.xml │ │ ├── single_shortcut.xml │ │ ├── valid_all_apps_file.xml │ │ ├── valid_cell_specs_file.xml │ │ ├── valid_folders_specs.xml │ │ ├── valid_hotseat_file.xml │ │ ├── valid_hotseat_land_file.xml │ │ ├── valid_responsive_spec_unsorted.xml │ │ ├── valid_workspace_file.xml │ │ └── valid_workspace_unsorted_file.xml ├── shared │ └── com │ │ └── android │ │ └── launcher3 │ │ └── testing │ │ └── OWNERS ├── src │ └── com │ │ └── android │ │ └── launcher3 │ │ ├── LauncherIntentTest.java │ │ ├── allapps │ │ ├── FloatingMaskViewTest.kt │ │ ├── PrivateProfileManagerTest.java │ │ ├── PrivateSpaceHeaderViewTest.java │ │ ├── TaplAllAppsIconsWorkingTest.java │ │ ├── TaplKeyboardFocusTest.java │ │ └── TaplOpenCloseAllAppsTest.java │ │ ├── appiconmenu │ │ └── TaplAppIconMenuTest.java │ │ ├── backuprestore │ │ └── BackupAndRestoreDBSelectionTest.kt │ │ ├── celllayout │ │ ├── integrationtest │ │ │ ├── TestUtils.kt │ │ │ └── events │ │ │ │ ├── EventsRule.kt │ │ │ │ └── TestEventsEmitterImplementation.kt │ │ └── testgenerator │ │ │ └── ValidGridMigrationTestCaseGenerator.kt │ │ ├── compat │ │ └── TaplPromiseIconUiTest.java │ │ ├── dragging │ │ ├── TaplDragTest.java │ │ └── TaplUninstallRemoveTest.java │ │ ├── model │ │ ├── GridMigrationTest.kt │ │ ├── LoaderTaskTest.kt │ │ ├── ModelMultiCallbacksTest.java │ │ ├── PackageUpdatedTaskTest.kt │ │ ├── WorkspaceItemProcessorExtraTest.kt │ │ └── gridmigration │ │ │ ├── GridMigrationUtils.kt │ │ │ └── ValidGridMigrationUnitTest.kt │ │ ├── nonquickstep │ │ ├── DeviceProfileDumpTest.kt │ │ └── HotseatWidthCalculationTest.kt │ │ ├── pageindicators │ │ └── PageIndicatorDotsTest.kt │ │ ├── pm │ │ └── InstallSessionHelperTest.kt │ │ ├── popup │ │ └── SystemShortcutTest.java │ │ ├── provider │ │ └── LauncherDbUtilsTest.java │ │ ├── search │ │ └── StringMatcherUtilityTest.java │ │ ├── tablet │ │ └── TaplIsTabletTest.kt │ │ ├── tapl │ │ └── TaplUtilityTest.java │ │ ├── testcomponent │ │ ├── AppWidgetWithDialog.java │ │ ├── BaseTestingActivity.java │ │ ├── CustomShortcutConfigActivity.java │ │ ├── DialogTestActivity.java │ │ ├── ImeTestActivity.java │ │ ├── ListViewService.java │ │ ├── OtherBaseTestingActivity.java │ │ ├── RequestPinItemActivity.java │ │ ├── TestCommandProvider.java │ │ ├── TestCommandReceiver.java │ │ ├── TestLauncherActivity.java │ │ ├── UnarchiveBroadcastReceiver.java │ │ └── WidgetConfigActivity.java │ │ ├── ui │ │ ├── AbstractLauncherUiTest.java │ │ ├── DoubleShadowIconDrawableTest.kt │ │ ├── PortraitLandscapeRunner.java │ │ ├── ShadowInfoTest.kt │ │ ├── TaplTestsLauncher3Test.java │ │ ├── TaplWorkProfileTest.java │ │ ├── widget │ │ │ ├── TaplAddConfigWidgetTest.java │ │ │ ├── TaplAddWidgetTest.java │ │ │ ├── TaplBindWidgetTest.java │ │ │ ├── TaplRequestPinItemTest.java │ │ │ └── TaplWidgetPickerTest.java │ │ └── workspace │ │ │ ├── TaplThemeIconsTest.java │ │ │ ├── TaplTwoPanelWorkspaceTest.java │ │ │ └── TaplWorkspaceTest.java │ │ ├── util │ │ ├── ItemInflaterTest.kt │ │ ├── RoboApiWrapper.kt │ │ ├── TestConstants.java │ │ ├── Wait.java │ │ ├── rule │ │ │ ├── ExtendedLongPressTimeoutRule.java │ │ │ ├── FailureWatcher.java │ │ │ ├── SamplerRule.java │ │ │ ├── ScreenRecordRule.java │ │ │ ├── SetPropRule.java │ │ │ ├── ShellCommandRule.java │ │ │ ├── TestIsolationRule.java │ │ │ ├── TestToPhoneFileCopier.kt │ │ │ └── ViewCaptureRule.kt │ │ └── viewcapture_analysis │ │ │ ├── AlphaJumpDetector.java │ │ │ ├── AnomalyDetector.java │ │ │ ├── FlashDetector.java │ │ │ ├── PositionJumpDetector.java │ │ │ └── ViewCaptureAnalyzer.java │ │ └── widget │ │ └── picker │ │ └── OWNERS ├── src_deviceless │ └── com │ │ └── android │ │ └── launcher3 │ │ └── util │ │ ├── RoboApiWrapper.kt │ │ └── RobolectricDeviceRunner.kt └── tapl │ ├── AndroidManifest.xml │ ├── README │ └── com │ └── android │ └── launcher3 │ └── tapl │ ├── AddToHomeScreenPrompt.java │ ├── AllApps.java │ ├── AllAppsAppIcon.java │ ├── AllAppsQsb.java │ ├── AppIcon.java │ ├── AppIconMenu.java │ ├── AppIconMenuItem.java │ ├── Background.java │ ├── BaseOverview.java │ ├── Folder.java │ ├── FolderIcon.java │ ├── Home.java │ ├── HomeAllApps.java │ ├── HomeAppIcon.java │ ├── HomeAppIconMenu.java │ ├── HomeAppIconMenuItem.java │ ├── HomeQsb.java │ ├── IconDragTarget.java │ ├── KeyboardQuickSwitch.java │ ├── KeyboardQuickSwitchSource.java │ ├── Launchable.java │ ├── LaunchedAppState.java │ ├── LauncherInstrumentation.java │ ├── LogEventChecker.java │ ├── Overview.java │ ├── OverviewActions.java │ ├── OverviewTask.java │ ├── OverviewTaskMenu.java │ ├── PredictionRow.java │ ├── PrivateSpaceContainer.java │ ├── PrivateSpaceHeader.java │ ├── Qsb.java │ ├── SearchInputSource.java │ ├── SearchResultFromQsb.java │ ├── SearchResultFromTaskbarQsb.java │ ├── SearchWebSuggestion.java │ ├── SelectModeButtons.java │ ├── SplitScreenMenuItem.java │ ├── SplitScreenSelect.java │ ├── SplitscreenDragSource.java │ ├── Taskbar.java │ ├── TaskbarAllApps.java │ ├── TaskbarAllAppsQsb.java │ ├── TaskbarAppIcon.java │ ├── TaskbarAppIconMenu.java │ ├── TaskbarAppIconMenuItem.java │ ├── TaskbarSearchWebSuggestion.java │ ├── TestHelpers.java │ ├── Widget.java │ ├── WidgetResizeFrame.java │ ├── Widgets.java │ ├── Workspace.java │ ├── WorkspaceAppIcon.java │ └── WorkspaceDragSource.java └── tools ├── checkstyle.xml ├── checkstyle_suppression.xml └── print_db.py /.gitignore: -------------------------------------------------------------------------------- 1 | db_files 2 | *.iml 3 | .project 4 | .classpath 5 | .project.properties 6 | gen/ 7 | tests/stress/gen/ 8 | WallpaperPicker/gen/ 9 | WallpaperPicker/.project.properties 10 | bin/ 11 | .idea/ 12 | .gradle/ 13 | local.properties 14 | gradle/ 15 | build/ 16 | gradlew* 17 | .DS_Store 18 | .settings 19 | -------------------------------------------------------------------------------- /PREUPLOAD.cfg: -------------------------------------------------------------------------------- 1 | [Builtin Hooks] 2 | ktfmt = true 3 | 4 | [Builtin Hooks Options] 5 | ktfmt = --kotlinlang-style 6 | 7 | [Tool Paths] 8 | ktfmt = ${REPO_ROOT}/external/ktfmt/ktfmt.sh 9 | 10 | [Hook Scripts] 11 | checkstyle_hook = ${REPO_ROOT}/prebuilts/checkstyle/checkstyle.py --config_xml tools/checkstyle.xml --sha ${PREUPLOAD_COMMIT} 12 | 13 | flag_hook = ${REPO_ROOT}/frameworks/base/packages/SystemUI/flag_check.py --msg=${PREUPLOAD_COMMIT_MESSAGE} --files=${PREUPLOAD_FILES} --project=${REPO_PATH} 14 | -------------------------------------------------------------------------------- /bcsmartspace/Android.bp: -------------------------------------------------------------------------------- 1 | android_library { 2 | name: "bcsmartspace-res", 3 | 4 | static_libs: [ 5 | "androidx.cardview_cardview", 6 | "androidx-constraintlayout_constraintlayout", 7 | ], 8 | 9 | optimize: { 10 | enabled: false, 11 | }, 12 | 13 | resource_dirs: ["res"], 14 | } 15 | 16 | android_library { 17 | name: "bcsmartspace-google", 18 | srcs: [ 19 | "src/**/*.kt", 20 | "src/**/*.java", 21 | "src/**/I*.aidl", 22 | ], 23 | static_libs: [ 24 | "bcsmartspace-res", 25 | "smartspace-proto-java", 26 | "SystemUIPluginLib", 27 | "SystemUISharedLib", 28 | "SystemUI-statsd", 29 | "iconloader_base", 30 | ], 31 | manifest: "AndroidManifest.xml", 32 | 33 | kotlincflags: ["-Xjvm-default=enable"], 34 | 35 | plugins: ["dagger2-compiler"], 36 | } 37 | -------------------------------------------------------------------------------- /bcsmartspace/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /bcsmartspace/res/drawable/bg_smartspace_card_secondary.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /bcsmartspace/res/layout/smartspace_base_card_doorbell.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /bcsmartspace/res/layout/smartspace_card_at_store.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-af-rZA/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d uur 5 | %d uur 6 | 7 | 8 | %d min. 9 | %d min. 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-af-rZA/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Volgende wekker om %s 4 | Bladsy %1$d van %2$d 5 | %1$s, %2$s 6 | Hek 7 | Sitplek 8 | %1$s %2$s 9 | Nou 10 | + nog %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-am-rET/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ሰዓ 5 | %d ሰዓ 6 | 7 | 8 | %d ደቂቃ 9 | %d ደቂቃ 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-am-rET/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | %s ላይ ቀጣዩ ማንቂያ 4 | ገጽ %1$d ከ%2$d 5 | %1$s፣ %2$s 6 | በር 7 | መቀመጫ 8 | %1$s %2$s 9 | አሁን 10 | + %1$d ተጨማሪ 11 | %1$s፣ %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ar-rSA/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ‏%d ساعة 5 | ‏%d ساعة 6 | ‏ساعة واحدة (%d) 7 | ‏ساعتان (%d) 8 | ‏%d ساعات 9 | ‏%d ساعة 10 | 11 | 12 | ‏%d دقيقة 13 | ‏%d دقيقة 14 | ‏دقيقة واحدة (%d) 15 | ‏دقيقتان (%d) 16 | ‏%d دقائق 17 | ‏%d دقيقة 18 | 19 | 20 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ar-rSA/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | المنبّه التالي في %s. 4 | الصفحة %1$d من %2$d 5 | %1$s، %2$s 6 | البوّابة 7 | المقعد 8 | %1$s %2$s 9 | الآن 10 | + %1$d أيضًا 11 | %1$s، %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-as-rIN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ঘ. 5 | %d ঘ. 6 | 7 | 8 | %d মি. 9 | %d মি. 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-as-rIN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | পৰৱৰ্তী এলাৰ্ম %sত 4 | %2$d খন পৃষ্ঠাৰ %1$d নম্বৰখন 5 | %1$s, %2$s 6 | গে’ট 7 | আসন 8 | %1$s %2$s 9 | Now 10 | আৰু %1$d টা 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-az-rAZ/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d saat 5 | %d saat 6 | 7 | 8 | %d dəq 9 | %d dəq 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-az-rAZ/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Növbəti siqnal vaxtı: %s 4 | Səhifə %1$d/%2$d 5 | %1$s, %2$s 6 | Qapı 7 | Yer 8 | %1$s %2$s 9 | İndi 10 | + daha %1$d ədəd 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-be-rBY/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d гадз 5 | %d гадз 6 | %d гадз 7 | %d гадз 8 | 9 | 10 | %d хв 11 | %d хв 12 | %d хв 13 | %d хв 14 | 15 | 16 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-be-rBY/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Наступны будзільнік у %s 4 | Старонка %1$d з %2$d 5 | %1$s, %2$s 6 | Выхад 7 | Месца 8 | %1$s %2$s 9 | Зараз 10 | + яшчэ %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-bg-rBG/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ч 5 | %d ч 6 | 7 | 8 | %d мин 9 | %d мин 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-bg-rBG/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Следващият будилник е в %s 4 | Страница %1$d от %2$d 5 | %1$s, %2$s 6 | Изход 7 | Място 8 | %1$s и %2$s 9 | Сега 10 | + още %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-bn-rBD/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ঘণ্টা 5 | %d ঘণ্টা 6 | 7 | 8 | %d মিনিট 9 | %d মিনিট 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-bn-rBD/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | পরবর্তী অ্যালার্মের সময় %s 4 | %2$dটির মধ্যে %1$d নম্বর পৃষ্ঠা 5 | %1$s, %2$s 6 | গেট 7 | আসন 8 | %1$s %2$s 9 | Now 10 | আরও +%1$dটি 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-bs-rBA/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | %d h 7 | 8 | 9 | %d min 10 | %d min 11 | %d min 12 | 13 | 14 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-bs-rBA/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Sljedeći alarm je u %s 4 | %1$d. stranica od %2$d 5 | %1$s, %2$s 6 | Izlaz 7 | Sjedište 8 | %1$s %2$s 9 | Sada 10 | i još %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ca-rES/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | 7 | 8 | %d min 9 | %d min 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ca-rES/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Pròxima alarma a les %s 4 | Pàgina %1$d de %2$d 5 | %1$s, %2$s 6 | Porta 7 | Seient 8 | %1$s %2$s 9 | Ara 10 | i %1$d més 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-cs-rCZ/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | %d h 7 | %d h 8 | 9 | 10 | %d min 11 | %d min 12 | %d min 13 | %d min 14 | 15 | 16 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-cs-rCZ/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Příští budík je v %s 4 | Strana %1$d z %2$d 5 | %1$s, %2$s 6 | Brána 7 | Sedadlo 8 | %1$s %2$s 9 | Právě teď 10 | a ještě %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-da-rDK/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d t. 5 | %d t. 6 | 7 | 8 | %d min. 9 | %d min. 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-da-rDK/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Næste alarm er klokken %s 4 | Side %1$d af %2$d 5 | %1$s, %2$s 6 | Gate 7 | Sæde 8 | %1$s og %2$s 9 | Nu 10 | + %1$d mere 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-de-rDE/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | 7 | 8 | %d Min. 9 | %d Min. 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-de-rDE/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Nächster Wecker um %s 4 | Seite %1$d von %2$d 5 | %1$s, %2$s 6 | Gate 7 | Sitz 8 | %1$s %2$s 9 | Jetzt 10 | + %1$d weitere 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-el-rGR/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ώ. 5 | %d ώ. 6 | 7 | 8 | %d λ. 9 | %d λ. 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-el-rGR/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Επόμενο ξυπνητήρι στις %s 4 | Σελίδα %1$d από %2$d 5 | %1$s, %2$s 6 | Πύλη 7 | Θέση 8 | %1$s %2$s 9 | Τώρα 10 | + %1$d ακόμα 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-eo-rUY/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | 7 | 8 | %d min 9 | %d min 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-es-rES/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Próxima alarma a las %s 4 | Página %1$d de %2$d 5 | %1$s, %2$s 6 | Puerta 7 | Asiento 8 | %1$s y %2$s 9 | Ahora 10 | Y %1$d más 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-et-rEE/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d jam 5 | %d jam 6 | 7 | 8 | %d mnt 9 | %d mnt 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-et-rEE/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Järgmine äratus on kell %s 4 | Leht %1$d/%2$d 5 | %1$s, %2$s 6 | Värav 7 | Koht 8 | %1$s %2$s 9 | Kohe 10 | + veel %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-eu-rES/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | 7 | 8 | %d min 9 | %d min 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-eu-rES/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Hurrengo alarma: %s 4 | %2$d orritik %1$dgarrena 5 | %1$s: %2$s 6 | Atea 7 | Eserlekua 8 | %1$s eta %2$s 9 | Orain 10 | Beste %1$d 11 | %1$s: %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-fa-rIR/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ‏%d ساعت 5 | ‏%d ساعت 6 | 7 | 8 | ‏%d دقیقه 9 | ‏%d دقیقه 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-fa-rIR/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | %s پر اگلا الارم 4 | صفحہ %1$d از %2$d 5 | %1$s، %2$s 6 | دروازہ 7 | سیٹ 8 | %1$s %2$s 9 | ابھی 10 | + %1$d مزید 11 | %1$s، %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-fi-rFI/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | 7 | 8 | %d min 9 | %d min 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-fi-rFI/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Seuraava hälytys klo %s 4 | Sivu %1$d/%2$d 5 | %1$s, %2$s 6 | Portti 7 | Paikka 8 | %1$s %2$s 9 | Nyt 10 | + %1$d muuta 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-fr-rFR/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | 7 | 8 | %d min 9 | %d min 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-fr-rFR/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Prochaine alarme à %s 4 | Page %1$d sur %2$d 5 | %1$s, %2$s 6 | Porte 7 | Siège 8 | %1$s %2$s 9 | À l\'instant 10 | + %1$d autre(s) 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-gl-rES/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | 7 | 8 | %d min 9 | %d min 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-gl-rES/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Hora da próxima alarma: %s 4 | Páxina %1$d de %2$d 5 | %1$s, %2$s 6 | Porta 7 | Asento 8 | %1$s %2$s 9 | Agora 10 | e %1$d máis 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-gu-rIN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d કલાક 5 | %d કલાક 6 | 7 | 8 | %d મિનિટ 9 | %d મિનિટ 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-gu-rIN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | આગલું અલાર્મ %s વાગ્યે વાગશે 4 | %2$dમાંથી %1$d પેજ 5 | %1$s, %2$s 6 | ગેટ 7 | સીટ 8 | %1$s %2$s 9 | હમણાં 10 | + વધુ %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-hi-rIN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d घंटे 5 | %d घंटे 6 | 7 | 8 | %d मिनट 9 | %d मिनट 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-hi-rIN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | अगला अलार्म %s बजे का सेट है 4 | %2$d में से %1$d पेज 5 | %1$s, %2$s 6 | गेट 7 | सीट 8 | %1$s घंटे %2$s मिनट 9 | अभी 10 | + %1$d और 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-hr-rHR/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | %d h 7 | 8 | 9 | %d min 10 | %d min 11 | %d min 12 | 13 | 14 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-hr-rHR/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Sljedeći alarm u %s 4 | Stranica %1$d od %2$d 5 | %1$s, %2$s 6 | Izlaz 7 | Sjedalo 8 | %1$s %2$s 9 | Sad 10 | i još %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-hu-rHU/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d óra 5 | %d óra 6 | 7 | 8 | %d perc 9 | %d perc 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-hu-rHU/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Következő ébresztés időpontja: %s 4 | %1$d. oldal, összesen: %2$d oldal 5 | %1$s, %2$s 6 | Kapu 7 | Ülés 8 | %1$s %2$s 9 | Most 10 | és %1$d további 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-hy-rAM/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Հաջորդ զարթուցիչը՝ %s 4 | Էջ %1$d/%2$d 5 | %1$s, %2$s 6 | Ելք 7 | Նստատեղ 8 | %1$s %2$s 9 | Հիմա 10 | ու ևս %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-in-rID/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Alarm berikutnya pukul %s 4 | Halaman %1$d dari %2$d 5 | %1$s, %2$s 6 | Gerbang 7 | Kursi 8 | %1$s %2$s 9 | Sekarang 10 | +%1$d lainnya 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-is-rIS/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d klst. 5 | %d klst. 6 | 7 | 8 | %d mín. 9 | %d mín. 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-is-rIS/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Næsti vekjari kl. %s 4 | Síða %1$d af %2$d 5 | %1$s, %2$s 6 | Hlið 7 | Sæti 8 | %1$s og %2$s 9 | Núna 10 | + %1$d í viðbót 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-it-rIT/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | 7 | 8 | %d min 9 | %d min 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-it-rIT/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Prossima sveglia alle ore %s 4 | Pagina %1$d di %2$d 5 | %1$s, %2$s 6 | Gate 7 | Posto 8 | %1$s %2$s 9 | Ora 10 | + altre %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-iw-rIL/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ‏%d שעות 5 | ‏שעה אחת (%d) 6 | ‏שעתיים (%d) 7 | ‏%d שעות 8 | 9 | 10 | ‏%d דקות 11 | ‏דקה אחת (%d) 12 | ‏%d דקות 13 | ‏%d דקות 14 | 15 | 16 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-iw-rIL/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ההתראה הבאה ב-%s 4 | דף %1$d מתוך %2$d 5 | %1$s, %2$s 6 | שער 7 | מושב 8 | %1$s ו-%2$s 9 | עכשיו 10 | ועוד %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ja-rJP/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d 時間 5 | 6 | 7 | %d 分 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ja-rJP/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 次のアラーム: %s 4 | %1$d/%2$d ページ 5 | %1$s、%2$s 6 | ゲート 7 | 座席 8 | %1$s %2$s 9 | たった今 10 | 他 %1$d 件 11 | %1$s、%2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ka-rGE/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d სთ 5 | %d სთ 6 | 7 | 8 | %d წთ 9 | %d წთ 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ka-rGE/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | შემდეგი მაღვიძარის დრო: %s 4 | გვერდი %1$d / %2$d-დან 5 | %1$s, %2$s 6 | გასასვლელი 7 | ადგილი 8 | %1$s და %2$s 9 | ახლა 10 | + %1$d სხვა 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-kk-rKZ/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d сағ 5 | %d сағ 6 | 7 | 8 | %d мин 9 | %d мин 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-kk-rKZ/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Келесі оятқыш уақыты: %s 4 | Бет: %1$d/%2$d 5 | %1$s, %2$s 6 | Шығу 7 | Орын 8 | %1$s %2$s 9 | Қазір 10 | Tағы %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-km-rKH/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ម៉ 5 | 6 | 7 | %d ន 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-km-rKH/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ម៉ោងរោទ៍បន្ទាប់នៅម៉ោង %s 4 | ទំព័រទី %1$d នៃ %2$d 5 | %1$s, %2$s 6 | ច្រក 7 | កៅអី 8 | %1$s %2$s 9 | ឥឡូវ​នេះ 10 | + %1$d ទៀត 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-kn-rIN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ಗಂಟೆ 5 | %d ಗಂಟೆ 6 | 7 | 8 | %d ನಿಮಿಷ 9 | %d ನಿಮಿಷ 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-kn-rIN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ಮುಂದಿನ ಅಲಾರಾಂ %s ಸಮಯಕ್ಕೆ ಇದೆ 4 | ಪುಟ %2$d ರಲ್ಲಿ %1$d 5 | %1$s, %2$s 6 | ಗೇಟ್ 7 | ಆಸನ 8 | %1$s %2$s 9 | ಈಗ 10 | + ಇನ್ನೂ %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ko-rKR/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d시간 5 | 6 | 7 | %d분 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ko-rKR/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 다음 알람: %s 4 | %2$d페이지 중 %1$d페이지 5 | %1$s, %2$s 6 | 게이트 7 | 좌석 8 | %1$s %2$s 9 | 방금 10 | 외 %1$d개 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ky-rKG/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d с. 5 | %d с. 6 | 7 | 8 | %d мүн. 9 | %d мүн. 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ky-rKG/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Кийинки ойготкуч саат %s иштейт 4 | %2$d беттин %1$d-бети 5 | %1$s, %2$s 6 | Дарбаза 7 | Орун 8 | %1$s %2$s 9 | Азыр 10 | дагы %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-lo-rLA/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ຊມ 5 | 6 | 7 | %d ນທ 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-lo-rLA/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ໂມງປຸກຕໍ່ໄປແມ່ນ %s 4 | ໜ້າທີ %1$d ຈາກທັງໝົດ %2$d 5 | %1$s, %2$s 6 | ປະຕູ 7 | ບ່ອນນັ່ງ 8 | %1$s %2$s 9 | ຕອນນີ້ 10 | ອີກ + %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-lt-rLT/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d valandų 5 | %d valanda 6 | %d valandos 7 | %d valandos 8 | 9 | 10 | %d minučių 11 | %d minutė 12 | %d minutės 13 | %d minutės 14 | 15 | 16 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-lt-rLT/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Kitas signalas %s 4 | %1$d psl. iš %2$d 5 | %1$s, %2$s 6 | Vartai 7 | Vieta 8 | %1$s %2$s 9 | Dabar 10 | Dar %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-lv-rLV/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | %d h 7 | 8 | 9 | %d min 10 | %d min 11 | %d min 12 | 13 | 14 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-lv-rLV/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Nākamais signāls plkst. %s 4 | %1$d. lapa no %2$d 5 | %1$s, %2$s 6 | Izeja 7 | Vieta 8 | %1$s %2$s 9 | Tikko 10 | un vēl %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-mk-rMK/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d часа 5 | %d час 6 | 7 | 8 | %d мин. 9 | %d мин. 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-mk-rMK/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Следниот аларм е во %s 4 | Страница %1$d од %2$d 5 | %1$s, %2$s 6 | Порта 7 | Седиште 8 | %1$s %2$s 9 | Сега 10 | и уште %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-mn-rMN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d цаг 5 | %d цаг 6 | 7 | 8 | %d мин 9 | %d мин 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-mn-rMN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Дараагийн сэрүүлэг %s-д байна 4 | %2$d-н %1$d-р хуудас 5 | %1$s, %2$s 6 | Хаалга 7 | Суудал 8 | %1$s %2$s 9 | Одоо 10 | + бусад %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-mr-rIN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ता 5 | %d ता 6 | 7 | 8 | %d मि 9 | %d मि 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-mr-rIN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | पुढील अलार्म %s वाजताचा आहे 4 | %2$d पैकी %1$d पेज 5 | %1$s, %2$s 6 | गेट 7 | सीट 8 | %1$s %2$s 9 | Now 10 | आणखी %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ms-rMY/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d jam 5 | 6 | 7 | %d min 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ms-rMY/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Penggera seterusnya pada pukul %s 4 | Halaman %1$d daripada %2$d 5 | %1$s, %2$s 6 | Pintu 7 | Tempat Duduk 8 | %1$s %2$s 9 | Sekarang 10 | + %1$d lagi 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-my-rMM/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d နာရီ 5 | 6 | 7 | %d မိနစ် 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-my-rMM/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | %s တွင် နောက်နှိုးစက် 4 | စာမျက်နှာ %2$d အနက် %1$d 5 | %1$s၊ %2$s 6 | ဂိတ် 7 | ထိုင်ခုံနံပါတ် 8 | %1$s %2$s 9 | ယခု 10 | နောက်ထပ် + %1$d ခု 11 | %1$s၊ %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-nb-rNO/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d t 5 | %d t 6 | 7 | 8 | %d min 9 | %d min 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-nb-rNO/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Neste alarm kl. %s 4 | Side %1$d av %2$d 5 | %1$s, %2$s 6 | Port 7 | Sete 8 | %1$s %2$s 9 | 10 | + %1$d til 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-nl-rNL/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d u 5 | %d u 6 | 7 | 8 | %d min 9 | %d min 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-nl-rNL/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Volgende wekker om %s 4 | Pagina %1$d van %2$d 5 | %1$s, %2$s 6 | Gate 7 | Stoel 8 | %1$s %2$s 9 | Nu 10 | + nog %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-or-rIN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ଘଣ୍ଟା 5 | %d ଘଣ୍ଟା 6 | 7 | 8 | %d ମିନିଟ୍‍ 9 | %d ମିନିଟ୍‍ 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-or-rIN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ପରବର୍ତ୍ତୀ ଆଲାରାମ %sରେ ଅଛି 4 | %2$d ମଧ୍ୟରୁ %1$d ପୃଷ୍ଠା 5 | %1$s, %2$s 6 | ଗେଟ୍ 7 | ସିଟ୍ 8 | %1$s %2$s 9 | Now 10 | + %1$d ଅଧିକ 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-pa-rIN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ਘੰਟੇ 5 | %d ਘੰਟਾ 6 | 7 | 8 | %d ਮਿੰਟ 9 | %d ਮਿੰਟ 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-pa-rIN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ਅਗਲਾ ਅਲਾਰਮ %s ਵਜੇ 4 | %2$d ਵਿੱਚੋਂ %1$d ਪੰਨਾ 5 | %1$s, %2$s 6 | ਗੇਟ 7 | ਸੀਟ 8 | %1$s %2$s 9 | ਹੁਣੇ 10 | + %1$d ਹੋਰ 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-pl-rPL/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d godz. 5 | %d godz. 6 | %d godz. 7 | %d godz. 8 | 9 | 10 | %d min 11 | %d min 12 | %d min 13 | %d min 14 | 15 | 16 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-pl-rPL/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Następny alarm o %s 4 | Strona %1$d z %2$d 5 | %1$s, %2$s 6 | Bramka 7 | Miejsce 8 | %1$s %2$s 9 | Teraz 10 | i jeszcze %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-pt-rBR/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | 7 | 8 | %d min 9 | %d min 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-pt-rBR/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Próximo alarme: %s 4 | Página %1$d de %2$d 5 | %1$s, %2$s 6 | Portão 7 | Assento 8 | %1$s e %2$s 9 | Agora 10 | Mais %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-pt-rPT/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | 7 | 8 | %d min 9 | %d min 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-pt-rPT/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Próximo alarme: %s 4 | Página %1$d de %2$d 5 | %1$s, %2$s 6 | Portão 7 | Assento 8 | %1$s e %2$s 9 | Agora 10 | Mais %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ro-rRO/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | %d h 7 | 8 | 9 | %d min. 10 | %d min. 11 | %d min. 12 | 13 | 14 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ro-rRO/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Următoarea alarmă la %s 4 | Pagina %1$d din %2$d 5 | %1$s %2$s 6 | Poarta 7 | Locul 8 | %1$s %2$s 9 | Acum 10 | + încă %1$d 11 | %1$s %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ru-rRU/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ч. 5 | %d ч. 6 | %d ч. 7 | %d ч. 8 | 9 | 10 | %d мин. 11 | %d мин. 12 | %d мин. 13 | %d мин. 14 | 15 | 16 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ru-rRU/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Следующий будильник сработает в %s 4 | Страница %1$d из %2$d 5 | %1$s, %2$s 6 | Выход 7 | Место 8 | %1$s %2$s 9 | Сейчас 10 | и ещё %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-sk-rSK/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | %d h 7 | %d h 8 | 9 | 10 | %d min 11 | %d min 12 | %d min 13 | %d min 14 | 15 | 16 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-sk-rSK/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Ďalší budík je nastavený na %s 4 | %1$d. stránka z(o) %2$d 5 | %1$s, %2$s 6 | Brána 7 | Sedadlo 8 | %1$s %2$s 9 | Teraz 10 | a ďalšie (%1$d) 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-sl-rSI/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d h 5 | %d h 6 | %d h 7 | %d h 8 | 9 | 10 | %d min 11 | %d min 12 | %d min 13 | %d min 14 | 15 | 16 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-sl-rSI/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Naslednji alarm ob %s 4 | Stran %1$d od %2$d 5 | %1$s, %2$s 6 | Izhod 7 | Sedež 8 | %1$s %2$s 9 | Zdaj 10 | + še %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-sq-rAL/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d orë 5 | %d orë 6 | 7 | 8 | %d min. 9 | %d min. 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-sq-rAL/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Alarmi tjetër në %s 4 | Faqja %1$d nga %2$d 5 | %1$s, %2$s 6 | Porta 7 | Ndenjësja 8 | %1$s %2$s 9 | Tani 10 | + %1$d të tjera 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-sr-rSP/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ч 5 | %d ч 6 | %d ч 7 | 8 | 9 | %d мин 10 | %d мин 11 | %d мин 12 | 13 | 14 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-sr-rSP/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Следећи аларм је у %s 4 | %1$d. страница од %2$d 5 | %1$s, %2$s 6 | Излаз 7 | Седиште 8 | %1$s %2$s 9 | Сада 10 | и још %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-sv-rSE/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Nästa alarm är kl. %s 4 | Sida %1$d av %2$d 5 | %1$s, %2$s 6 | Gate 7 | Plats 8 | %1$s %2$s 9 | Nu 10 | + %1$d till 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-sw-rKE/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | saa %d 5 | saa %d 6 | 7 | 8 | dakika %d 9 | dakika %d 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-sw-rKE/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Kengele inayofuata saa %s 4 | Ukurasa wa %1$d kati ya %2$d 5 | %1$s, %2$s 6 | Lango 7 | Kiti 8 | %1$s %2$s 9 | Sasa 10 | + %1$d zaidi 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ta-rIN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ம.நே. 5 | %d ம.நே. 6 | 7 | 8 | %d நிமி. 9 | %d நிமி. 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-ta-rIN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | அடுத்த அலாரம் %s மணிக்கு ஒலிக்கும் 4 | பக்கம்: %1$d/%2$d 5 | %1$s, %2$s 6 | வாயில் 7 | இருக்கை 8 | %1$s %2$s 9 | இப்போது 10 | மேலும் %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-te-rIN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d గం 5 | %d గం 6 | 7 | 8 | %d నిమి 9 | %d నిమి 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-te-rIN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | తర్వాతి అలారం %sకు సెట్ అయ్యింది 4 | %2$dలో %1$dవ పేజీ 5 | %1$s, %2$s 6 | గేట్ 7 | సీటు 8 | %1$s %2$s 9 | Now 10 | + మరో %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-th-rTH/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ชม. 5 | 6 | 7 | %d นาที 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-th-rTH/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ปลุกครั้งต่อไปเวลา %s 4 | หน้า %1$d จาก %2$d 5 | %1$s %2$s 6 | ประตู 7 | ที่นั่ง 8 | %1$s %2$s 9 | ตอนนี้ 10 | อีก %1$d รายการ 11 | %1$s %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-tl-rPH/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d na oras 5 | %d oras 6 | 7 | 8 | %d na minuto 9 | %d minuto 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-tl-rPH/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Ang susunod na alarm ay sa %s 4 | Page %1$d ng %2$d 5 | %1$s, %2$s 6 | Gate 7 | Upuan 8 | %1$s %2$s 9 | Ngayon 10 | + %1$d pa 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-tr-rTR/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d sa. 5 | %d sa. 6 | 7 | 8 | %d dk. 9 | %d dk. 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-tr-rTR/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Sonraki alarm saati: %s 4 | Sayfa %1$d/%2$d 5 | %1$s, %2$s 6 | Kapı 7 | Koltuk 8 | %1$s %2$s 9 | Şimdi 10 | + %1$d tane daha 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-uk-rUA/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d год 5 | %d год 6 | %d год 7 | %d год 8 | 9 | 10 | %d хв 11 | %d хв 12 | %d хв 13 | %d хв 14 | 15 | 16 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-uk-rUA/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Наступний будильник спрацює о %s 4 | Сторінка %1$d із %2$d 5 | %1$s, %2$s 6 | Вихід 7 | Місце 8 | %1$s %2$s 9 | Щойно 10 | і ще %1$d 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-uz-rUZ/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d soat 5 | %d soat 6 | 7 | 8 | %d daqiqa 9 | %d daqiqa 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-uz-rUZ/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Keyingi signal: %s 4 | Sahifa: %1$d / %2$d 5 | %1$s, %2$s 6 | Darvoza 7 | Joy 8 | %1$s %2$s 9 | Hozir 10 | + %1$d ta 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-vi-rVN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d giờ 5 | 6 | 7 | %d phút 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-vi-rVN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Chuông báo tiếp theo lúc %s 4 | Trang %1$d/%2$d 5 | %1$s, %2$s 6 | Cổng 7 | Chỗ ngồi 8 | %1$s %2$s 9 | Hiện tại 10 | + %1$d thẻ khác 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-zh-rCN/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d 小时 5 | 6 | 7 | %d 分钟 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-zh-rCN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 闹钟的下一次响铃时间是:%s 4 | 第 %1$d 页,共 %2$d 页 5 | %1$s,%2$s 6 | 登机口 7 | 座位 8 | %1$s %2$s 9 | 现在 10 | + 另外 %1$d 个 11 | %1$s,%2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-zh-rHK/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d 小時 5 | 6 | 7 | %d 分鐘 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-zh-rHK/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 下次鬧鐘時間:%s 4 | 第 %1$d 頁,總共有 %2$d 頁 5 | %1$s,%2$s 6 | 閘口 7 | 座位 8 | %1$s %2$s 9 | 剛剛 10 | 還有 %1$d 個 11 | %1$s,%2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-zh-rSG/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d 小時 5 | 6 | 7 | %d 分鐘 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-zh-rSG/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 下次鬧鐘時間:%s 4 | 第 %1$d 頁,共 %2$d 頁 5 | %1$s,%2$s 6 | 登機門 7 | 座位 8 | %1$s %2$s 9 | 現在 10 | 還有 %1$d 項 11 | %1$s,%2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-zh-rTW/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d 小時 5 | 6 | 7 | %d 分鐘 8 | 9 | 10 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-zh-rTW/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 下次鬧鐘時間:%s 4 | 第 %1$d 頁,共 %2$d 頁 5 | %1$s,%2$s 6 | 登機門 7 | 座位 8 | %1$s %2$s 9 | 現在 10 | 還有 %1$d 項 11 | %1$s,%2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-zu-rZA/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d ihora 5 | %d ihora 6 | 7 | 8 | %d iminithi 9 | %d iminithi 10 | 11 | 12 | -------------------------------------------------------------------------------- /bcsmartspace/res/values-zu-rZA/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | I-alamu elandelayo ngo-%s 4 | Ikhasi %1$d kwangu-%2$d 5 | %1$s, %2$s 6 | Isango 7 | Isihlalo 8 | %1$s %2$s 9 | Manje 10 | + %1$d okwengeziwe 11 | %1$s, %2$s 12 | 13 | -------------------------------------------------------------------------------- /bcsmartspace/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #40000000 4 | #89000000 5 | @android:color/system_accent2_200 6 | @android:color/system_accent2_700 7 | 8 | -------------------------------------------------------------------------------- /bcsmartspace/res/values/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | %d hr 4 | %d hr 5 | 6 | 7 | %d min 8 | %d min 9 | 10 | 11 | -------------------------------------------------------------------------------- /bcsmartspace/src/com/google/android/systemui/smartspace/BcSmartspaceEvent.java: -------------------------------------------------------------------------------- 1 | package com.google.android.systemui.smartspace; 2 | 3 | public enum BcSmartspaceEvent implements EventEnum { 4 | IGNORE(-1), 5 | SMARTSPACE_CARD_RECEIVED(759), 6 | SMARTSPACE_CARD_CLICK(760), 7 | SMARTSPACE_CARD_DISMISS(761), 8 | SMARTSPACE_CARD_SEEN(800), 9 | ENABLED_SMARTSPACE(822), 10 | DISABLED_SMARTSPACE(823); 11 | 12 | private final int mId; 13 | 14 | BcSmartspaceEvent(int id) { 15 | this.mId = id; 16 | } 17 | 18 | @Override // com.google.android.systemui.smartspace.EventEnum 19 | public int getId() { 20 | return this.mId; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /bcsmartspace/src/com/google/android/systemui/smartspace/EventEnum.java: -------------------------------------------------------------------------------- 1 | package com.google.android.systemui.smartspace; 2 | 3 | public interface EventEnum { 4 | int getId(); 5 | } 6 | -------------------------------------------------------------------------------- /bcsmartspace/src/com/google/android/systemui/smartspace/SmallHash.java: -------------------------------------------------------------------------------- 1 | package com.google.android.systemui.smartspace; 2 | 3 | import java.util.Objects; 4 | 5 | public final class SmallHash { 6 | public static int hash(String str) { 7 | return hash(Objects.hashCode(str)); 8 | } 9 | 10 | public static int hash(int i) { 11 | return Math.abs(Math.floorMod(i, 8192)); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /go/OWNERS: -------------------------------------------------------------------------------- 1 | rajekumar@google.com 2 | spivack@google.com 3 | -------------------------------------------------------------------------------- /go/quickstep/res/values/integers.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 200 20 | -------------------------------------------------------------------------------- /libs/libGoogleFeed.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/libs/libGoogleFeed.jar -------------------------------------------------------------------------------- /quickstep/compose/facade/core/QuickstepComposeFeatures.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2024 The Android Open Source Project 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.android.quickstep.compose.core 18 | 19 | interface QuickstepComposeFeatures 20 | -------------------------------------------------------------------------------- /quickstep/res/color/menu_item_hover_state_color.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /quickstep/res/drawable-hdpi/nav_background.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/quickstep/res/drawable-hdpi/nav_background.9.png -------------------------------------------------------------------------------- /quickstep/res/drawable-mdpi/nav_background.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/quickstep/res/drawable-mdpi/nav_background.9.png -------------------------------------------------------------------------------- /quickstep/res/drawable-xhdpi/nav_background.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/quickstep/res/drawable-xhdpi/nav_background.9.png -------------------------------------------------------------------------------- /quickstep/res/drawable-xxhdpi/nav_background.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/quickstep/res/drawable-xxhdpi/nav_background.9.png -------------------------------------------------------------------------------- /quickstep/res/drawable/bg_sandbox_close_button.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | -------------------------------------------------------------------------------- /quickstep/res/drawable/gesture_tutorial_finger_dot.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /quickstep/res/drawable/gesture_tutorial_ripple.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /quickstep/res/drawable/ic_hourglass_top.xml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /quickstep/res/drawable/ic_lens.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /quickstep/res/drawable/ic_sysbar_back_kids.xml: -------------------------------------------------------------------------------- 1 | 7 | 10 | 11 | -------------------------------------------------------------------------------- /quickstep/res/drawable/ic_sysbar_home_kids.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /quickstep/res/drawable/ic_sysbar_notifications.xml: -------------------------------------------------------------------------------- 1 | 7 | 10 | 11 | -------------------------------------------------------------------------------- /quickstep/res/drawable/tutorial_step_indicator_pill.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /quickstep/res/layout/all_apps_edu_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | -------------------------------------------------------------------------------- /quickstep/res/layout/floating_header_content.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | 14 | 15 | -------------------------------------------------------------------------------- /quickstep/res/layout/meminfo.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /quickstep/res/layout/predicted_app_icon.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /quickstep/res/layout/taskbar_app_icon.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /quickstep/res/layout/taskbar_predicted_app_icon.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /quickstep/res/xml/overview_file_provider_paths.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /quickstep/src/com/android/launcher3/taskbar/bubbles/OWNERS: -------------------------------------------------------------------------------- 1 | atsjenk@google.com 2 | liranb@google.com 3 | madym@google.com 4 | mpodolian@google.com 5 | 6 | -------------------------------------------------------------------------------- /quickstep/src/com/android/quickstep/SplitSelectionListener.kt: -------------------------------------------------------------------------------- 1 | package com.android.quickstep 2 | 3 | interface SplitSelectionListener { 4 | /** Called when the first app has been selected with the intention to launch split screen */ 5 | fun onSplitSelectionActive() 6 | 7 | /** Called when the second app has been selected with the intention to launch split screen */ 8 | fun onSplitSelectionConfirmed() 9 | 10 | /** 11 | * Called when the user no longer is in the process of selecting apps for split screen. 12 | * [launchedSplit] will be true if selected apps have launched successfully (either in 13 | * split screen or fullscreen), false if the user canceled/exited the selection process 14 | */ 15 | fun onSplitSelectionExit(launchedSplit: Boolean) { 16 | } 17 | } -------------------------------------------------------------------------------- /quickstep/src/com/android/quickstep/dagger/QuickStepModule.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2024 The Android Open Source Project 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package com.android.quickstep.dagger; 17 | 18 | import dagger.Module; 19 | 20 | @Module 21 | public class QuickStepModule { 22 | } 23 | -------------------------------------------------------------------------------- /quickstep/src/com/android/quickstep/views/TaskViewType.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2024 The Android Open Source Project 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.android.quickstep.views 18 | 19 | /** Type of the [TaskView] */ 20 | enum class TaskViewType { 21 | SINGLE, 22 | GROUPED, 23 | DESKTOP 24 | } 25 | -------------------------------------------------------------------------------- /quickstep/tests/OWNERS: -------------------------------------------------------------------------------- 1 | vadimt@google.com 2 | sunnygoyal@google.com 3 | winsonc@google.com 4 | hyunyoungs@google.com 5 | -------------------------------------------------------------------------------- /quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/OWNERS: -------------------------------------------------------------------------------- 1 | atsjenk@google.com 2 | liranb@google.com 3 | madym@google.com 4 | mpodolian@google.com 5 | 6 | -------------------------------------------------------------------------------- /quickstep/tests/multivalentTestsForDevice: -------------------------------------------------------------------------------- 1 | ./multivalentTests -------------------------------------------------------------------------------- /res/anim/no_anim.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 19 | -------------------------------------------------------------------------------- /res/color-night-v31/accent_ripple_color.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /res/color-night-v31/popup_shade_first.xml: -------------------------------------------------------------------------------- 1 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /res/color-night-v31/taskbar_stroke.xml: -------------------------------------------------------------------------------- 1 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /res/color-night/accent_ripple_color.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /res/color-night/all_apps_tab_background_selected.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /res/color-night/all_apps_tabs_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /res/color-v31/accent_ripple_color.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /res/color-v31/all_apps_tab_background_selected.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /res/color-v31/all_apps_tabs_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /res/color-v31/folder_preview_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /res/color-v31/popup_shade_first.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /res/color-v31/taskbar_edu_button_color.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /res/color/accent_ripple_color.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /res/color/all_apps_tab_background_selected.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /res/color/all_apps_tabs_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /res/color/button_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 20 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /res/color/cell_layout_bg_color.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /res/color/hotseat_qsb_bg_color.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /res/color/meminfo_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /res/color/overview_button.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 11 | -------------------------------------------------------------------------------- /res/color/overview_scrim.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /res/color/overview_scrim_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /res/color/popup_shade_first.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /res/color/popup_shade_second.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /res/color/popup_shade_third.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /res/color/taskbar_stroke.xml: -------------------------------------------------------------------------------- 1 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /res/color/widgets_picker_scrim.xml: -------------------------------------------------------------------------------- 1 | 2 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /res/drawable-hdpi/ic_widget_resize_handle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/drawable-hdpi/ic_widget_resize_handle.png -------------------------------------------------------------------------------- /res/drawable-mdpi/ic_widget_resize_handle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/drawable-mdpi/ic_widget_resize_handle.png -------------------------------------------------------------------------------- /res/drawable-night/ic_derpowl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/drawable-night/ic_derpowl.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/ic_widget_resize_handle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/drawable-xhdpi/ic_widget_resize_handle.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/ic_widget_resize_handle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/drawable-xxhdpi/ic_widget_resize_handle.png -------------------------------------------------------------------------------- /res/drawable-xxxhdpi/ic_widget_resize_handle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/drawable-xxxhdpi/ic_widget_resize_handle.png -------------------------------------------------------------------------------- /res/drawable/add_item_dialog_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 8 | -------------------------------------------------------------------------------- /res/drawable/bg_google_qsb.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 8 | 9 | 10 | 11 | 12 | 13 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /res/drawable/bkg_appseat.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /res/drawable/gm_edit_24.xml: -------------------------------------------------------------------------------- 1 | 7 | 10 | 11 | -------------------------------------------------------------------------------- /res/drawable/gutter_horizontal.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | -------------------------------------------------------------------------------- /res/drawable/ic_arrow_back_ui.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /res/drawable/ic_battery_widget_category.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /res/drawable/ic_derp_apps_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /res/drawable/ic_derp_home.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /res/drawable/ic_derp_home_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /res/drawable/ic_derp_icons_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /res/drawable/ic_derp_more_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /res/drawable/ic_derp_recent_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /res/drawable/ic_derp_suggestions_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /res/drawable/ic_derpowl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/drawable/ic_derpowl.png -------------------------------------------------------------------------------- /res/drawable/ic_gm_close_24.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /res/drawable/ic_pixel_weather_launcher_foreground_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 13 | 16 | 19 | 20 | -------------------------------------------------------------------------------- /res/drawable/ic_pixel_weather_launcher_foreground_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 13 | 16 | 19 | 20 | -------------------------------------------------------------------------------- /res/drawable/ic_pixel_weather_launcher_foreground_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 13 | 16 | 17 | -------------------------------------------------------------------------------- /res/drawable/ic_pixel_weather_launcher_foreground_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 13 | 16 | 17 | -------------------------------------------------------------------------------- /res/drawable/ic_settings_about.xml: -------------------------------------------------------------------------------- 1 | 6 | 11 | 14 | 15 | -------------------------------------------------------------------------------- /res/drawable/ic_settings_homescreen.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 14 | 15 | -------------------------------------------------------------------------------- /res/drawable/ic_settings_recents.xml: -------------------------------------------------------------------------------- 1 | 6 | 11 | 14 | 15 | -------------------------------------------------------------------------------- /res/drawable/ic_split_horizontal.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /res/drawable/ic_split_vertical.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /res/drawable/ic_weather_widget_category.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /res/drawable/meminfo_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /res/drawable/page_indicator.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /res/drawable/pill_ripple.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /res/drawable/ui_scrim.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /res/interpolator/decelerate_quart.xml: -------------------------------------------------------------------------------- 1 | 2 | 19 | 20 | 22 | -------------------------------------------------------------------------------- /res/interpolator/decelerate_quint.xml: -------------------------------------------------------------------------------- 1 | 2 | 19 | 20 | 22 | -------------------------------------------------------------------------------- /res/layout/app_icon.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /res/layout/empty_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 14 | -------------------------------------------------------------------------------- /res/layout/floating_app_pair_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | -------------------------------------------------------------------------------- /res/layout/floating_header_content.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | -------------------------------------------------------------------------------- /res/layout/floating_split_select_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 12 | 13 | 18 | 19 | -------------------------------------------------------------------------------- /res/layout/home_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | -------------------------------------------------------------------------------- /res/layout/predicted_app_icon.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /res/layout/system_shortcut_spacer.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /res/mipmap-hdpi/ic_launcher_home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/mipmap-hdpi/ic_launcher_home.png -------------------------------------------------------------------------------- /res/mipmap-mdpi/ic_launcher_home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/mipmap-mdpi/ic_launcher_home.png -------------------------------------------------------------------------------- /res/mipmap-xhdpi/ic_launcher_home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/mipmap-xhdpi/ic_launcher_home.png -------------------------------------------------------------------------------- /res/mipmap-xxhdpi/ic_launcher_home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/mipmap-xxhdpi/ic_launcher_home.png -------------------------------------------------------------------------------- /res/mipmap-xxxhdpi/ic_launcher_home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/res/mipmap-xxxhdpi/ic_launcher_home.png -------------------------------------------------------------------------------- /res/values-ldrtl/derp_strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | @string/msg_minus_one_on_right 9 | 10 | -------------------------------------------------------------------------------- /res/values-night/derp_colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | @*android:color/system_neutral1_800 9 | #ffffffff 10 | #89ffffff 11 | 12 | @*android:color/system_accent1_100 13 | 14 | 15 | #50181c1f 16 | 17 | @*android:color/system_neutral2_800 18 | 19 | -------------------------------------------------------------------------------- /res/values-sw600dp-land/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 | 11 | -------------------------------------------------------------------------------- /res/values-sw600dp/styles.xml: -------------------------------------------------------------------------------- 1 | 16 | 17 | 18 | 21 | -------------------------------------------------------------------------------- /res/values-sw640dp-land/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 9 | 14 | 15 | -------------------------------------------------------------------------------- /res/values-sw640dp/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 9 | 14 | 15 | -------------------------------------------------------------------------------- /res/values-sw700dp/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | -------------------------------------------------------------------------------- /res/values-v28/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | ?android:attr/dialogCornerRadius 19 | 20 | -------------------------------------------------------------------------------- /res/values-v31/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | false 19 | false 20 | -------------------------------------------------------------------------------- /res/values-zh-rCN/derp_config.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 10 | true 11 | 12 | -------------------------------------------------------------------------------- /res/values/derp_attrs.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /res/xml/backupscheme.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /res/xml/dynamic_resources.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /res/xml/grayscale_icon_map.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | -------------------------------------------------------------------------------- /res/xml/split_configuration.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 13 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/com/android/launcher3/AppFilter.java: -------------------------------------------------------------------------------- 1 | package com.android.launcher3; 2 | 3 | import android.content.ComponentName; 4 | import android.content.Context; 5 | 6 | import java.util.Arrays; 7 | import java.util.Set; 8 | import java.util.stream.Collectors; 9 | 10 | /** 11 | * Utility class to filter out components from various lists 12 | */ 13 | public class AppFilter { 14 | 15 | private final Set mFilteredComponents; 16 | 17 | public AppFilter(Context context) { 18 | mFilteredComponents = Arrays.stream( 19 | context.getResources().getStringArray(R.array.filtered_components)) 20 | .map(ComponentName::unflattenFromString) 21 | .collect(Collectors.toSet()); 22 | } 23 | 24 | public boolean shouldShowApp(ComponentName app) { 25 | return !mFilteredComponents.contains(app); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/com/android/launcher3/OnAlarmListener.java: -------------------------------------------------------------------------------- 1 | package com.android.launcher3; 2 | 3 | public interface OnAlarmListener { 4 | public void onAlarm(Alarm alarm); 5 | } 6 | -------------------------------------------------------------------------------- /src/com/android/launcher3/icons/pack/IconResolver.java: -------------------------------------------------------------------------------- 1 | package com.android.launcher3.icons.pack; 2 | 3 | import android.graphics.drawable.Drawable; 4 | 5 | import com.android.launcher3.icons.clock.CustomClock; 6 | 7 | public interface IconResolver { 8 | boolean isCalendar(); 9 | 10 | boolean isClock(); 11 | 12 | CustomClock.Metadata clockData(); 13 | 14 | /** 15 | * Resolves an external icon for a given density. 16 | * @param iconDpi Positive integer. If it is non-positive the full scale drawable is returned. 17 | * @param fallback Method to load the drawable when resolving using the override fails. 18 | * @return Loaded drawable, or fallback drawable when resolving fails. 19 | */ 20 | Drawable getIcon(int iconDpi, DefaultDrawableProvider fallback); 21 | 22 | interface DefaultDrawableProvider { 23 | Drawable get(); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /src/com/android/launcher3/util/ActivityLifecycleCallbacksAdapter.java: -------------------------------------------------------------------------------- 1 | package com.android.launcher3.util; 2 | 3 | import android.app.Activity; 4 | import android.app.Application.ActivityLifecycleCallbacks; 5 | import android.os.Bundle; 6 | 7 | public interface ActivityLifecycleCallbacksAdapter extends ActivityLifecycleCallbacks { 8 | 9 | default void onActivityCreated(Activity activity, Bundle bundle) { 10 | } 11 | 12 | default void onActivityDestroyed(Activity activity) { 13 | } 14 | 15 | default void onActivityPaused(Activity activity) { 16 | } 17 | 18 | default void onActivityResumed(Activity activity) { 19 | } 20 | 21 | default void onActivitySaveInstanceState(Activity activity, Bundle bundle) { 22 | } 23 | 24 | default void onActivityStarted(Activity activity) { 25 | } 26 | 27 | default void onActivityStopped(Activity activity) { 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/com/android/launcher3/widget/picker/OWNERS: -------------------------------------------------------------------------------- 1 | set noparent 2 | 3 | # Bug component: 1481801 4 | 5 | # People who can approve changes for submission 6 | # 7 | 8 | # Widget Picker OWNERS 9 | zakcohen@google.com 10 | shamalip@google.com 11 | wvk@google.com 12 | 13 | # Launcher OWNERS 14 | captaincole@google.com 15 | sunnygoyal@google.com 16 | 17 | -------------------------------------------------------------------------------- /src_plugins/README.md: -------------------------------------------------------------------------------- 1 | This directory contains plugin interfaces that launcher listens for and plugins implement. In other words, these are the hooks that specify what plugins launcher currently supports. 2 | 3 | Details about how to create a new plugin interface, or to use existing interfaces to write a plugin can be found at go/gnl/plugins. 4 | -------------------------------------------------------------------------------- /src_plugins/com/android/systemui/plugins/FirstScreenWidget.java: -------------------------------------------------------------------------------- 1 | package com.android.systemui.plugins; 2 | 3 | import android.view.ViewGroup; 4 | import com.android.systemui.plugins.annotations.ProvidesInterface; 5 | 6 | /** 7 | * Implement this interface to wrap the widget on the first home screen, e.g. to add new content. 8 | */ 9 | @ProvidesInterface(action = FirstScreenWidget.ACTION, version = FirstScreenWidget.VERSION) 10 | public interface FirstScreenWidget extends Plugin { 11 | String ACTION = "com.android.systemui.action.PLUGIN_FIRST_SCREEN_WIDGET"; 12 | int VERSION = 1; 13 | 14 | void onWidgetUpdated(ViewGroup widgetView); 15 | } 16 | -------------------------------------------------------------------------------- /src_plugins/com/android/systemui/plugins/HotseatPlugin.java: -------------------------------------------------------------------------------- 1 | package com.android.systemui.plugins; 2 | 3 | import android.view.View; 4 | import android.view.ViewGroup; 5 | 6 | import com.android.systemui.plugins.annotations.ProvidesInterface; 7 | 8 | /** 9 | * Implement this plugin interface to add a sub-view in the Hotseat. 10 | */ 11 | @ProvidesInterface(action = HotseatPlugin.ACTION, version = HotseatPlugin.VERSION) 12 | public interface HotseatPlugin extends Plugin { 13 | String ACTION = "com.android.systemui.action.PLUGIN_HOTSEAT"; 14 | int VERSION = 1; 15 | 16 | /** 17 | * Creates a plugin view which will be added to the Hotseat. 18 | */ 19 | View createView(ViewGroup parent); 20 | } 21 | -------------------------------------------------------------------------------- /tests/OWNERS: -------------------------------------------------------------------------------- 1 | # Bug component: 164335 2 | vadimt@google.com 3 | sunnygoyal@google.com 4 | winsonc@google.com 5 | hyunyoungs@google.com 6 | -------------------------------------------------------------------------------- /tests/assets/databases/BackupAndRestore/launcher.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/assets/databases/BackupAndRestore/launcher.db -------------------------------------------------------------------------------- /tests/assets/databases/BackupAndRestore/launcher_3_by_3.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/assets/databases/BackupAndRestore/launcher_3_by_3.db -------------------------------------------------------------------------------- /tests/assets/databases/BackupAndRestore/launcher_4_by_4.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/assets/databases/BackupAndRestore/launcher_4_by_4.db -------------------------------------------------------------------------------- /tests/assets/databases/BackupAndRestore/launcher_4_by_5.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/assets/databases/BackupAndRestore/launcher_4_by_5.db -------------------------------------------------------------------------------- /tests/assets/databases/GridMigrationTest/flagged_result5x5to5x8.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/assets/databases/GridMigrationTest/flagged_result5x5to5x8.db -------------------------------------------------------------------------------- /tests/assets/databases/GridMigrationTest/result5x5to3x3.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/assets/databases/GridMigrationTest/result5x5to3x3.db -------------------------------------------------------------------------------- /tests/assets/databases/GridMigrationTest/result5x5to4x7.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/assets/databases/GridMigrationTest/result5x5to4x7.db -------------------------------------------------------------------------------- /tests/assets/databases/GridMigrationTest/result5x5to5x8.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/assets/databases/GridMigrationTest/result5x5to5x8.db -------------------------------------------------------------------------------- /tests/assets/databases/GridMigrationTest/test_launcher.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/assets/databases/GridMigrationTest/test_launcher.db -------------------------------------------------------------------------------- /tests/config/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=NEWEST_SDK 2 | -------------------------------------------------------------------------------- /tests/multivalentTests/dummy_app/res/mipmap-xxhdpi/ic_launcher1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/multivalentTests/dummy_app/res/mipmap-xxhdpi/ic_launcher1.png -------------------------------------------------------------------------------- /tests/multivalentTests/dummy_app/res/mipmap-xxhdpi/ic_launcher2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/multivalentTests/dummy_app/res/mipmap-xxhdpi/ic_launcher2.png -------------------------------------------------------------------------------- /tests/multivalentTests/dummy_app/res/mipmap-xxhdpi/icon_back_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/multivalentTests/dummy_app/res/mipmap-xxhdpi/icon_back_1.png -------------------------------------------------------------------------------- /tests/multivalentTests/dummy_app/res/mipmap-xxhdpi/icon_fore_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/multivalentTests/dummy_app/res/mipmap-xxhdpi/icon_fore_1.png -------------------------------------------------------------------------------- /tests/multivalentTests/dummy_app/res/mipmap-xxxhdpi/ic_launcher1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/multivalentTests/dummy_app/res/mipmap-xxxhdpi/ic_launcher1.png -------------------------------------------------------------------------------- /tests/multivalentTests/dummy_app/res/mipmap-xxxhdpi/ic_launcher2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/multivalentTests/dummy_app/res/mipmap-xxxhdpi/ic_launcher2.png -------------------------------------------------------------------------------- /tests/multivalentTests/dummy_app/res/mipmap-xxxhdpi/icon_back_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/multivalentTests/dummy_app/res/mipmap-xxxhdpi/icon_back_1.png -------------------------------------------------------------------------------- /tests/multivalentTests/dummy_app/res/mipmap-xxxhdpi/icon_fore_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/multivalentTests/dummy_app/res/mipmap-xxxhdpi/icon_fore_1.png -------------------------------------------------------------------------------- /tests/multivalentTests/dummy_app/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #455A64 4 | -------------------------------------------------------------------------------- /tests/multivalentTests/shared/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /tests/multivalentTests/shared/com/android/launcher3/testing/OWNERS: -------------------------------------------------------------------------------- 1 | vadimt@google.com 2 | sunnygoyal@google.com 3 | winsonc@google.com 4 | hyunyoungs@google.com 5 | mateuszc@google.com -------------------------------------------------------------------------------- /tests/multivalentTests/src/com/android/launcher3/widget/picker/OWNERS: -------------------------------------------------------------------------------- 1 | set noparent 2 | 3 | # Bug component: 1481801 4 | # People who can approve changes for submission 5 | # 6 | 7 | # Widget Picker OWNERS 8 | zakcohen@google.com 9 | shamalip@google.com 10 | wvk@google.com 11 | 12 | # For Tests 13 | vadimt@google.com 14 | 15 | # Launcher OWNERS 16 | captaincole@google.com 17 | sunnygoyal@google.com 18 | 19 | -------------------------------------------------------------------------------- /tests/multivalentTestsForDevice: -------------------------------------------------------------------------------- 1 | multivalentTests -------------------------------------------------------------------------------- /tests/res/layout/test_layout_appwidget_blue.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/res/layout/test_layout_appwidget_red.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/res/layout/test_layout_appwidget_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 14 | -------------------------------------------------------------------------------- /tests/res/layout/test_layout_widget_list.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 14 | 15 | 20 | -------------------------------------------------------------------------------- /tests/res/raw/aardwolf_dummy_app.apk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DerpFest-AOSP/packages_apps_DerpLauncher/b6909617626ca9042fd3112a5a034acc40861c75/tests/res/raw/aardwolf_dummy_app.apk -------------------------------------------------------------------------------- /tests/res/raw/db_schema_v10.json: -------------------------------------------------------------------------------- 1 | { 2 | "version" : 10, 3 | "downgrade_to_9" : [] 4 | } -------------------------------------------------------------------------------- /tests/res/raw/reorder_algorithm_test.txt: -------------------------------------------------------------------------------- 1 | arguments: 5 6 normal 2 | board: 6x5 3 | xxxxx- 4 | ------ 5 | ------ 6 | ---3-- 7 | ---3-- 8 | ---3-- 9 | # this is a comment -------------------------------------------------------------------------------- /tests/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Shortcut 1 4 | Shortcut 2 5 | Shortcut 3 6 | Shortcut 4 7 | 8 | -------------------------------------------------------------------------------- /tests/res/xml/appwidget_dynamic_colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | -------------------------------------------------------------------------------- /tests/res/xml/appwidget_hidden.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | -------------------------------------------------------------------------------- /tests/res/xml/appwidget_no_config.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | -------------------------------------------------------------------------------- /tests/res/xml/appwidget_no_config_large.xml: -------------------------------------------------------------------------------- 1 | 2 | 15 | -------------------------------------------------------------------------------- /tests/res/xml/appwidget_with_config.xml: -------------------------------------------------------------------------------- 1 | 2 | 12 | -------------------------------------------------------------------------------- /tests/shared/com/android/launcher3/testing/OWNERS: -------------------------------------------------------------------------------- 1 | vadimt@google.com 2 | sunnygoyal@google.com 3 | winsonc@google.com 4 | hyunyoungs@google.com 5 | -------------------------------------------------------------------------------- /tests/src/com/android/launcher3/widget/picker/OWNERS: -------------------------------------------------------------------------------- 1 | set noparent 2 | 3 | # Bug component: 1481801 4 | # People who can approve changes for submission 5 | # 6 | 7 | # Widget Picker OWNERS 8 | zakcohen@google.com 9 | shamalip@google.com 10 | wvk@google.com 11 | 12 | # For Tests 13 | vadimt@google.com 14 | 15 | # Launcher OWNERS 16 | captaincole@google.com 17 | sunnygoyal@google.com 18 | 19 | -------------------------------------------------------------------------------- /tests/tapl/README: -------------------------------------------------------------------------------- 1 | http://go/tapl 2 | -------------------------------------------------------------------------------- /tools/checkstyle_suppression.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | --------------------------------------------------------------------------------