This is eventually allow us to move all register to background thread
Also creating a single ScreenOn tracked which is used at multiple places
Bug: 264465756
Test: Verified on device
Change-Id: Ibadf9ca43218e578954420d97a733adfa0a94fc7
Here we improve the pagination visuals to follow the new design specs. We also polish and fix some issues with dot pagination in workspace.
Bug: 262741688
Test: Turn on flag SHOW_DOT_PAGINATION, and test pagination on workspace. Verify that it follows the specs linked in the bug
Change-Id: I626cdcf1f7392bcc88e9b4d6fd1df65246861445
If freeform tasks are shown, skip applying depth effect and scrim
changes. These cause the background to flicker while showing freeform
tasks and for example showing the transient taskbar.
Bug: 263264985
Test: swipe up to show transient taskbar, observe launcher background
does not blur or flicker to black
Change-Id: I5b10d0f0c7065e903cb761488367c02d7e31d8b2
Fix: 235358918
Test: Manual
1. Rebooted the device and verified that widgets are still updating properly
2. Changed the theme from dark to daylight, then from daylight back to dark and verified that widgets are working
3. Kept the device on for several days and verified that widgets are still updating
4. Turn on auto-rotate for the launcher, open any app then exit, verified that widgets will not vanish and reappear
5. Add & remove widgets from the screen, added widgets are still updating
Change-Id: I98ee902f7d16b47bd77626201a4fefc897ba17a0
Due to design changes, we are no longer going to use the changes guarded under the flag SHOW_DELIIGHTFUL_PAGINATION, so we remove the flag and the code that was guarded by that flag
Bug: 261904707
Test: verify flag SHOW_DELIGHTFUL_PAGINATION no longer exists and that the regular pagination works without issues after removing all this code
Change-Id: I244b88b98df0357aa99a325a11988e8248a03206
Desktop mode prototypes enable freeform tasks on top of launcher.
Launcher is still partially visible in the back which means that
launcher will disable back gesture for the freeform tasks.
When desktop mode prototype 1 or 2 is enabled, skip disabling the back
gesture on launcher.
Bug: 259280363
Test: manual, enable desktop mode and launch an app, try back gesture
from edge
Change-Id: I1d5eb81c7b28fb452c9566e358d77a5b2c19d450
Instead using a poll method similar to other touch controllers
Bug: 259447608
Test: Verified on device
Change-Id: I5c29c7c1b87acb668ea93e9f44fb685379de54fb
With keyboard sync, the dismissal is handled by the animator. Calling
hideKeyboard() on top of that causes the two signals to conflict with
each other, resulting in the visible flicker and extra delayed hiding
animation.
Fixes: 251185052
Test: manual, see videos in the bug
Change-Id: Ic12ad304ef9e4b6a51279ce18d6c09ba93bd59be
The wrapper class is created for further changes that will run the wrapped host in the background.
Test: N/A
Bug: 235358918
Change-Id: I9bd6fc2749c5d4a4d3391fb75d0c3ff1e13d17bf
Here we add dot pagination (the same as the one in folders) to the workspace.
Bug: 254769710
Test: Turn on the flag SHOW_DOT_PAGINATION and check out the workspace
Change-Id: Ia1e9ec78eae661aa5e7c37b2b2f1ded38b138ce8
Bug: 234812580
Test: followed the existing pattern and tested by manually setting and
unsetting the flag through command line - `adb shell device_config put
launcher enable_web_suggest_on_default_browser <true|false>`
Change-Id: Idd479e93b628b78fdf55d826c56f69c5cfdaf46e
Before the flag name would only fit 'delightful pagination' for folders, but now we're adding that feature to workspace also, hence the flag rename.
The flag is now also used in launcher to show the new XML file that uses PageIndicatorDots rather than WorkspacePageIndicator
Bug: 249773534
Test: manual
Change-Id: I6cf6d52e76ad1ec60ecb54c5cca204e9ac35cc39
There are specific scenarios when you can force an extra empty
workspace after changing the grid, fortunately there is a
function that removes empty workspaces.
Fix:229349287
Test: Add a widget in a new empty workspace page, change the
grid then remove the widget in the new grid size then return
to the previous grid and it shouldn't have an empty workspace.
Change-Id: I7b73ae2ca058bc84b3b361930e3dc856c045281b
In order to have all the activities in Launcher get
the same OnBackInvoked behavior, the logic is moved to BaseActivity.
Test: Manual, Tapl
Bug: 238475344
Change-Id: I3f49091397e31fe1f183596f7fba3bf514697468
> Updating the LayoutManager's scroll calculation instead of a separate
implementation to better support recyclerView's calculations
> Caching the view sizes during layout to avoid view-inflation for
unknown types
> Fixing scrollbar jump during scroll when widget list is expanded
> Fixing scrollbar never reaching end when onboarding card is displayed
in work tab
Bug: 240343082
Test: Verified on device that new views are not inflated
Change-Id: Ied11ccf65b053691c5c126c4bf8de306ec24786d
Back button is only animation in 2-button UI which is not supported anymore
Bug: 246006580
Test: Presubmit
Change-Id: I7385b07272e44c1f9f0488c158e1b4ee67060120
storing duplicate strings
Also starting the dump process early to avoid timeouts
Bug: 242868825
Test: Verified on web-hv UI tool
Change-Id: I9943e41426f820c9ab70d39b9f01896ed060cab4
Doing view capture in two passes
1) UI thread: creating a flat copy of the full view tree. Since
view structure can change on the UI thread, this needs to be
captured synchronously on UI thread.
2) BG thread: We capture the properties of the View on background
thread using the flat tree created in the previous step. Since
reading the properties is atomic, there is no synchronization
issued.
One down side of this approach is that the properties might change
while the background-tep is underway. So all the properties of a
of a node may not represent the frame-state. But for the purpose
of animations, we can just refer a few continous frames.
Bug: 242095405
Test: Verified on device, frame capture reduced by at least 5x
every time.
Change-Id: I0a61fb24669940b3b3533c0471e42e476709da55