We didn't bother to center the view because it just one view that
matches the parent view, the problem is that the peview view is
bigger than it's parent, this is by design so that the preview
matches the full screen and looks the same as the real Launcher.
We then scale the preview view to match the visualization space.
The problem is that the logic that position a view in FrameLayot
doesn't account for children views bigger than itself so in
RTL the view is not "centered" or it doesn't start where we expect
it to start. By using gravity = CENTER it does account correclty
for bigger views.
Fix: 429081966
Test: GridPreviewTest
Flag: EXEMPT bug fix
(cherry picked from commit 6624691c50b29dabb706e52d5bd09d88b257015b)
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:e5e32f0ef771417b9bf29a71d6d7fd7b47067dd1)
Merged-In: I1e75087ca68dd3180b0a9f11d9403eafb892391a
Change-Id: I1e75087ca68dd3180b0a9f11d9403eafb892391a
This was causing a bug where simple mode would trigger loadertask to
run, which then led to other errors since it ran prematurely
Bug: 417395120
Test: Manual
Flag: EXEMPT bugfix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:c98d20425bf1c4e5d3a1935f11802a16e2d0aa6f)
Merged-In: Ib73e3d7849c5b3d887cbca0fbc8a386ed553f751
Change-Id: Ib73e3d7849c5b3d887cbca0fbc8a386ed553f751
We use to create a "TaskbarUiThread" for each new taskbar context but forget to destroy the thread.
We fix it by creating a static thread named as "TASKBAR_UI_THREAD"
Fix: TBD
Flag: com.android.launcher3.enable_taskbar_ui_thread
Test: manual
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:66e79baa21573579802ceb7e283c5bb5954a4365)
Merged-In: Idd54c76c39b32a2765c64da1e519c9faa79dac75
Change-Id: Idd54c76c39b32a2765c64da1e519c9faa79dac75
This helps avoid an issue where hotseat is stuck invisible when home screen is revealed.
Also resets workspace visibility based off of end animation alpha, just in case it is affected.
Bug: 421709269
Flag: EXEMPT bugfix
Test: manually with ag/34243620
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:9b24f8a8e4e26bf571ef87c80cd3cdf24248a783)
Merged-In: I5e325a844a66799b7d4c4934f90bf04dd6b53607
Change-Id: I5e325a844a66799b7d4c4934f90bf04dd6b53607
ag/33878089 introduces a regression where we forget to check same flag to unregister listeners.
Fix: 428015446
Flag: EXEMPT - ENABLE_SYS_DECORS_CALLBACKS_VIA_WM && lse_desktop_experience.ENABLE_DISPLAY_CONTENT_MODE_MANAGEMENT
Test: presubmit
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:ff2671dba1e7acf9b7b5637f56059efcd010e695)
Merged-In: I25bde5aeec427f4b43e5218be34fba4e26bd5f55
Change-Id: I25bde5aeec427f4b43e5218be34fba4e26bd5f55
Previously broken flow:
- Open All Apps on inner screen
- Drawing controller is set to the AllApps container
- Close All Apps (resting state becomes NORMAL)
- Fold, unlock
- Because we are still in NORMAL, the drawing controller was not
updated. Therefore when the ScrimView draws (alongside all other
views due to Launcher starting), it asks the inner screen's All
Apps container to render its panel on the scrim.
The fix is to remove the drawing controller when All Apps resets,
thereby avoiding trying to draw on the scrim in the first place. The
drawing controller is updated upon the next transition to All Apps,
as usual.
Bug: 426397329
Test: Manual: https://drive.google.com/file/d/1l9qAIkrgFalcO5DABOEIRX1Po3POYzab/view?usp=sharing&resourcekey=0-ccU6q2fbYE6y87ehIKdbEQ
Flag: com.android.launcher3.all_apps_sheet_for_handheld
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:288006fe11bdaec4bd229999619dd7097806620a)
Merged-In: I0a4872e6bd668583d08848a8b9c5f0f1389c4f0f
Change-Id: I0a4872e6bd668583d08848a8b9c5f0f1389c4f0f
> Previously the old renderer was destroed but was still being used until the new renderer was loading
Bug: 426034253
Flag: EXEMPT bugfix
Test: Manually using profiler, Presubmit
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:67fd6c8e17ae7df3b60a092de63b0ef1eb0ba9b1)
Merged-In: I291ea6737d4ed072eb04d007438709f9081f4075
Change-Id: I291ea6737d4ed072eb04d007438709f9081f4075
The problem: Currently, when users increases font size to fullest and also display size to fullest, taskbar icons goes beyond screen. The isssue is event worst when there is bubble bar present in the Taskbar. This is currently a problem with 3 button nav button.
The Solution: The solution is in two parts.
Part 1: figure out amount of icons we need to remove from hotseat for the taskbar icons to not got beyond screen and not collide with nav buttons or bubble bar.
Part 2: Once we figure out how many icon we need to not show in takbar which are present in the hotseat, we need to modify the takbar icon alignment controlled to modify alpha animation and eventually the visibility of those taksbar views. We also need to modify taskbar icon layout logic so that we don't take space for invisible taksbar icons and we layout next visible icon on the place of invisible icons.
Test: Manual, Presubmit
Bug: 412835965
Flag: EXEMPT bugfix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:8def3264e3f4fa3a2354dfa693751ea3d5f33f36)
Merged-In: I8dea948df09c0a86871a9ac649f312ecf281545a
Change-Id: I8dea948df09c0a86871a9ac649f312ecf281545a
Update TaskbarView logic to remove all apps divider when it's not
expected to show (if the taskbar is showing desktop tasks), instead of
just assuming it was never added. This handles an edge case where
`shouldShowDesktopTasks()` may return false initially for taskbar on
home screen, until home screen visibility as seen by taskbar controllers
is updated when transitioning out of desktop mode.
Bug: 416402113
Test: On desktop first device, disable
enable_desktop_taskbar_on_freeform_displays, go to desktop mode,
then minimize/close all desktop windows. On home screen, verify
taskbar is shown, and contains only pinned apps - no divider is
shown between all apps and pinned apps.
Flag: EXEMPT bugfix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:f10c3e9afe8aa866fe21c797a5aade262bd4fcdc)
Merged-In: I7bb419d87420575cebe0c332111797678b07d654
Change-Id: I7bb419d87420575cebe0c332111797678b07d654
Also, I moved some of the boolean expressions to a method in the
rotation handler to avoid repeating code and to make the expressions
more legible.
Bug: 401483343
Flag: com.android.launcher3.one_grid_specs
Test: RecentOrientedStateTest
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:0a7bf1db572262d3263f623a1a41fe75076858e4)
Merged-In: I84c1a6e90ede827fd93ec44c3937acaf45f02413
Change-Id: I84c1a6e90ede827fd93ec44c3937acaf45f02413
Partially reverts ag/33592869
- It seems that it was meant for close animation, however this value
is mainly used for open animation.
Bug: 424740625
Test: See demo
Flag: EXEMPT BUGFIX
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:ee94bdd219120e430e1a262729d9409615ef4130)
Merged-In: I574fc18919d58bc0be3529350ac29bcf8f42f9e4
Change-Id: I574fc18919d58bc0be3529350ac29bcf8f42f9e4
Clear mFloatingRotationButton from NavbarButtonsViewController#onDestroy()
Fix: 424253928
Test: manual - rotate screen in comet and verfiy no leaks
Flag: NONE - released code
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b693a10d6493556ef30d7011eee6804bd7890f89)
Merged-In: I43ef6bcf67e44e76eb17d80e0d996d2066f154e0
Change-Id: I43ef6bcf67e44e76eb17d80e0d996d2066f154e0
This is a forward fix of ag/33841218.
IllegalStateException is thrown because getResources() has already been
called in ContextThemeWrapper.applyOverrideConfiguration().
We should avoid getting configuration from ContextThemeWrapper, which
will generate ContextThemeWrapper#mResources and trigger
IllegalStateException from subsequent
ContextThemeWrapper#applyOverrideConfiguration().
Instead, we should get configuration from mPreviewContext which is
ContextWrapper.
Fix: 423802089
Flag: NONE - released code
Test: manual
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:0c218842940c0920b88c9eb2ac30ef76a16edf08)
Merged-In: Ic3d29d7bb2cbf3483e757e5a90ac8d8989adc613
Change-Id: Ic3d29d7bb2cbf3483e757e5a90ac8d8989adc613
- TaskSnapshot from onAnimationCanceled can be null, and our Kotlin assumes it's not and throws NullPointerException. Handle it gracefully instead.
- Even though onAnimationCanceled doesn't provide updated screenshot, we still have the screenshot taken on swipe up as backup to show
Fix: 413581605
Test: Manual (see steps in bug)
Flag: EXEMPT bug fix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:7eb6b3fa1557873423d2fc6c286103ef141a24ff)
Merged-In: Ic4aaa8e1a50a4e2a8b7b87baff5f2b1819a7e8ab
Change-Id: Ic4aaa8e1a50a4e2a8b7b87baff5f2b1819a7e8ab
* changes:
Widget Picker: Update the launcher integration to support shortcuts
Widget Picker: Update UI layer to support shortcuts
Widget Picker: Update data layer to support shortcuts
Updates drag and drop, tap to add and preview related code.
Bug: 370950552
Flag: com.android.launcher3.enable_widget_picker_refactor
Test: Drag and drop shortcuts on home screen
Change-Id: Iccfe329296dbf4b0770628e77df5cd9b42ac9b21
Updates the relevant references to read from the appropriate widget info
object.
Bug: 370950552
Flag: com.android.launcher3.enable_widget_picker_refactor
Test: Open picker for home screen and lockscreen hosts
Change-Id: I1b2a543b69686d859775618a406901591a32f555
Adds sealed class for widget info that can contain either appwidget info
or shortcut info.
Also kept the aosp config.xml empty to keep everything eligible for
featured
Bug: 370950552
Flag: com.android.launcher3.enable_widget_picker_refactor
Test: Open picker for homescreen and lockscreen hosts
Change-Id: Iceafc2c1234063b16421f90bf00cf96114e9870c