Fixes bug that LauncherAppsCompatVL.resolveActivity was wrapping
a null in a compat class when LauncherApps.resolveActivity returns
null.
Bug: 14891460
Change-Id: I0364b198486f14393e51ac383a9d10b89e466bdf
Clear the profile id when packing an intent for backup.
Set the profile id to the current user when restoring
a favorite from a backup.
Change-Id: I9d976fbe16773b34a74e57d080ff797ba51f9b04
Intent extra was being set as int rather than long so being
missed.
Also use LauncherApps if neccessary in case where launching
without launch animation.
Unregister for package notifications when terminating.
Bug: 14636181
Change-Id: I1575f6eed806446782092dffe8c01afe7b6507fe
WallpaperPicker depends on this and have this class in Launcher3 would cause a
circular dependency in google3
Change-Id: Ia582bcb988a4f6375904660546b1bc1744d25238
Use LauncherApps API and badging APIs instead of PackageManager.
With compatability layer that uses PackageManager pre L.
Adds support to show apps from current user and any managed profiles.
Background: Managed profiles are user sandboxes that are visible from
the primary user and can be launched as if they are a part of this user.
A launcher should now be capable of listing apps from this user as well
as related profiles of this user.
Launching of activities is now via the LauncherApps interface, to allow
for cross-profile app launching. Only activities with category LAUNCHER
can be added as a shortcut on the workspace for a managed profile.
Widgets and non-application shortcuts are only supported for the
current profile. Widgets from the managed profile are not available.
Change-Id: I5f396b1bf7f91ad91a5710ea4a0fd14573972eb9
Stops the workspace from announcing incorrectly while the apps
page is open, also makes the apps announce which page on opening.
Bug: 13006306
Change-Id: I723011fc55c24b66604a24b16c17bac4f5653f84
-> Delete items contained directly on the desktop whose screens
no longer exist (do not remove items contained in hotseat or
folders, except as described below)
-> Delete items contained by folder ids which are no longer present
(ie. orphaned as their parent folder no long exists)
Change-Id: I2f47cc970ce00677cb1c83c0f0a2d13b6f16a33e
Traditionally Launcher workspace customization is offered through
overlays at build time, but we don't have access to partner-specific
customization at build time. To solve this, this adds a new
"partner-folder" tag which points at an XML resource provided by
an external package.
The external package XML can't depend on the binary XML attributes
defined by Launcher3, so we switch to using manual string-based
attribute lookups. Partners can also provide extra wallpapers.
When a folder only results in a single item, promote that item into
the folder location instead of deleting completely.
Bug: 13340779
Change-Id: Ide558288bef4113565f288b700d8245055c0fee9
Seems that on occasion the list is being iterated on while being
modified. To fix this added synchronization to all modifications
to the list as well as iterating on a copy of the list to cut
down on time holding the lock.
Bug: 12885709
Change-Id: I4287bdedbeb8e438b49c1f79b44819a752c28a69
When an icon is in the Hotseat and a user drags off from the icon,
but continues holding down, the icon gets a long press triggered
by the CheckLongPressHelper.
To fix this a check has been added on move events to see if the
point has moved outside the view and to cancel the long press
check callback if it has.
Bug: 13569451
Change-Id: Id175cdc220d70b5e9f8e492ed5a3cc7c3f11db10
If bounds are set on a compound drawable in a textview, drawing it into a
bitmap set to the intrinsic size of the drawable results in it being scaled
down in the top corner. Scaling it down again into the grid icon size then
gives a tiny icon.
Use the drawable bounds if any are set, otherwise use the intrinsic size.
Bug: 14103508
Change-Id: Idadd7bb891dc33d092eb9ceb3025b9a5d9e1bfd8
This fix works making sure all drawables are mutated before drawing
them in the background. Mutation has to be executed on the main
thread because that operation is not thread safe.
Bug: 12525890
Change-Id: Id7bdf9cf48d3e7b7f31938bdea4a3bf1632cf337
This is to allow derived launcher classes to move the workspace to the
default screen when a drag is started, in case the current screen is not
capable of acting as a drop target.
Bug: 13962574
Change-Id: I8a6e94ce08be825c344beb708d244d2def5f319f