CellLayout class
2. Get rid of explicit type arguments that can be inferred
3. Make instance variables final
Bug: 62466540
Change-Id: I9acbde25704d62883d174f5573383a2d8b0e1e6e
> Removing the code for LIGHT_STATUS_BAR as that will be controlled by the theme
> Updating icon cache to always use transparent background for low-res, as the
theme can change the bg color
Change-Id: Iab64ec29cab629ee515af22ec15b95d3f40a9df5
Instead of cliping using clipPath, using PorterDuffXfermode to clear
area outside the bounds. This provides much better support for antialiasing.
Software layer was also being used for drawing shadow. But since the paint
color was set to transparent, no shadow was being drawn in O. Instead drawing
the shadow using radial gradient.
Bug: 35680116
Bug: 35428783
Change-Id: I0431664400628d5d01675fe72fe7ade01b64d611
wallpaper
> Using HomeScreenElementTheme for workspace items
> Fixing view inflation where wrong layout inflater was being used
Change-Id: I92e278dbfb609ad7af9c2f47351f23f03cf12049
The original animation assumed that the views are not
translated and not scaled. In multi-window mode this
assumption is no longer valid, because app widgets are
scaled and translated to fit center within their cells.
Bug: 32176631
Change-Id: Id60c793730d982277c9d91860e9fb0e6a0df7d38
Factored in app widget scaling in methods related to estimating
widget size and positions.
ie. Dropping a widget that needs to be resized to fit in the
workspace.
Bug: 32176631
Change-Id: I106fe12041565a090047f146a07d4bc80a074b4a
This change mimics the non-MW mode behavior when dragging and
dropping widgets by taking the app widget scale into consideration.
This ensures a consistant drag and drop experience between
MW mode and non-MW mode.
* Uses cell data (cell height/width, spanX/Y) to get the expected
widget sizes.
* Scales sizes when necessary.
Bug: 32176631
Change-Id: Icdaf73ecd89a30e57fe7f405292d793f2d6a3ee8
To keep this CL small and focused, I'm going to create
a separate CL that handles the scaling for the widget in
drag and drop mode.
Bug: 32176631
Change-Id: Id6557d070edb664aa1f4851de7abf494cf8a0677
* Vertically centers workspace icons.
* New iconDisplay value so shortcut text is not overriden.
Bug: 32176631
Change-Id: I86753bab5b24aafc417e0f77d8c471fc4c0dc7f0
1) setChildrenDrawnWithCacheEnabled: deprecated
2) Removing custom logic based on isHardwareAccelerated. This check was not being
used consistantly everywhere
Bug: 29761236
Change-Id: Ic4a9c764f154497e376e37de2351fe04d1b48500
Also move cleanup (resetting variables to null) to onDragEnd
instead of onDropCompleted. These changes are necessary because
pre-drags (for apps with shortcuts) don't call onDragStart
or onDropCompleted.
Bug: 32246571
Change-Id: Ib18fac64555e9158b776f9c12afc2cb807b3c355
1) Using ALPHA_8 as the start and end bitmap. This removes one extra
bitmap generation step
2) Using ByteBuffer on ALPHA_8 bitmap for clipAlpha. This allows us
to use byteArray instead of intArray for representing pixels
Change-Id: I1b654c439fd491b6b91180ddc562bb97fad857aa
This will allow drag controller to optinally defer drag, based on some
threshold, by simply deferring the callback onDragStart
Change-Id: I17c06a15e2092b9797c7e57529b12a53d2acae6e
This allows better edge matching for the QSB. The QSB position
is kept synchronized with the page scroll and all-apps transition.
But its not visible in spring loaded and overview mode
Change-Id: I4e6723607ea966ee672273a9ca67c792fd6b5661
The QSB will only be resent on the first screen of the workspace
covering the full width of the first row. If will not be movable.
The first screen of the workspace will not be movable.
The searchDropTargetBar no longer contains the QSB (it can be
renamed in aseparate cl).
Refactoring all QSB related logic by moving it to a custom view
inflated only using xml.
Change-Id: Icb4fd6eb855df1af15f685961c38351bf4fd4f4a
It looked weird, because the scrim cutout happens immediately
and the border flickered into place shortly after.
Bug: 27135377
Change-Id: Iff861db73c438c7dabccd6ed7c4ee38dbeb77ea1
-> 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
-> Refactored the preview background rendering to be much more self-contained.
This cleans up a lot of code in the CellLayout, and keeps the logic in the
right place.
-> We switch to software rendering for performance and compatibility reasons.
-> Removed all assets.
-> FolderIcon accept animation includes animation of the clipped region.
-> 1:1 hand-off of drawing of the FolderIcon background between the FolderIcon
and the CellLayout. Unfortunately, CellLayout rendering is still required
to work around clipping issues (due to use of software layer). We also
need this to support folder creation feedback.
Change-Id: Ib8f7fa6359dfedff8145f38dd50ba03849ca0d51
-> Created com.android.launcher3.folder package to house most folder-related files
(aside from the FolderInfo) which is more related to the model than the UI.
Change-Id: I767063e1e4c775c01a799a3bede30cd94ac48ade
- No page indicators in spring-loaded mode
- Don’t move workspace up as high
- Scale workspace at 90% instead of 80% on phones
- Increase speed of workspace -> spring-loaded -> workspace
- Widgets were being scaled down twice when dragging from widget picker
- Don't scale up icons when dragging (scaling other stuff down is enough)
- Make scrim less dark and panels more transparent
- Thin white border around page instead of highlight when hovering
Change-Id: I963e91c20d4c0340480d165e0f3b8064783c0cb2