summaryrefslogtreecommitdiff
path: root/quickstep/src/com/android/launcher3/taskbar/TaskbarIconController.java
diff options
context:
space:
mode:
authorVinit Nayak <peanutbutter@google.com>2021-05-25 19:26:48 -0700
committerVinit Nayak <peanutbutter@google.com>2021-06-01 13:16:48 -0700
commit91dca0f2829753f399db0cfad99d4d793ab7368c (patch)
tree482351099e651899f464b0ea049a6f7275df04ad /quickstep/src/com/android/launcher3/taskbar/TaskbarIconController.java
parent23bb5e0bfcecde268433de1265fef6628bdd4a9f (diff)
Initial commit of rotation contextual button.
UI fixing todo: b/187754252 Bug: 180046394 Test: Works in basic cases with on home and in app taskbar. Change-Id: I69985b57e38a9fdb7935fcafb097b1e6da73a6b9
Diffstat (limited to 'quickstep/src/com/android/launcher3/taskbar/TaskbarIconController.java')
-rw-r--r--quickstep/src/com/android/launcher3/taskbar/TaskbarIconController.java19
1 files changed, 17 insertions, 2 deletions
diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarIconController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarIconController.java
index cf0694ba60..5d4b8b7f4e 100644
--- a/quickstep/src/com/android/launcher3/taskbar/TaskbarIconController.java
+++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarIconController.java
@@ -31,6 +31,8 @@ import androidx.annotation.NonNull;
import com.android.launcher3.R;
import com.android.launcher3.anim.AlphaUpdateListener;
+import com.android.launcher3.taskbar.contextual.RotationButtonController;
+import com.android.quickstep.SysUINavigationMode;
import com.android.systemui.shared.system.ViewTreeObserverWrapper.InsetsInfo;
/**
@@ -45,18 +47,22 @@ public class TaskbarIconController {
private final TaskbarView mTaskbarView;
private final ImeBarView mImeBarView;
+ private final RotationButtonController mRotationButtonController;
@NonNull
private TaskbarUIController mUIController = TaskbarUIController.DEFAULT;
- TaskbarIconController(TaskbarActivityContext activity, TaskbarDragLayer dragLayer) {
+ TaskbarIconController(TaskbarActivityContext activity, TaskbarDragLayer dragLayer,
+ RotationButtonController rotationButtonController) {
mActivity = activity;
mDragLayer = dragLayer;
mTaskbarView = mDragLayer.findViewById(R.id.taskbar_view);
mImeBarView = mDragLayer.findViewById(R.id.ime_bar_view);
+ mRotationButtonController = rotationButtonController;
}
- public void init(OnClickListener clickListener, OnLongClickListener longClickListener) {
+ public void init(OnClickListener clickListener, OnLongClickListener longClickListener,
+ SysUINavigationMode.Mode navMode) {
mDragLayer.addOnLayoutChangeListener((v, a, b, c, d, e, f, g, h) ->
mUIController.alignRealHotseatWithTaskbar());
@@ -67,6 +73,9 @@ public class TaskbarIconController {
mTaskbarView.getLayoutParams().height = mActivity.getDeviceProfile().taskbarSize;
mDragLayer.init(new TaskbarDragLayerCallbacks(), mTaskbarView);
+ if (navMode == SysUINavigationMode.Mode.THREE_BUTTONS) {
+ mRotationButtonController.setRotationButton(mTaskbarView.getContextualRotationButton());
+ }
}
public void onDestroy() {
@@ -127,6 +136,12 @@ public class TaskbarIconController {
mTaskbarView.mSystemButtonContainer, mTempRect);
insetsInfo.touchableRegion.set(mTempRect);
}
+ if (mTaskbarView.mContextualButtonContainer.getVisibility() == VISIBLE) {
+ mDragLayer.getDescendantRectRelativeToSelf(
+ mTaskbarView.mContextualButtonContainer, mTempRect);
+ insetsInfo.touchableRegion.union(mTempRect);
+ }
+
insetsInfo.setTouchableInsets(TOUCHABLE_INSETS_REGION);
}