- Launcher has an instance of ExtractedColors, which is loaded from
LauncherProvider in onCreate() and whenever the wallpaper changes.
- When the wallpaper changes, the ColorExtractionService is started
in the :wallpaper-chooser process.
- ColorExtractionService builds an ExtractedColors instance and saves
it as a String in LauncherProvider.
- When the results are saved, Launcher gets a callback through
LauncherProviderChangeListener and reloads the ExtractedColors.
- Whenever Launcher loads Extractecolors, it also re-colors items
(currently a no-op).
Change-Id: I319e2cfe0a86abcbc6bb39ef6b9fbbcad54ad743
-> Don't reuse the same background object for the folder create preview
since this can cause interruptions in the animations for previous
creation previews.
-> When drawing the background to preview creation, don't draw the stroke
above the icon since the icon is not yet contained by the folder.
Change-Id: Ib666dc2453df465b342c02f3bd109b553a769dcc
It was setting the panel to black when highlighting a CellLayout,
instead of just adding a white border.
Bug: 27135377
Change-Id: I879b12613b0cbfdda2a980065c66ea3ceb960f33
When the loader ran for the first time (or when called due to force-reload),
it was binding with page = -1 (invalid pageId is -1001). This was causing loader
to assume the workspace to be on a valid screen, and causing the loader to
only bind the hotseat first.
Bug: 27705838
Change-Id: Ia8eb2543d8cee1268256b2d6bccf33828937c54a
a package is being updated or not
Package update handling is a super set of package add handling which
also updates the all-apps and package disabled state.
This also prevents addtion of a home screen icon when a managed profile
app on SD card become available.
Bug: 27877926
Change-Id: I9264e422fd30b94ce6ebb2e5adea820b3cda3063
With the new spring-loaded workspace, items are often very close to
button drop targets (e.g. App Info) at the start of a drag. This
threshold makes it less likely to accidentally drop on a target.
Bug: 24099531
Change-Id: I4912ceeb0b63958816177c7bde073e825176d987
-> New RecyclerView handles wrap_content differently
-> Add mock set of suggested apps to the LauncherExtension
issue: 27581978
Change-Id: Id080e212e0425515fa66e821d116b95284bb3526
> Only creating the animator when required
> Canceling a previously running animation when starting a new one
> Directly setting LinearInterpolator instead of using null
Change-Id: I4f5f25f26dfed9b5c78665af4e74dd565b4cd805
This causes the cache to get reset when the icon size changes,
for eg, in case of display scale changes
Bug: 27701193
Change-Id: Ib11144757a93cb50fb233d855902c0b2c15afbed
-> When there is disparity between the cached icon size and the available space
in the preview, the folder preview could appear not as intended (either
overly crammed, or overly spacious)
issue 27701193
Change-Id: I9f97012ba569d1419b1e3f661cd26761b2a36285
-> This fixes issues when moving folders between the workspace
and hotseat (which have different top paddings)
Change-Id: Iac5a4575a403ce8eadd1d3195f02ab10fe5dac23
-> Some slight changes in spacing showed that we were centering
folders a bit too eagerly
-> Once there is less than a ~4x delta between the spacing on the left
vs. the right of the folder, center it.
issue 27671587
Change-Id: Ic2861ab375d9b9e4cf0eeb28b683073246f35c97
> We are making the DB call (IO) on the UI thread which is costlier than
the AppWidgetHost call.
> The process can get killed after the broadcast receiver returns, which
can prevent these ids from getting deleted.
Change-Id: I47746cf03d0eae573b6baa25cde9e573fd1f1a60
> When package gets unavailable or suspended, the disabled flag was getting
updated on the UI thread. This could lead to inconsistent model if launcher
activity didn't exist.
> Fixing: When unsuspending one work profile apps, all work profile apps get
unsuspended
Bug: 27673573,27673373,27403236
Change-Id: I7fde3f79c36204e73ca66ccf8431fa0f0cce3d08