Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 286fc215 authored by Tony Wickham's avatar Tony Wickham
Browse files

Fix 3 button mode issues in AllSetActivity

- Set system bars appearance to light/dark depending on device
  theme to ensure visibility
- Also fix issue where taskbar icons would appear partially
  offscreen and prevent pressing nav buttons if you rotated

Fixes: 293438087
Test: adb shell am start -a android.intent.action.MAIN -n com.google.android.setupwizard/.SetupWizardTestActivity
  - Skip to the end (AllSetActivity), and ensure 3 buttons are visible
  - Rotate device and ensure 3 buttons are still visible and functional
  - Will also flash / wipe to the build once it's created
Flag: None
Change-Id: Ie2d9bf1e1d95a6ccbd1f9c592adb51390b21ad85
parent bcac59d6
Loading
Loading
Loading
Loading
+19 −1
Original line number Diff line number Diff line
@@ -15,6 +15,9 @@
 */
package com.android.quickstep.interaction;

import static android.view.WindowInsetsController.APPEARANCE_LIGHT_NAVIGATION_BARS;
import static android.view.WindowInsetsController.APPEARANCE_LIGHT_STATUS_BARS;

import static com.android.app.animation.Interpolators.FAST_OUT_SLOW_IN;
import static com.android.app.animation.Interpolators.LINEAR;
import static com.android.launcher3.Utilities.mapBoundToRange;
@@ -47,6 +50,8 @@ import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.view.View.AccessibilityDelegate;
import android.view.Window;
import android.view.WindowInsetsController;
import android.view.accessibility.AccessibilityNodeInfo;
import android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction;
import android.widget.ImageView;
@@ -121,6 +126,17 @@ public class AllSetActivity extends Activity {
        Resources resources = getResources();
        int mode = resources.getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
        boolean isDarkTheme = mode == Configuration.UI_MODE_NIGHT_YES;

        int systemBarsMask = APPEARANCE_LIGHT_STATUS_BARS | APPEARANCE_LIGHT_NAVIGATION_BARS;
        int systemBarsAppearance = isDarkTheme ? 0 : systemBarsMask;
        Window window = getWindow();
        WindowInsetsController insetsController = window == null
                ? null
                : window.getInsetsController();
        if (insetsController != null) {
            insetsController.setSystemBarsAppearance(systemBarsAppearance, systemBarsMask);
        }

        Intent intent = getIntent();
        int accentColor = intent.getIntExtra(
                isDarkTheme ? EXTRA_ACCENT_COLOR_DARK_MODE : EXTRA_ACCENT_COLOR_LIGHT_MODE,
@@ -299,8 +315,10 @@ public class AllSetActivity extends Activity {
        if (mBackgroundAnimatorListener != null) {
            mAnimatedBackground.removeAnimatorListener(mBackgroundAnimatorListener);
        }
        if (!isChangingConfigurations()) {
            dispatchLauncherAnimStartEnd();
        }
    }

    private AnimatedFloat createSwipeUpProxy(GestureState state) {
        if (state.getTopRunningTaskId() != getTaskId()) {