Fix ugly flash between boot animation and setup wizard (1/2)
When FallbackHome is displayed before the setup wizard, we need to
match the last frame of the boot animation in FallbackHome.
Bug: 29054814
Change-Id: I4f0096d398341c3749820177cebc26dea85cea05
diff --git a/res/drawable/fallback_home_unprovisioned_background.xml b/res/drawable/fallback_home_unprovisioned_background.xml
new file mode 100644
index 0000000..9ec3874
--- /dev/null
+++ b/res/drawable/fallback_home_unprovisioned_background.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+
+<color xmlns:android="http://schemas.android.com/apk/res/android"
+ android:color="#000000" />
\ No newline at end of file
diff --git a/res/values/themes.xml b/res/values/themes.xml
index 43bb55c..e09a02d 100644
--- a/res/values/themes.xml
+++ b/res/values/themes.xml
@@ -293,4 +293,13 @@
<item name="android:navigationBarColor">#00000000</item>
</style>
+ <style name="FallbackHome.SetupWizard" parent="@android:style/Theme.Material.NoActionBar.Fullscreen">
+ <item name="android:windowBackground">@drawable/fallback_home_unprovisioned_background</item>
+ <item name="android:colorBackgroundCacheHint">@null</item>
+ <item name="android:windowNoTitle">true</item>
+ <item name="android:windowDrawsSystemBarBackgrounds">true</item>
+ <item name="android:statusBarColor">#00000000</item>
+ <item name="android:navigationBarColor">#00000000</item>
+ </style>
+
</resources>
diff --git a/src/com/android/settings/FallbackHome.java b/src/com/android/settings/FallbackHome.java
index deb01a1..158f672 100644
--- a/src/com/android/settings/FallbackHome.java
+++ b/src/com/android/settings/FallbackHome.java
@@ -28,6 +28,7 @@
import android.os.UserManager;
import android.provider.Settings;
import android.util.Log;
+import android.view.View;
import java.util.Objects;
@@ -42,7 +43,9 @@
// we don't flash the wallpaper before SUW
if (Settings.Global.getInt(getContentResolver(),
Settings.Global.DEVICE_PROVISIONED, 0) == 0) {
- setTheme(android.R.style.Theme_Black_NoTitleBar_Fullscreen);
+ setTheme(R.style.FallbackHome_SetupWizard);
+ getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN
+ | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
}
registerReceiver(mReceiver, new IntentFilter(Intent.ACTION_USER_UNLOCKED));