diff options
Diffstat (limited to 'packages')
3 files changed, 21 insertions, 18 deletions
diff --git a/packages/SystemUI/res/values-sw720dp/config.xml b/packages/SystemUI/res/values-sw720dp/config.xml index d8bb8d7d..fbc0d1d 100644 --- a/packages/SystemUI/res/values-sw720dp/config.xml +++ b/packages/SystemUI/res/values-sw720dp/config.xml @@ -39,5 +39,8 @@ <!-- The maximum count of notifications on Keyguard. The rest will be collapsed in an overflow card. --> <integer name="keyguard_max_notification_count">5</integer> + + <!-- Transposes the recents layout in landscape. --> + <bool name="recents_transpose_layout_with_orientation">false</bool> </resources> diff --git a/packages/SystemUI/src/com/android/systemui/recents/RecentsConfiguration.java b/packages/SystemUI/src/com/android/systemui/recents/RecentsConfiguration.java index 980a4ae..dabeadf 100644 --- a/packages/SystemUI/src/com/android/systemui/recents/RecentsConfiguration.java +++ b/packages/SystemUI/src/com/android/systemui/recents/RecentsConfiguration.java @@ -37,8 +37,6 @@ public class RecentsConfiguration { static RecentsConfiguration sInstance; static int sPrevConfigurationHashCode; - DisplayMetrics mDisplayMetrics; - /** Animations */ public float animationPxMovementPerSecond; @@ -156,7 +154,6 @@ public class RecentsConfiguration { SharedPreferences settings = context.getSharedPreferences(context.getPackageName(), 0); Resources res = context.getResources(); DisplayMetrics dm = res.getDisplayMetrics(); - mDisplayMetrics = dm; // Debug mode debugModeEnabled = settings.getBoolean(Constants.Values.App.Key_DebugModeEnabled, false); @@ -164,6 +161,15 @@ public class RecentsConfiguration { Console.Enabled = true; } + // Layout + isLandscape = res.getConfiguration().orientation == + Configuration.ORIENTATION_LANDSCAPE; + transposeRecentsLayoutWithOrientation = + res.getBoolean(R.bool.recents_transpose_layout_with_orientation); + + // Insets + displayRect.set(0, 0, dm.widthPixels, dm.heightPixels); + // Animations animationPxMovementPerSecond = res.getDimensionPixelSize(R.dimen.recents_animation_movement_in_dps_per_second); @@ -174,15 +180,6 @@ public class RecentsConfiguration { filteringNewViewsAnimDuration = res.getInteger(R.integer.recents_filter_animate_new_views_duration); - // Insets - displayRect.set(0, 0, dm.widthPixels, dm.heightPixels); - - // Layout - isLandscape = res.getConfiguration().orientation == - Configuration.ORIENTATION_LANDSCAPE; - transposeRecentsLayoutWithOrientation = - res.getBoolean(R.bool.recents_transpose_layout_with_orientation); - // Search Bar searchBarSpaceHeightPx = res.getDimensionPixelSize(R.dimen.recents_search_bar_space_height); searchBarAppWidgetId = settings.getInt(Constants.Values.App.Key_SearchAppWidgetId, -1); diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackViewLayoutAlgorithm.java b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackViewLayoutAlgorithm.java index 633e6fa..6c8de72 100644 --- a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackViewLayoutAlgorithm.java +++ b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackViewLayoutAlgorithm.java @@ -60,8 +60,6 @@ public class TaskStackViewLayoutAlgorithm { public TaskStackViewLayoutAlgorithm(RecentsConfiguration config) { mConfig = config; - mWithinAffiliationOffset = mConfig.taskBarHeight; - mBetweenAffiliationOffset = 4 * mConfig.taskBarHeight; // Precompute the path initializeCurve(); @@ -84,6 +82,11 @@ public class TaskStackViewLayoutAlgorithm { int left = mStackRect.left + (mStackRect.width() - size) / 2; mTaskRect.set(left, mStackRect.top, left + size, mStackRect.top + size); + + // Update the affiliation offsets + float visibleTaskPct = 0.55f; + mWithinAffiliationOffset = mConfig.taskBarHeight; + mBetweenAffiliationOffset = (int) (visibleTaskPct * mTaskRect.height()); } /** Computes the minimum and maximum scroll progress values. This method may be called before @@ -110,8 +113,7 @@ public class TaskStackViewLayoutAlgorithm { screenYToCurveProgress(mStackVisibleRect.bottom - (mStackVisibleRect.bottom - mStackRect.bottom)); // Update the task offsets - float pAtBackMostCardTop = screenYToCurveProgress(mStackVisibleRect.top + - (mStackVisibleRect.height() - taskHeight) / 2); + float pAtBackMostCardTop = 0.5f; float pAtFrontMostCardTop = pAtBackMostCardTop; float pAtSecondFrontMostCardTop = pAtBackMostCardTop; int taskCount = tasks.size(); @@ -128,14 +130,15 @@ public class TaskStackViewLayoutAlgorithm { } } - mMinScrollP = 0f; mMaxScrollP = pAtFrontMostCardTop - ((1f - pTaskHeightOffset - pNavBarOffset)); + mMinScrollP = tasks.size() == 1 ? Math.max(mMaxScrollP, 0f) : 0f; if (launchedWithAltTab) { // Center the second most task, since that will be focused first mInitialScrollP = pAtSecondFrontMostCardTop - 0.5f; } else { - mInitialScrollP = pAtSecondFrontMostCardTop - ((1f - pTaskHeightOffset - pNavBarOffset)); + mInitialScrollP = pAtFrontMostCardTop - 0.825f; } + mInitialScrollP = Math.max(0, mInitialScrollP); } /** Update/get the transform */ |