Animate icon dimming in taskbar when force showing in immersive mode.

Test: manual
Bug: 203748818
Change-Id: Iab3c65db502e7dbde3141429e9ae70eec1fabde1
This commit is contained in:
Pat Manning
2021-12-01 14:51:51 +00:00
parent 2718fd6767
commit 900ef936ad
8 changed files with 219 additions and 10 deletions

View File

@@ -26,6 +26,7 @@ import android.graphics.Rect;
import com.android.launcher3.AbstractFloatingView;
import com.android.launcher3.R;
import com.android.launcher3.anim.AlphaUpdateListener;
import com.android.launcher3.util.TouchController;
import com.android.quickstep.AnimatedFloat;
import com.android.systemui.shared.system.ViewTreeObserverWrapper.InsetsInfo;
@@ -181,7 +182,8 @@ public class TaskbarDragLayerController implements TaskbarControllers.LoggableTa
// Let touches pass through us.
insetsInfo.setTouchableInsets(TOUCHABLE_INSETS_REGION);
} else if (mControllers.taskbarViewController.areIconsVisible()
|| AbstractFloatingView.getOpenView(mActivity, TYPE_ALL) != null) {
|| AbstractFloatingView.getOpenView(mActivity, TYPE_ALL) != null
|| mActivity.isNavBarKidsModeActive()) {
// Taskbar has some touchable elements, take over the full taskbar area
insetsInfo.setTouchableInsets(mActivity.isTaskbarWindowFullscreen()
? TOUCHABLE_INSETS_FRAME : TOUCHABLE_INSETS_CONTENT);
@@ -217,5 +219,13 @@ public class TaskbarDragLayerController implements TaskbarControllers.LoggableTa
public int getTaskbarBackgroundHeight() {
return mActivity.getDeviceProfile().taskbarSize;
}
/**
* Returns touch controllers.
*/
public TouchController[] getTouchControllers() {
return new TouchController[]{mActivity.getDragController(),
mControllers.taskbarForceVisibleImmersiveController};
}
}
}