diff options
author | Evan Rosky <erosky@google.com> | 2020-05-20 18:47:37 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2020-05-20 18:47:37 +0000 |
commit | 743a9a0b4aa32fef2ca598eec84b7aed474f9abf (patch) | |
tree | 492bacc61454737f589a9f2eedbb8681f793342f | |
parent | 052c3c4d634dd2049fdd655168b6ab140229c9dd (diff) | |
parent | c83fbdea5c95991f702b1c11ab7e1c8dc3c9f85d (diff) |
Merge "Hide IME adjust dims when divider is hidden" into rvc-dev am: c83fbdea5c
Change-Id: If95d15dca125fa678cd24f2db0c827cd2715adac
3 files changed, 19 insertions, 2 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java b/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java index 379bb9d247db..95aceed1126b 100644 --- a/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java +++ b/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java @@ -277,7 +277,8 @@ public class Divider extends SystemUI implements DividerView.DividerCallbacks, mView = (DividerView) LayoutInflater.from(dctx).inflate(R.layout.docked_stack_divider, null); DisplayLayout displayLayout = mDisplayController.getDisplayLayout(mContext.getDisplayId()); - mView.injectDependencies(mWindowManager, mDividerState, this, mSplits, mSplitLayout); + mView.injectDependencies(mWindowManager, mDividerState, this, mSplits, mSplitLayout, + mImePositionProcessor); mView.setVisibility(mVisible ? View.VISIBLE : View.INVISIBLE); mView.setMinimizedDockStack(mMinimized, mHomeStackResizable); final int size = dctx.getResources().getDimensionPixelSize( diff --git a/packages/SystemUI/src/com/android/systemui/stackdivider/DividerImeController.java b/packages/SystemUI/src/com/android/systemui/stackdivider/DividerImeController.java index 533fd5fa6352..1e0c07b1cd4c 100644 --- a/packages/SystemUI/src/com/android/systemui/stackdivider/DividerImeController.java +++ b/packages/SystemUI/src/com/android/systemui/stackdivider/DividerImeController.java @@ -266,6 +266,18 @@ class DividerImeController implements DisplayImeController.ImePositionProcessor mLastSecondaryDim * invProg + progress * mTargetSecondaryDim); } + void setDimsHidden(SurfaceControl.Transaction t, boolean hidden) { + final DividerView view = getView(); + if (hidden) { + view.setResizeDimLayer(t, true /* primary */, 0.f /* alpha */); + view.setResizeDimLayer(t, false /* primary */, 0.f /* alpha */); + } else { + updateDimTargets(); + view.setResizeDimLayer(t, true /* primary */, mTargetPrimaryDim); + view.setResizeDimLayer(t, false /* primary */, mTargetSecondaryDim); + } + } + private void onEnd(boolean cancelled, SurfaceControl.Transaction t) { if (!cancelled) { onProgress(1.f, t); diff --git a/packages/SystemUI/src/com/android/systemui/stackdivider/DividerView.java b/packages/SystemUI/src/com/android/systemui/stackdivider/DividerView.java index 8ca50cdddf71..e349b5af5b2d 100644 --- a/packages/SystemUI/src/com/android/systemui/stackdivider/DividerView.java +++ b/packages/SystemUI/src/com/android/systemui/stackdivider/DividerView.java @@ -143,6 +143,7 @@ public class DividerView extends FrameLayout implements OnTouchListener, private VelocityTracker mVelocityTracker; private FlingAnimationUtils mFlingAnimationUtils; private SplitDisplayLayout mSplitLayout; + private DividerImeController mImeController; private DividerCallbacks mCallback; private final AnimationHandler mAnimationHandler = new AnimationHandler(); @@ -358,12 +359,14 @@ public class DividerView extends FrameLayout implements OnTouchListener, } public void injectDependencies(DividerWindowManager windowManager, DividerState dividerState, - DividerCallbacks callback, SplitScreenTaskOrganizer tiles, SplitDisplayLayout sdl) { + DividerCallbacks callback, SplitScreenTaskOrganizer tiles, SplitDisplayLayout sdl, + DividerImeController imeController) { mWindowManager = windowManager; mState = dividerState; mCallback = callback; mTiles = tiles; mSplitLayout = sdl; + mImeController = imeController; if (mState.mRatioPositionBeforeMinimized == 0) { // Set the middle target as the initial state @@ -403,6 +406,7 @@ public class DividerView extends FrameLayout implements OnTouchListener, } else { t.show(sc); } + mImeController.setDimsHidden(t, hidden); t.apply(); mTiles.releaseTransaction(t); }); |