This was previously the case, but I think I mistakenly updated this
to include phones with the all_apps_sheet_for_handheld flag at some
point. However, there was also some broken logic with the panel bounds
on phones. panel.getLeft() would be 0 because that's relative to the
container, so we need to do getLeft() + panel.getLeft().
Landscape (camera on left): https://hsv.googleplex.com/5035787895701504
Seascape (camera on right): https://hsv.googleplex.com/6210562886205440
Portrait: https://hsv.googleplex.com/6563945312681984
Tablet: https://hsv.googleplex.com/6704696994562048
Bug: 419235232
Test: See HSVs above compared to before images in the bug
Flag: com.android.launcher3.all_apps_sheet_for_handheld
Change-Id: Id8b6f3367ee94ef22cb917e00518e843553b42d8
To respect current multi-window mode policies for non-resizeable activities, we should hide this option on small screens.
The bubble option will continue to show on large screens (unfolded Foldables and Tablets) but not on small screens (folded Foldables and Phones) for non-resizeable apps.
Bug: 411558731
Test: Manual - Enable the flag and try to bubble a shortcut via the longpress menu on launcher --> Does not show bubble option for non-resizeable apps on small screen but shows otherwise.
Flag: com.android.wm.shell.enable_create_any_bubble
Change-Id: I2546b1002c92e309b8f7f439480e2c87eaf951c4
Adds AllAppsSpec support, that can configure all apps height so the
container top aligns with the top of a row in the workspace grid.
Bug: 30153091
Flag: com.android.launcher3.enable_scalability_for_desktop_experience
Test: Manual
Change-Id: Ia5c939c7d3b6fed29a9c2f47233348a5e55b570f
Adds `maxLineCount` attribute to CellSpec. The attribute indicates the max
number of lines of text the cell was speced to support. It's used to:
* enable two-line labels in `BubbleTextViews` for workspace (including
folder children) items
* Update cell dimension calculation to inform cell vertical padding
When calculating cell content size the icon text size will be included
`maxLineCount` times, so the cell content gets centered as if it
contains `maxLineCount` lines of text. That way the icon position will
be consistent between cells with text that fits into one line, and cells
that contain two lines of text.
Adds `maxLineCountMatchesWorkspace` attribute to specify that the cell
should inherit `maxLineCount` from workspace cell spec.
Bug: 30153091
Flag: com.android.launcher3.enable_scalability_for_desktop_experience
Test: Manual
Change-Id: I150a62f427a0ad755a4746a736d9846d3bea4d2e
When tapping the nav handle from running app, OtherActivityInputConsumer will start the recents window through TaskAnimationManager. The recents window would then typically be closed through the StateManager, however since the state isn't changing, then RecentsWindowManger never actually gets any signal to close the recents window. Added a new callback to fix this flow.
Flag: com.android.launcher3.enable_launcher_overview_in_window
Flag: com.android.launcher3.enable_fallback_overview_in_window
Bug: 377678992
Test: pre/post submit tests. tapped nev handle from a runnign app
Change-Id: If1fe7de195a9a8a98c72629c7904d469a5768d7f
Previously we updated many other things, such as the buttons and RV
decorators, but the latest UX guidance is to use the same colors
when blurs are enabled or disabled, other than the panel color.
Note: When Overview blur is enabled, the activity is recreated and
this change is redundant. So this is only done if that flag is off.
Demo with home and taskbar all apps (toggling blur with adb):
https://drive.google.com/file/d/1HzveExKpAERxMVdu7JXQSYeGRwaBNR4_/view?usp=sharing&resourcekey=0-l-dGWOS6aCQjj2KStvwySA
Fix: 413229346
Flag: com.android.launcher3.all_apps_blur
Test: Manual with battery saver and `adb shell wm disable-blur 1` / 0
Change-Id: I55c9b46f0999c574c29a6ac7ae557b1e30d91d15
* changes:
[5/5] Removed unused IPC call.
[4/5] Cover DragToBubbleController with tests.
[3/5] Implement DragToBubbleController.
[2/5] Hook up DragToBubbleController and prepare launcher to use it.
[1/5] Added DragToBubbleController
I suspect the animation may be called while a current animation running. Should be using the mAnimatorSet pattern anyways.
bug: 414369872
Test: manually -presubmit ensured current animation doesn't change
Flag: EXEMPT bug fix
Change-Id: Ieeda50026cda656579c60d92f35f085a169eb18a
This is so, we can use it with compose, and let caller pass the needed
dependencies. May also convert to dagger in
followup
Bug: 408283627
Flag: EXEMPT BUGFIX
Test: N/A
Change-Id: I9b04011ec2592df3bd02bd74ec4889eb05928e7f
Updated DragController logic to set touch event XY coordinates if there
is no view returned by the DropTarget. Added wait call for all drop
targets views removed to the
TaskbarActivityContext#onDragEndOrViewRemoved() method.
Bug: 411506181
Flag: com.android.wm.shell.enable_create_any_bubble
Test: build launcher
Change-Id: Ie97b08f22ae8dc34bd9f4e3738704e4fc90345bb
- When battery saver changes, WallpaperThemeManager always recreate activity to reapply theme base on wallpaper color hint changes
- Battery saver change can also result in light/dark theme changes, for which WallpaperThemeManager also recreate activity to apply theme changes
- As a result, it'll be much simpler to recreate activity whenever isBlurEnabled changes
- Exposed recreateToUpdateTheme API from WallpaperThemeManager to achieved this
- Greatly simplified Overview styling to read from styles
Reland fix:
- Removed mBlursEnabled in BaseDepthController, and only use `mCrossWindowBlursEnabled` to control swapping between blur style and fallback style
- Temporary variables like `mPauseBlurs` and `hasOpaqueBg` should only affect if blurs are applied, but not result in swapping of blur style, otherwise this cause unnecessary redraw or activity recreate
Reason for revert: reland
Reverted changes: /q/submissionid:33581402-revert-33554447-b/414789280-CTVRJLPLRT
Bug: 414789280
Test: manually toggling battery saver and light/dark theme and WallpaperThemeManagerTest
Test: PressBackFromLaunchedApp.testPressBackFromLaunchedApp
Flag: EXEMPT bugfix
Change-Id: Iac2b0c00811e0e79684da0cf77df76a120c1272a
This event helps us monitor via logcat when a login (after a screen unlock)
event ends.
Bug: 417839016
Test: manually unlock screen and verify the log shows up when ready
Change-Id: I051bf3d5e77b363bcfe37f995146a82e6db69a94
Flag: EXEMPT log only update
Fixes an issue where leaving All Apps did not reverse interpolators,
causing blur to disappear too quickly.
In addition, the logic in BaseDepthController is updated to ensure
100% blur is applied upon reaching max depth. Previously we were
multiplying the depth by 3, but the intention was to reach 1 when
depth reached 0.3. So the blur was only at 90% the intended value in
All Apps (which has a depth of 0.3).
Finally, related to the 100% blur, we correctly end early wakeup
when that is reached, which means we also start it again when the
blur starts changing back towards 0 again. This spins up the GPU,
CPU, and SurfaceFlinger and should help avoid missed frames.
In order to avoid negative performance hits, reducing the max blur
radius from 34dp to 30dp, so that it matches what we were hitting
previously. (The full 34dp unfortunately does cause some regressions).
Bug: 415247657
Test: Open all apps, drag back down, view animation. Also try other
Launcher state transitions.
Flag: com.android.launcher3.all_apps_blur
Change-Id: Ia5daa07525ac96c0597a25bb4320348f27a4ee56
The reason is that there is extra translation applied to account for the all apps moving. Rather we should only offset any translation when -windowInsets.bottom < 0.
bug: 416323265
Test: videos in bug
Flag: EXEMPT bug fix
Change-Id: I3565d3a2ee09f545c0d01aa0ce3da8f80a017308
- Only IDP is updated when displayInfo changes but DPs of CD don't. As
a result taskbars on CD end up reusing the old config DPs. For
example, when user changes display size, displayInfo updates but
taskbars on CD continue using old DP resources.
- So, update DP for CD when DisplayInfo changes.
- Also added using supplied context with dpToPx for calculating radius
for taskbar roundedness at the ends.
Fix: 414933860
Test: m
Flag: com.android.window.flags.enable_taskbar_connected_displays
Change-Id: I7d8ed3c5ba69b755a58d3462a5da9ed7fd404198
When previewing grid, actual widgets are updated. Revert grid changes
when preview binder dies to restore original widget layout in Launcher.
Flag: com.android.systemui.shared.new_customization_picker_ui
Bug: 408934352
Test: manually verified
Change-Id: I18f63fd1760b1188306defd2a8315fe5765dab01
Revert submission 33554447-b/414789280
Reason for revert: Droidmonitor created revert due to b/417614196. Will be verifying through ABTD before submission.
Fix: 417614196
Reverted changes: /q/submissionid:33554447-b/414789280
Change-Id: Idf349cd39a3f86910f597f0f9ab4d46fb03e945c
In some cases, the bitmap that is needed for FastBitmapDrawable
can fail to render. Return a placeholder in that case.
Bug: 416779946
Flag: EXEMPT Bug fix
Test: manual
Change-Id: I188a820157f4ac43b8a13a99f3ac2c2348afbc13
This variable is used during layout of the psb in hotSeat.java. It is specifically
applied to calculate the qsbOffsetY()
bug: 413719316
Test: manually presubmit
Flag: com.google.android.apps.nexuslauncher.psb_aim_reskin
Change-Id: I9b4bd244a39de61e7ef23dbf477e1808f30f5401
- When battery saver changes, WallpaperThemeManager always recreate activity to reapply theme base on wallpaper color hint changes
- Battery saver change can also result in light/dark theme changes, for which WallpaperThemeManager also recreate activity to apply theme changes
- As a result, it'll be much simpler to recreate activity whenever isBlurEnabled changes
- Exposed recreateToUpdateTheme API from WallpaperThemeManager to achieved this
- Greatly simplified Overview styling to read from styles
Bug: 414789280
Test: manually toggling battery saver and light/dark theme and WallpaperThemeManagerTest
Flag: com.android.launcher3.enable_overview_background_wallpaper_blur
Change-Id: I90ad724867283fe3c62a9073a6e072491533f774
So we have a central place to replace it with opening
WidgetPickerActivity behind a flag.
Bug: 408283627
Flag: EXEMPT minor refactor
Test: Existing tests
Change-Id: I1c26c3faec8549fd5c3057b4c26ab2ab109f6f0c
Dragging on launcher background on external display didn't do anything
because there was no StatusBarTouchController. Now by adding it to
SecondaryDragLayer, we can open the shade on external display via
launcher drag
Bug: 362719719
Bug: 416511740
Test: manual testing
Flag: EXEMPT refactor only
Change-Id: I1a587fe85bf2e7c6f212b3358646d5d282019eef