mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-03-03 17:36:49 +00:00
Initial commit of taskbar stashing
- Added StashedHandleViewController to provide properties such as ViewOutlineProvider to animate the handle that's shown in place of taskbar while it's stashed - Added TaskbarStashController to coordinate the stashed state, including orchestrating the animation across taskbar controllers - Added TaskbarStashInput consumer to detect long press in the nav region when taskbar is stashed Behavior: - Long pressing taskbar background animates to the stashed state by morphing the TaskbarView into the stashed handle view and offsetting the background offscreen - We persist the stashed state across app launches and reboot; to unstash, long press the stashed handle - We also visually unstash when going back home Test: long press tasbkar background when in an app to stash it, long press the resulting stashed handle to unstash; while stashed, swipe up to home to also unstash until launching another app Bug: 189503603 Change-Id: I698eff785388dff1ef717c76879719d6af236c2d
This commit is contained in:
@@ -94,8 +94,10 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar
|
||||
|
||||
protected void init(TaskbarViewController.TaskbarViewCallbacks callbacks) {
|
||||
mControllerCallbacks = callbacks;
|
||||
mIconClickListener = mControllerCallbacks.getOnClickListener();
|
||||
mIconLongClickListener = mControllerCallbacks.getOnLongClickListener();
|
||||
mIconClickListener = mControllerCallbacks.getIconOnClickListener();
|
||||
mIconLongClickListener = mControllerCallbacks.getIconOnLongClickListener();
|
||||
|
||||
setOnLongClickListener(mControllerCallbacks.getBackgroundOnLongClickListener());
|
||||
}
|
||||
|
||||
private void removeAndRecycle(View view) {
|
||||
@@ -235,6 +237,10 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar
|
||||
return isShown() && mIconLayoutBounds.contains(xInOurCoordinates, yInOurCoorindates);
|
||||
}
|
||||
|
||||
public Rect getIconLayoutBounds() {
|
||||
return mIconLayoutBounds;
|
||||
}
|
||||
|
||||
// FolderIconParent implemented methods.
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user