* Vertically centers workspace icons.
* New iconDisplay value so shortcut text is not overriden.
Bug: 32176631
Change-Id: I86753bab5b24aafc417e0f77d8c471fc4c0dc7f0
A widget can potentially bypass binder size limit with remote views when
using partual updates (as the merging happens on the system service). In
such a case, show the widget in error state.
Bug: 32365088
Change-Id: Id1c4425958a06463273731464e31f05908c35ec7
The number of folder cols/rows are set in InvariantDeviceProfile.
Because of this, we may need to scale down the folder cells in
multi-window mode.
Bug: 32176631
Change-Id: I925d5ac9d29439c5d61cf089e7784065a8cb5ebd
Padding was only on the end to account for the scrollbar. Adding
padding to the left allows the icons on AllApps to align with the icons
on the workspace.
Bug: 32640697
Change-Id: Iced9287979a11afda98bc6bfc926fe87182bee68
> Moving all QSB widget handling code in a separate package
> QSB is handled on a separate host, independent of the main
host. This allows us to safely reset either of the two hosts
> Also removing the logic around closeSystemDialog:
Launcher does not use any panels which need closing
System sends an onActivityResult(RESULT_CANCELLED), we do
not need special handling for waitingForResult
> Fixing bug when auto-generated qsb widget id was not being saved
Change-Id: I2d889b7b1c80b14785d14f35624142a4b78452de
This was an exploration for an alternative UI in all apps, where we
show section headers before every section. This was never released.
Change-Id: I2d36f1d078cc9a6f3ba6f0ec9655412182c9b016
> Using a separate view for drawing the popup. This allows us to use elevation
property instead of drawing the shadow as bitmap.
> During the thumb animation, invalidating the full track width, instead of
invalidating the track and thumb separately.
> The thumb path is calculated at 0,0 and drawn using canvas.translate().
This avoids recalculating the path on every scroll.
Change-Id: I48741e5b4432df0d939016db284d7aaf52cc2aa6
> Creating a base view for floating panels with some common methods
> Moving the getOpen method to individual classes
> Moving the folder icon animation logic to folder icon
> Moving all the logic related for opening folder to Folder class
Change-Id: I898dfb6870b857cb921d2729b89618bc43ff2e88
- First of all, deferred drag has been renamed to pre-drag
to avoid confusion with the existing deferred end drag.
- For normal drags, the cycle is still startDrag -->
onDragStart --> onDrop --> onDropComplete --> onDragEnd.
- Pre-drags have two additional callbacks: onPreDragStart
and onPreDragEnd. onPreDragStart is called between
startDrag and onDragStart, and onPreDragEnd is called
at the same time as onDragStart or onDragEnd.
- If the pre-drag has not transitioned to a full drag before
onDragEnd, onDragStart and onDropComplete are skipped
(onDrop is still called to allow the DragView to animate).
Change-Id: Icd7a8f75d5fcc159f9a52758c22ab6eae3edb9e2
Otherwise it looks like we are aggressively truncating the
text even though there is plenty of room to show it.
Bug: 31790418
Change-Id: Ia1cdc232f05815732d4cb95b954e935724a200fd
- Instead of creating our own drag view within the container, and
handling logic to determine when to start a real drag, we start
the drag immediately and just defer onDragStart().
- To determine when the deferred drag should start, we add a
DeferDragCondition to DragOptions. The default DeferDragCondition
never defers a drag, but is overridden for apps with shortcuts
to defer until the icon is dragged a given distance.
- Because the drag is handled in DragController, including checking
when to start the deferred drag, DeepShortcutsContainer no longer
needs to handle touch events and ShortcutsContainerListener has
been removed.
This change has several immediate benefits:
- The code is much cleaner, because it allows touch handling to be
done by the DragController through the normal drag flow, without
recreating logic in ShortcutsContainerListener/DeepShortcutContainer.
- The janky second haptic feedback has been removed (now it vibrates
when you long press, like everywhere else, but not again when the
shortcuts close after dragging a distance).
- Drops are animated, instead of just popping the icon back into place.
Bug: 30769920
Bug: 30465972
Bug: 31533078
Change-Id: I679b412b72fbf6c3895d76963311eb5010c8e8db
Keyboard shortcuts:
ctrl+A => Open all apps
ctrl+S => shows deep shortcuts
ctrl+O => shows custom actions popup
This also removes the direct delete/uninstall key shortcuts, making
actidental icon removal less likely
Bug: 24065447
Change-Id: Iae63370c0f33620628567cffd4df024064d4d02e
Using center vertical alogn with a fixed height, overrides
the custom drawable padding and divides the available space
proportionally between padding and drawable padding
Change-Id: I4523543ab3007ef40eac69d878d2afbca13b483a
Animate open:
- Stagger-fade shortcuts as they open
- Become fully opaque before fully open, at which point the
arrow animates in (scale). This way there is no overlap of
a translucent shortcut over an opaque arrow.
Animate close:
- Stagger-fade shortcuts as they close
- Delay fade until arrow animation is finished, to ensure
there is no overlapping of translucent and opaque.
This is much less visually jarring when quickly dragging
and dropping apps with shortcuts.
Bug: 31533078
Change-Id: I8673ee64e92414c718233ea89b70362187e53696