change directly in onCreate and onNewIntent()
> State UI do not depend on view measurement and each state is able
to adapt itself based on measure/layout. We do not need to wait for
first layout pass before chaning the state.
Bug: 67305604
Change-Id: I8906e3245cc07aac0038fe630e2a16875d4e8949
Instead of checking every widget, a widget which needs reinflation
would post a callback on launcher avoiding unnecessary loops in onResume
Bug: 67305604
Change-Id: I53e08d6f4795f7b716a9debca5c0c68dd25a7afe
Predicted apps should be pushed by the called whenever they change
instead of Launcher polling them on every UI update.
Bug: 67305604
Change-Id: Ibd3d809b09b7d8fd39036f69367e8580fb90dcef
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
> buildLayer was followed by setLayerType(NONE) which was causing the
layer to get destroyed immediately and hece was never useful.
> Also removing mAnimatingViewIntoPlace as after setting this to true
updateChildLayer was never being called.
Change-Id: I08a6da25de002247c956308973f1675c0e61e15c
The bug is that in onResume, the context may tell us the wrong
orientation.
As a workaround, we store the orientation that the Launcher
is created with, and we use that orientation to check whether
we actually need to reinflate the widgets.
Bug: 64916689
Change-Id: I5194debbd217a573d1f177c31d8c0abdf9da51b5
> Moving the definitions to xml so that it is easier to override in derivative projects
> Fixing verious bind and save logic for custom widgets
> Adding feature flag to easily disable custom widgets
Change-Id: I0e278bc7dd415713029364060ef10842da990be9
The supported way to customize Launcher and add a "-1 page" is by
using LauncherOverlays. Custom content screen is no longer supported.
Change-Id: I3f8a2734c287d1a69ae0c038ec1de1d45fa1b464
> Animation plays on every onResume
> Updating animation to loop continuously on v23+
> Updating animation spec
Bug: 64331951
Change-Id: Ic6fb8d6975b37f5b010fc585329cba615296f5c7
When deferring bindAllApplications, the same global state was being
used to store the pending state. This global state was being cleared
in one deferred execution after a second execution was scheduled, causing
the second execution to get null/wrong values.
Instead using independent local/anonymous class to maintian states, so that
it does not get cleared by other methods.
Bug: 64789383
Change-Id: I78477a110fe663603b4bdeb7d1fac7c4ce0831a2
Defer:
- Setting all apps
- Setting widgets
Also set the launcher-loader thread to THREAD_PRIORITY_BACKGROUND
for the duration of the animation.
Bug: 37965432
Change-Id: I8364940805b84aecb8353a473ab4d575c27bfec4
* Prefetch existing predictions in onResume.
* Only update predictions if something has been changed.
* Swap predictions in place (if possible) -- this avoids
having to relayout all of All Apps when just the predictions
change.
Bug: 64126588
Bug: 63711551
Change-Id: Iffa0d9d7d6f99f606dd68b7df5893d6eba1574f5
* Scrim will fade first time the user starts Launcher (unlocks device).
* Scrim will fade if resuming from a screen off and Launcher is in
the foreground.
Bug: 63801668
Change-Id: I4465765fe5a0f81c2f4dec715f9f5a24a309fc1b
> Removing helper methods around fillInLogContainerData so that its easier to
create events with 3 and more srcTargets
> Removing setPredictedApps from userEventDispatcher as its specific to Launcher
and does not apply to other activities. Instead moving it to AllAppsRecyclerView
Bug: 63719473
Change-Id: Ib92621e41ede4ffe03892642ab173772b5a84dd1
-> Was separating them for cleanliness, but turns out
in portrait the caret is the button, but in landscape it's not.
We'll clean all this up later.
Change-Id: Icbc185f9183ded685b4a988eacf19cb7583ed8ad
-> Also increase the touch target size of the caret
-> Center the asset horizontally within the view (but keep it bottom
asligned)
issue 63681599
issue 63682248
Change-Id: I64efdfb9f84b82cc21d82c10d9301a99fed3353a