Widget size is deterministic based on device profile, so it can be
set during the loader itself. Any further changes are handled by
workspace
Bug: 318539160
Test: Verified inflated widgets have correct size
Flag: N/A
Change-Id: I84e803a5ccd49bcc6c2a19ab326f6bc1a3d9a5bd
Private profile shares Settings with the main user,
this change disable showing "Install to private"
long-press shortcut for Settings.
Bug: 316118005
Test: long press on Settings app
Flag: ACONFIG com.android.launcher3.Flags.enable_private_space_install_shortcut DEVELOPMENT
Change-Id: Iecc0bdf60879ce5c74288942d39bbb3add68fd9c
In its current state the WidgetPickerActivity only allows adding widget
items, so to match the state, updated it to show only widgets.
manual test - https://screen/cast/NDUxMjg1NjI0MTM0MDQxNnwxMzE4MzNhOS1mZg
Bug: 320495335
Test: atest Launcher3Tests
Flag: N/A
Change-Id: Ifa75f457219efef49e104efc428d369187db2710
Apply the extra top padding only if device is in portrait and aspect
ratio is beyond 1.5 to keep the original intent of avoiding showing
a single pane widget picker in super elongated form. In b/214215594,
a top padding was applied for w720, but in fold, it ended up showing
the picker only half way up. So, changed it to consider aspect ratio.
In b/315055849 the tablet portrait will use full width two pane picker,
and then, it will also not need this extra top padding. In that change,
we will use the flag to guard applying this extra padding.
See screen/cast/NTYwMjU1MzY4NDI5NTY4MHw3NDIxYzU0Mi1lNg
Test: WidgetPickerImageTest and Manual (screencast above)
Bug: 317013493
Flag: N/A
Change-Id: I90e0c416f0f05460960983588edf0068d99cd1a6
Adding logic to unlock private space and
scroll to the container after unlock event
is received by Launcher.
This change also moves pieces of Private Space
Animation to different classes, in order to make
it more robust.
Bug: 289024009
Test: atest PrivateProfileManagerTest
Flag: ACONFIG com.google.android.apps.nexuslauncher.inject_private_space_tile TEAMFOOD
Change-Id: Ica2fbc00ff3516ed5aca7fbbfc0bd2aa036a4cee
This removes duplicate logic for widget inflation.
Since the widget inflation can now happen during loader,
the restore logging can also be moved completely to the loader
Bug: 318539160
Test: atest TaplBinderTests
Flag: None
Change-Id: If9f336e7bf49ee7df121d7d9852b674d98124895
Not sure if this is considered brittle, but at this moment, the
BubbleTextView used for folder labels is not focusable, while the
one used for app labels is focusable.
Also add package name to the context logs to help debug similar
test failures in the future.
Fix: 319194153
Test: atest android.platform.test.scenario.google.OpenAppMicrobenchmark$1#testOpen
Flag: NA
Change-Id: Ibf88afdd6d3ef03b75ea44910b485e7e74e348b0
Right now, processWorkspaceItem is almost impossible to fully
understand. It is a behemoth of a method that handles everything
possibily related to processing a workspace item.
In order to make life easier for developers, it is being split into
smaller methods that deal with limited functionality each, and are
commented / named well. These can also be individually unit tested, so
developers don't have to use mock data anymore to test even the smallest
bit of functionality.
Bug: 318398886
Test: Manually verified that the workspace loading behavior still works
on device.
Flag: None, this is just a copy/paste refactor.
Change-Id: I040bce708cada5b29cf3488ddf37ccc8d7af8282
> Removing static mocks and using Sandbox context instead
> Removing inheritence in LauncherModel and converting LauncherApps.Callbacks
to a separate class. decMaker sometimes fails because of API changes in
LauncherApps.Callbacks
Bug: 319877828
Test: atest LoaderTaskTest
Flag: N/A
Change-Id: If78b5d83595627a355b284f52d887d75fef53014
This is necessary because the value of the read-write flag will not be updated in time for backup/restore.
Bug: 307527314
Test: compiles
Flag: ACONFIG ENABLE_LAUNCHER_BR_METRICS_FIXED TEAMFOOD
Change-Id: I67a1a820734d8881b3ed5be4a1f2f1556e6e4704