- Added uiMode in handled configChanges for QuickstepLauncher, NexusLauncherActivity
- RecentsActivity will be handled separately in b/382072029
- This avoids Launcher from being recreated when swithching from an app in driving mode (e.g. Maps), which causes massive jank
- Launcher layout is unaffected when driving mode changes, so a recreation is unnecessary
- When Light/dark mode changes, BaseActivity.updateTheme will still causes activity to be recreated. Launcher will mark a boolean in saved staete so next recreate will restore previous state even if state has FLAG_DISABLE_RESTORE (e.g. Overview), similar to the existing check that force restore when UI_MODE changes
Relanded changes: /q/submissionid:27627108-b/339747262
Fix: 339747262
Test: Swtich from driving mode app to another or home in 1p and 3p laucnher
Test: Switch light/dark mode and Launcher is updated correctly and stay in previous state
Flag: EXEMPT bugfix
Change-Id: I5a62b1bcd19eed9d232f30db94aa0e032f4541bd
The history displays the latest tokens played. Useful for testing and
debugging.
Test: presubmit
Flag: NONE MSDL playback is flagged case by case.
Bug: 377496684
Change-Id: I163889ade9fe4dee7f02459d2d9d81b94197bea1
When the flag is enabled, allow the BubbleTextView to draw a background
pill behind the app title. Also change the color of the text to properly
ensure contrast. The contrast pill is only enabled for workpace apps,
so attempt draw the pill only for DoubleShadowBubbleTextView elements.
Bug: 341217082
Flag: com.android.launcher3.enable_contrast_tiles
Test: Manual, visual change
Change-Id: Idce27bd8dfca4b525c762fcd0873562f31b45b8f
The implementation in this CL is no-op i.e. all widgets will be shown
Bug: 356127021
Flag: com.android.launcher3.enable_tiered_widgets_by_default_in_picker
Test: Verified with other child cls
Change-Id: I0a6f8973dc8ec58fd87d29b3f291b5e290ea988d
Pass correct default value -1 when getting RUNTIME_STATE_PENDING_REQUEST_CODE when it is not set.
This will avoid accidentally starting ProxyActivityStarter from Launcher#onCreate(), which will cause a flicker for post boot animation
Fix: 375308654
Flag: NONE - xml flag not supported
Test: manual
Change-Id: Ic3888508657b5b7aab37f6022768d53007bf9c00
Continued quick switch couldn't work using existing infrastructure until RecentsWindowManager could be properly tracked by ActivityTracker. Refactored ActivityTracker into ContextTracker to support this.
Also refactored ActivityInitListener into ContextInitListener to fit the updated pattern.
Flag: com.android.launcher3.enable_fallback_overview_in_window
Fixes: 366023051
Test: RecentsWindowSwipeHandlerTestCase; Attempted continued quick switch from home and launched app
Change-Id: Ic38ebf3611ef22fbfd1ddeb79d72d8a3621940a0
Based on the bug, it seems that onHandleConfigChange was not called via the perfetto trace. Here is the call order:
1) Loader Task is created
2) Loader task runs
3) Preinflation happens from setApps() in bindAllApplications() via ModelCallbacks.kt
4) When show long app names toggle happens: it eventually triggers an onHandleConfigurationChanged() which is traceable in perfetto.
5) After configChange, preinflation happens again.
In step 4) there is an early return that happens and makes it so it doesn't call the reinflation of views that happens in the mModel.rebindCallbacks().
When the force configUpdate happens upon toggle, reset the variable after it is done.
bug: 370121944
Test: presubmit/manually/perfetto in bug
Flag: NONE trying to fix edge case
Change-Id: Id0ba591bfe583b300cc241fcfc37db6dd5a85363
Remove extra screen & go to normal state only if widget
addition was complete. If a config activity was started, then
don't change to remove screen yet or go to normal state. Else,
QuickStepLauncher clears the existing activity open requests when
going to normal state. When animations are off, this led to config activity to never launch and hence, such widgets not being added.
Bug: 369422714
Test: Manual
Flag: EXEMPT BUGFIX
Change-Id: I4e7e29fd998a0cc5ca18a7a48b91a5b788a60a52
Added logic to stash the hotseat when on launcher home screen.
Bug: 280494203
Test: Manual:
http://recall/-/gx8ASgewUeUS3QYohfrd1J/fjfjUw296LRXUm9uYqXU4K
all tests in com.android.launcher3.taskbar
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I67b298831eaed9c549a2fae7dc5a0d9fae51f7c4
This allows better matching of items who do not have a fixed id
Bug: 364363493
Flag: EXEMPT bug fix
Test: Manual- Verified app launch and back animation
Change-Id: I4f9deba89399b89974686b64226b99f91a3d46be
Separate provider in ActivityContext and relevant implementations that
open widget picker
Bug: 353347512
Flag: EXEMPT BUGFIX
Test: Unit test
Change-Id: I55df3d9ce6ae9b7d0a310a8686b188618d229065
Fix: 336697780
Test: Manual testing, open widget picker on folded front screen and then unfold, the widget picker should be showing and the backgesture should work.
Flag: EXEMPT bugfix
Change-Id: Ie4a7bffbd9b24ba26826f825a7c66216f565952f
The windows back functionality with the
`enable_desktop_windowing_wallpaper_activity` flag enabled works as
expected and doesn't require changes in `#updateDisallowBack`.
- Added the `enable_desktop_windowing_wallpaper_activity` flag check in
`Launcher#updateDisallowBack`
- The early return statement will get removed after flag is fully rolled
out (b/333533253)
Bug: 330183377
Test: manual
Flag: com.android.window.flags.enable_desktop_windowing_wallpaper_activity
Change-Id: I2eaaa44da82da6cbdfe534793830d0f44c4668ba
Flag: NONE - abstraction with no logic changes.
Test: Built and ran locally, for launcher3 and third party launchers
Bug: 224595066
Change-Id: I9da15bdd649d3a20e98c6552bb9e9abaec72f97f
requestQuietMode API throws SecurityException in case its called
from a non-default Launcher app.
To mitigate this, we catch the exception and prompt the user
to set their default launcher to the current app.
Video(Pixel): https://photos.app.goo.gl/ni5X1c6vBbYW2JMJ9
Video(Pixel-aosp): https://photos.app.goo.gl/cYLJpTYW76Jnbonc9
Bug: 320446272
Test: Manual
Flag: NONE Bug fix tweak.
Change-Id: I6afb2ae85cabc038e1503e9c34eebd974c4f7a50
To fix the incorrect title information being spoken after a transition state ends, a new function named getTitle is introduced in the LauncherState. This function provides the correct title for the transition state. The default accessibility label is set to R.string.home_screen. All Apps and Overview states override the getTitle function to ensure the correct accessibility label for their respective states.
Fix: 265892510
Flag: EXEMPT bugfix
Test: Manual with Talkback. With Talkback enabled, navigate from App to Overview.
Change-Id: I96b820f310f8b778a149709bca687a5912386246
This is a follow-up of ag/26362927.
When it's in searching state, we only need to reset search instead of resetting everything.
Test: search something and scroll in AA+. Trigger AA+ by filing an intent (adb shell am start -n com.google.android.apps.nexuslauncher/.NexusLauncherActivity -a android.intent.action.ALL_APPS). Notice the search RV is reset and scroll to top.
Bug: 328505782
Flag: aconfig com.android.launcher3.enable_private_space nextfood
Change-Id: I9d1d4386077433a676c1f3b8e3614fb848284a88