Add a config to control split-screen task dimming
In split-screen when a task is the IME target, the other one is dimmed. Add a config to enable/disable this functionality. Test: Manual Bug: 229090560 Change-Id: Id0935f1badec4620a97b8ea9826d32b94c186b98 Merged-In: If41d89744acd6dcba27085755b6cd3947ee3ad62
This commit is contained in:
@@ -70,4 +70,7 @@
|
||||
|
||||
<!-- Animation duration when exit starting window: reveal app -->
|
||||
<integer name="starting_window_app_reveal_anim_duration">266</integer>
|
||||
|
||||
<!-- Whether to dim a split-screen task when the other is the IME target -->
|
||||
<bool name="config_dimNonImeAttachedSide">true</bool>
|
||||
</resources>
|
||||
|
||||
@@ -101,6 +101,8 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange
|
||||
private int mOrientation;
|
||||
private int mRotation;
|
||||
|
||||
private final boolean mDimNonImeSide;
|
||||
|
||||
public SplitLayout(String windowName, Context context, Configuration configuration,
|
||||
SplitLayoutHandler splitLayoutHandler,
|
||||
SplitWindowManager.ParentContainerCallbacks parentContainerCallbacks,
|
||||
@@ -125,6 +127,8 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange
|
||||
mRootBounds.set(configuration.windowConfiguration.getBounds());
|
||||
mDividerSnapAlgorithm = getSnapAlgorithm(mContext, mRootBounds);
|
||||
resetDividerPosition();
|
||||
|
||||
mDimNonImeSide = resources.getBoolean(R.bool.config_dimNonImeAttachedSide);
|
||||
}
|
||||
|
||||
private int getDividerInsets(Resources resources, Display display) {
|
||||
@@ -719,10 +723,10 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange
|
||||
// Update target dim values
|
||||
mLastDim1 = mDimValue1;
|
||||
mTargetDim1 = imeTargetPosition == SPLIT_POSITION_BOTTOM_OR_RIGHT && showing
|
||||
? ADJUSTED_NONFOCUS_DIM : 0.0f;
|
||||
&& mDimNonImeSide ? ADJUSTED_NONFOCUS_DIM : 0.0f;
|
||||
mLastDim2 = mDimValue2;
|
||||
mTargetDim2 = imeTargetPosition == SPLIT_POSITION_TOP_OR_LEFT && showing
|
||||
? ADJUSTED_NONFOCUS_DIM : 0.0f;
|
||||
&& mDimNonImeSide ? ADJUSTED_NONFOCUS_DIM : 0.0f;
|
||||
|
||||
// Calculate target bounds offset for IME
|
||||
mLastYOffset = mYOffsetForIme;
|
||||
|
||||
Reference in New Issue
Block a user