Commit Graph

3 Commits

Author SHA1 Message Date
Tony Wickham 49c8d29fdd Close the shortcuts container in various places.
- Mostly everywhere folders are closed
- Implements DragListener so we can close the container when dragging
  the original icon or shortcuts from the container. We actually just
  hide the container in onDragStart() and really remove it in
  onDragEnd(). This avoids interfering with touch events and thus
  allows us to remove the hack of explicitly setting the DragLayer's
  controller when dragging shortcuts (since it will do it on intercept).

Bug: 30080537

Change-Id: Iccc2afba2a990a613bc588d57c4d8c1b7c65224b
2016-07-13 12:35:04 -07:00
Tony Wickham 2f2104ccdf Fix some issues with shortcut containers opened inside folders.
- Dragging a shortcut from a container inside a folder was buggy
  because the folder assumes that all drags are removing an item
  (so it marks the cell as unoccupied, etc.). So we just close
  the folder when dragging a shortcut.
- When the shortcuts container opened outside of a folder, touches
  on it were incercepted by DragLayer to close the folder. So we
  move the container intercept check first, and return false if the
  touch is over the container so it can handle the touch.

Change-Id: I8c5814513e99910b2930e05d9a62dfe0a0a60f3e
2016-06-30 16:34:20 -07:00
Tony Wickham 1bce7fd342 Long-press on an app to reveal its shortcuts.
- Add ShortcutsContainerListener to icons on workspace, folders, and
  all apps. This handles long-press and forwards following touches to
  the DeepShortcutsContainer that is created.
- Drag over shortcut before lifting finger to launch it.
- Shortcuts are rendered in pill-shaped DeepShortcutViews,
  which are inside DeepShortcutContainer on DragLayer.
- The shortcut container orients above or below the icon, and left or
  right-aligns with it. Biases for above + left-align.
- Long press a DeepShortcutPill to drag and pin it to the workspace.

Bug: 28980830
Change-Id: I08658d13ae51fe53064644e8d8f7b42f150fdd7d
2016-06-29 17:48:46 -07:00