1. setClipChildren(false) for WidgetFullSheet and content view during animation
2. setClipToOutline(true) for WidgetsRecyclerView and provide ViewOutlineProvider to expand bottom by 5% of height
3. Override calculateExtraLayoutSpace() for ScrollableLayoutManager
4. Manually modify AbstractSlideInView#mContent's background drawable during scale animation
bug: b/260956481
Test: manual
Change-Id: Ic391639de887cf4a70bc4965dc0b1fd9bc12dd2c
Check the size of the scrim and draw on the bottom of AllApps and Widgets.
Add a padding to the bottom of AllApps and Widgets so content is above the scrim.
Change the color of nav buttons for better accessibility.
Correct width of the Widgets sheets to be the same as AllApps sheet.
Fixes: 221107977
Fixes: 214215594
Test: manual, HSV and Window
Change-Id: Ib7510ffcd80231de7fefcdef65b422174dd74593
This is to show them in ranking order sent by aiai.
Bug: b/201079509
Test: Added unit test in WidgetsTableUtilTest
Change-Id: I366ecaee8bc157aca185f633462d95fbd1dd180b
> All previews are generated on demand when the corresponding
header expands
> Using ItemAnimator to animate layout changes when preview loads
Bug: 196238313
Test: Manual
Change-Id: I0cb859c8443c2c536399e4063f58baecfc7416ad
Shortcut size should be the size of all apps icon + padding
Test: Check shortcuts and widgets are shown without crash in the
following surfaces with display & font set to largest and
display cutout enabled. Repeat the same test with normal
display setting and no cutout.
1. Full widgets picker
2. Bottom widgets picker
3. Pin widget dialog
Fix: 193422438
Change-Id: Ibfebf94e92eed5e9cd1dd4196d98823b0e4dda6b
picker
Fix: 192661517
Test: check widgets are fit correctly in both full & bottom widgets
picker in portrait and landscape in different grid settings.
Change-Id: Ic1b0589b7ccf62ff1ec1fd5713b4249ba58246a5
Test: manual
(1) Upgrading to new DB version is successful (no errors thrown in logcat)
(2) Widgets that were added with the old DB version have CONTAINER_UNKNOWN as their source container
(3) Widgets that are added with the new DB version still log source container after reboot
Bug: 185778648
Change-Id: Iaa38f0be6bc4cb0d29842f9a2ea0d08de000c930
Bug: 191644950
Test: 1. Open the full widget picker. Observe the clock widgets'
previews are shown properly. Then, rotate the screen and
observe the clock widgets' previews are shown properly.
2. Open the bottom widgets picker for clock. Observe the
clock widgets' previews are shown properly. Then, rotate
the screen and observe the clock widgets' previews are shown
properly.
3. Repeat 1, 2 after changing the system navigation from button
to gesture.
Change-Id: I564fc2ce0baf3103ae77499380ad69ec38ac6930
Bug: In onMeasure, we calculate the number of spans that can be fit
horizontally. If the number of spans has changed, we re-organize
widgets shown in the table. However, after that, we didn't measure
WidgetsBottomPicker and its children again. As a result, the newly
added widget previews' dimensions are never measured.
Test: Long press clock app and then click widgets. Rotates the screen
and observe widgets correctly shown.
Fix: 191644950
Change-Id: Iae94fba5b137807483e061d785b18d59defb013e
Show Arrow education tip on WidgetsBottomSheet. This tip is shown only
once either in widgets full sheet or bottom sheet.
Test: Tested manually
Bug: 185354491
Change-Id: I6d770ed0906a5cb0f5bcfe6ae0cd327b790cf164
Pin widget sheet should open from bottom up and close on drag down.
Behaviour with navigation bar is similar to that of widgets bottom sheet.
Add a drag layer and reuse AbstractSlideInView for open-close
animation.
Test: Tested manually- opening, closing through dragging/ cancel button/
back button. Adding widget to screen by dragging/ add to home screen
button.
Bug: 186124244
Change-Id: I4b77d5bdd4ed1689b651847dfed69d19cafa7456
Test: Go to contact bottom widgets picker. No collapse handle is
shown because the content isn't scrollable. Go to Google calendar
bottom widget picker. Collapse handle is hown because the content
is scrollable.
Bug: 185134663
Change-Id: Ic6109c055a072aa1cf3521f829833fd5f4cece0f
Reset the inset upon orientation change
Test: Open bottom widgets picker. Rotate the screen from portrait
to landscape and then back to portrait. Observe the correct
inset is set.
Bug: 183601302
Change-Id: I88432a49b2601df843fe33911fd7acdde66d06c4
Popup container shouldn't intercept the scroll event if its child
scroll view isn't scrolled to the top yet.
Test: manual
Bug: 183599207
Change-Id: I434ba5e91b154e9862f22c08cd01c9d459e6707b
Only use the "app name" instead of "app name widgets" as title
Remove "Touch & hold to move a widget" subtitle.
Test: manual
Bug: 179797520
Change-Id: I7a5954af73aa5b480096e93ade3520cef6c93f17
The fixes are:
1. For widgets shown in TableRow, aligns them center vertically.
This is useful when widgets of different height are shown in
the same row.
2. Remove background color from WidgetCell
3. Re-enable swipe in FullWidgetsSheet
4. Use the WidgetCell image as the single & long press area because
1. Previews are now scaled to their default size. The touch area
should already be larger for widgets that are bigger than 2.4
cells
2. WidgetCells also render description. If the user long press the
description area, the drag view will not align in the middle of
the user touch / drag area.
Test: Drag-n-drop widgets from FullWidgetsSheet, BottomWidgetsSheet
and pin widget flow.
In FullWidgetsSheet, swipe left and right to switch work /
personal tab.
Video: https://drive.google.com/file/d/1Ur7PwF1a7iwGGRTZczfc0BSVu-Ta6-Vm/view?usp=sharing
Bug: 179797520
Change-Id: I6fe4bc88d1e1b35b1819d8d7f046105f5ed27043
1. Show widget previews in their expected cell sizes.
2. Update the bottom picker to use a table layout rather than
a horizontal scrollbar.
3. Move the title and cell size description to the bottom of
the preview.
Test: Run AddConfigWidgetTest
Manually open full and bottom widgets picker and observe
widget previews.
Video: https://drive.google.com/file/d/1K8A8hK5B4FgPTsX3cb-Yt4a_VjI0pk-w/view?usp=sharing
Bug: 179797520
Change-Id: I938612cb2e2477ce4a3a2d6c8891a0a36fc0978c
Video: https://drive.google.com/file/d/1gRE0axaq6tm3R_gjSon0RR5lC8HCmwee/view?usp=sharing
Test: Install a sample app which provides a preview layout.
Go to full widgets sheet to observe widget previews are correctly
displayed for bitmap previews, layout previews and placeholder
previews. Repeat the same for bottom widgets picker.
Pin a widget from a sample app which provide a custom RemoteViews
preview, observe the custom RemoteViews is correctly rendered.
Bug: 179797520
Change-Id: I2ccd1f77b54a2430d842ee25349fa6e54b9159dc
Using PendingAnimation for animation builder.
This will allow us to easily add SpringAnimation to stateAnimation
Change-Id: I8d88489a5da6fc85747ef9be7c13858b441cd28a
More specifically, any window (e.g. qsb search) or AbstractFloatingView.
NavBarToHomeTouchController now implements TouchController directly instead
of AbstractStateChangeTouchController, as it not only dealing with
launcher states. This makes it easier to override intercept logic to
handle cases like not having window focus, for example.
AbstractFloatingViews can createHintCloseAnim() to play an animation
hinting that it is about to be closed by swiping up. Widgets sheets use
this to pull back similar to the all apps transition to home.
Bug: 129976669
Change-Id: Ie157b978d9f1ee36d5fd32cea72ec02ce40878c0
> Using common logic for announcing a floating view for widgets and folders
Bug: 79091095
Bug: 79748886
Change-Id: Ibb3fe48e68e724f50d69f51a03d3b35ad0baf625
> Instead of views, using a custom class to draw the color scrims
> All-apps has full screen UI
> Quickstep does not have search box in landscape
Bug: 73085356
Change-Id: I360a78a2ade0134daad29fe712796cd39a381fbb
> Removing Widgets and related states
> Fixing different durations being used when opening/closing all-apps
> Removing some unnecessary object allocations when changing state without animation
> Differentiating widget bootm sheel and full sheet in logs
Bug: 67678570
Change-Id: Ic169528736d04ee0b38564b4f96595ba066eabda
> The widget panel is only inflated when needed
> Using the swipe up/down interaction for widgets tray
> Removing additional view wrappers from all-apps
> Widget tray is preserved across activity recreation
> Launcher no longer has WIDGET state, the actual code around
the states will be removed in a follow-up cl
Bug: 67678570
Bug: 67585158
Change-Id: Ia29a7c33ec81e6c53cc24e2906b7022b6f41755b
even when the touch is started from outside the panel
Removing various instanceOf checks in onNewIntent and onBackPress
and moving all the corresponding logging in the FloatingView
This simplifies handling of panel specific log and avoids
missing a particular panel type in the if-else statement.
Bug: 64751884
Bug: 64751923
Change-Id: I98f5aae18560a64be73c9efcf495479740d49a00
Reusing the one behind all apps caused problems when
opening widgets sheets from all apps.
Bug: 64344341
Change-Id: Ia964d8456645c78614f94693f9538dbac4f566a0
> Refactoring SwipeDetector to both allow vertical and horizontal swipes
> Using SwipeDetector and common overscroll effect for notification swipes
instead of a separate logic
Change-Id: Ib706ee179811ade59ddb68184e1c202365d147c4