Looks like the code path for buildDrawingCache(false) has some bugs.
This reverts to the old code path and tries to manage the creation of
those caches a bit better.
Change-Id: Ic468e9db396c51f723454dc3832e0cd1c0c82004
To do this, we invoke resolveActivity to see what activity
would result from viewing an arbitrary (but valid) URL. If
there's just one installed, or there are multiple and the
user has chosen a default handler for http:, we take that
component and launch it with CATEGORY_HOME (so as not to
upset the URL in the frontmost window/tab/what-have-you).
We also use this information to extract the localized name
of the app, which is then installed into the hotseat as the
contentDescription (for accessibility).
If there's no default and multiple options are availble,
we'll get the activity chooser instead. In this case, we
just fire off that chooser and let the user pick an app
(possibly setting a default along the way). Because the
default may change, we reload all this hotseat information
every time one of the hotseats is tapped.
Another side-effect of this approach is that until there
exists a default browser, the original URL will be sent to
the activity the user chooses from the ResolveActivity. So
we need a sensible default URL here; one can be found in
R.string.default_browser_url (similar to Browser's
R.string.homepage_base).
This change also moves the hotseat intents and icons into
arrays.xml for easier configuration.
Change-Id: I06268df8b59e0f41f1f8b0e47f823db4c44ec761
Duration of motion is now influenced by fling velocity. Constants have
been tuned and tweaked.
Fix a couple of drawing optimizations in Launcher2 Workspace.
Change-Id: Iaa674d10a28554884d9cc98134b2d1253b5e3e70
This fixes the issue where using the long-press-on-dots feature to
jump to a specific home screen overshoots by a large distance. It also
speeds up the resulting animation such that jumping from screen 1 to 5
doesn't take as long.
Change-Id: If41086b17df875be5514776e3af24292587d05a7
The hotseats are permanent slots on either side of the
AllApps button. Their functions are:
LEFT/BOTTOM: Phone
Launched via the hardcoded class name
com.android.contacts/.ContactsLaunchActivity.
RIGHT/TOP: Browser
Launched by querying to see which application is the
default for URLs, then starting that activity directly.
In the future, it would be ideal to allow an application
with permission to access LauncherProvider to customize
these (icons, contentDescriptions, and Intents).
Bug: 2559083
Change-Id: I56f6e745f8574aa17e28feaa9d2118fb4a715cd4
This way we can figure out how many apps to send to the grid
at a time even if the grid hasn't been instantiated yet.
Bug: 2599979
Change-Id: I7960fe1adae6976555334422335f3a4b28d0675e
* Removed another redundant sort
* Correctly set the thread priority to BACKGROUND for the
all apps loading step.
* Moved batch delay to a resource
* Reduced delay between loading batches of apps to 100ms
(we really just want to sleep a tiny bit between batches
to give the UI time to react)
Bug: 2562420
Bug: 2599979 (related)
Change-Id: I1ae72a68c1a47377a9eb62827fe7666bfc50caa5
The sorting is no longer being done in LauncherModel.
AA3D.addApps correctly performs an insertion sort, but
setApps did not.
Missing from change I77e3865b.
Bug: 2562420
Change-Id: I6854c2c4a221b2c1ad123410292da1fbfece7871
The mNext* stuff in AllApps3D got reset when onNewIntent came in too fast after an
onCreate, which happened because of the configuration changed.
Change-Id: I9a358b6969ac1d17ea98f58218d47bfe983936f0
This code never worked. If you delete a live folder for an app that's been uninstalled, it would
crash.
Change-Id: Id91712fada8912addbc4892bd5ae517536fc4f24