diff --git a/quickstep/res/layout/overview_panel.xml b/quickstep/res/layout/overview_panel.xml index 394e8808c8..9d71000276 100644 --- a/quickstep/res/layout/overview_panel.xml +++ b/quickstep/res/layout/overview_panel.xml @@ -19,8 +19,7 @@ android:id="@+id/split_placeholder" android:layout_width="match_parent" android:layout_height="@dimen/split_placeholder_size" - android:background="@android:color/white" - android:alpha=".8" + android:background="@android:color/darker_gray" android:visibility="gone" /> config.getInterpolator(ANIM_OVERVIEW_SCRIM_FADE, LINEAR)); setter.setFloat(scrim, SCRIM_MULTIPLIER, 1f, config.getInterpolator(ANIM_OVERVIEW_SCRIM_FADE, LINEAR)); + if (toState.areElementsVisible(mLauncher, LauncherState.SPLIT_PLACHOLDER_VIEW)) { + scrim.updateStableScrimmedView(mLauncher.getSplitPlaceholderView()); + } else { + scrim.updateStableScrimmedView(mLauncher.getOverviewPanel()); + } setter.setFloat( mRecentsView, getTaskModalnessProperty(), diff --git a/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java b/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java index 6929b5dc9c..9097c8b4c2 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java @@ -113,7 +113,7 @@ public final class RecentsViewStateController extends ANIM_OVERVIEW_ACTIONS_FADE, LINEAR)); float splitPlaceholderAlpha = state.areElementsVisible(mLauncher, SPLIT_PLACHOLDER_VIEW) ? - 1 : 0; + 0.7f : 0; propertySetter.setFloat(mRecentsView.getSplitPlaceholder(), ALPHA_FLOAT, splitPlaceholderAlpha, LINEAR); } diff --git a/src/com/android/launcher3/graphics/OverviewScrim.java b/src/com/android/launcher3/graphics/OverviewScrim.java index 7d52744b44..7aadb962f7 100644 --- a/src/com/android/launcher3/graphics/OverviewScrim.java +++ b/src/com/android/launcher3/graphics/OverviewScrim.java @@ -66,6 +66,13 @@ public class OverviewScrim extends Scrim { mStableScrimmedView = mCurrentScrimmedView = mLauncher.getOverviewPanel(); } + /** + * @param view The view we want the scrim to be behind + */ + public void updateStableScrimmedView(View view) { + mStableScrimmedView = view; + } + public void updateCurrentScrimmedView(ViewGroup root) { // Find the lowest view that is at or above the view we want to show the scrim behind. mCurrentScrimmedView = mStableScrimmedView; diff --git a/src/com/android/launcher3/touch/LandscapePagedViewHandler.java b/src/com/android/launcher3/touch/LandscapePagedViewHandler.java index 19dfe15f62..dd5611e7de 100644 --- a/src/com/android/launcher3/touch/LandscapePagedViewHandler.java +++ b/src/com/android/launcher3/touch/LandscapePagedViewHandler.java @@ -24,7 +24,6 @@ import static com.android.launcher3.touch.SingleAxisSwipeDetector.HORIZONTAL; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_TYPE_MAIN; -import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_TYPE_SIDE; import android.content.res.Resources; import android.graphics.PointF; @@ -45,7 +44,7 @@ import com.android.launcher3.Utilities; import com.android.launcher3.util.OverScroller; import com.android.launcher3.util.SplitConfigurationOptions.SplitPositionOption; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; public class LandscapePagedViewHandler implements PagedOrientationHandler { @@ -308,15 +307,10 @@ public class LandscapePagedViewHandler implements PagedOrientationHandler { @Override public List getSplitPositionOptions(DeviceProfile dp) { - List options = new ArrayList<>(2); - // Add left/right options where left => position top, right => position bottom - options.add(new SplitPositionOption( + // Add "left" side of phone which is actually the top + return Collections.singletonList(new SplitPositionOption( R.drawable.ic_split_screen, R.string.split_screen_position_left, STAGE_POSITION_TOP_OR_LEFT, STAGE_TYPE_MAIN)); - options.add(new SplitPositionOption( - R.drawable.ic_split_screen, R.string.split_screen_position_right, - STAGE_POSITION_BOTTOM_OR_RIGHT, STAGE_TYPE_SIDE)); - return options; } @Override diff --git a/src/com/android/launcher3/touch/PortraitPagedViewHandler.java b/src/com/android/launcher3/touch/PortraitPagedViewHandler.java index 29be62733c..2ca0340ee7 100644 --- a/src/com/android/launcher3/touch/PortraitPagedViewHandler.java +++ b/src/com/android/launcher3/touch/PortraitPagedViewHandler.java @@ -306,16 +306,17 @@ public class PortraitPagedViewHandler implements PagedOrientationHandler { @Override public List getSplitPositionOptions(DeviceProfile dp) { - List options = new ArrayList<>(2); + List options = new ArrayList<>(1); // TODO: Add in correct icons - if (dp.isLandscape) { // or seascape + if (dp.isSeascape()) { // or seascape // Add left/right options + options.add(new SplitPositionOption( + R.drawable.ic_split_screen, R.string.split_screen_position_right, + STAGE_POSITION_TOP_OR_LEFT, STAGE_TYPE_MAIN)); + } else if (dp.isLandscape) { options.add(new SplitPositionOption( R.drawable.ic_split_screen, R.string.split_screen_position_left, STAGE_POSITION_TOP_OR_LEFT, STAGE_TYPE_MAIN)); - options.add(new SplitPositionOption( - R.drawable.ic_split_screen, R.string.split_screen_position_right, - STAGE_POSITION_BOTTOM_OR_RIGHT, STAGE_TYPE_SIDE)); } else { // Only add top option options.add(new SplitPositionOption( diff --git a/src/com/android/launcher3/touch/SeascapePagedViewHandler.java b/src/com/android/launcher3/touch/SeascapePagedViewHandler.java index b5252f73ea..bd6e31be02 100644 --- a/src/com/android/launcher3/touch/SeascapePagedViewHandler.java +++ b/src/com/android/launcher3/touch/SeascapePagedViewHandler.java @@ -20,7 +20,6 @@ import static com.android.launcher3.touch.SingleAxisSwipeDetector.HORIZONTAL; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_TYPE_MAIN; -import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_TYPE_SIDE; import android.content.res.Resources; import android.graphics.PointF; @@ -33,7 +32,7 @@ import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.util.SplitConfigurationOptions.SplitPositionOption; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; public class SeascapePagedViewHandler extends LandscapePagedViewHandler { @@ -96,15 +95,10 @@ public class SeascapePagedViewHandler extends LandscapePagedViewHandler { @Override public List getSplitPositionOptions(DeviceProfile dp) { - List options = new ArrayList<>(2); - // Add left/right options where left => position bottom, right => position top - options.add(new SplitPositionOption( - R.drawable.ic_split_screen, R.string.split_screen_position_left, - STAGE_POSITION_BOTTOM_OR_RIGHT, STAGE_TYPE_SIDE)); - options.add(new SplitPositionOption( + // Add "right" option which is actually the top + return Collections.singletonList(new SplitPositionOption( R.drawable.ic_split_screen, R.string.split_screen_position_right, STAGE_POSITION_TOP_OR_LEFT, STAGE_TYPE_MAIN)); - return options; } /* ---------- The following are only used by TaskViewTouchHandler. ---------- */