From 1dff1c3fe833f5b690ad6324914f5dff7813fb11 Mon Sep 17 00:00:00 2001 From: Charles Lombardo Date: Tue, 19 Jul 2022 00:23:57 -0400 Subject: [PATCH] Android: Add Androidx splash screen to wait for directory initialization --- Source/Android/app/build.gradle | 1 + .../Android/app/src/main/AndroidManifest.xml | 6 +++--- .../dolphinemu/ui/main/MainActivity.java | 5 +++++ .../src/main/res/drawable-hdpi/ic_dolphin.png | Bin 2037 -> 0 bytes .../main/res/drawable-xhdpi/ic_dolphin.png | Bin 2692 -> 0 bytes .../main/res/drawable-xxhdpi/ic_dolphin.png | Bin 4122 -> 0 bytes .../app/src/main/res/drawable/ic_dolphin.xml | 20 ++++++++++++++++++ .../app/src/main/res/values-night/colors.xml | 2 ++ .../app/src/main/res/values/colors.xml | 2 ++ .../app/src/main/res/values/themes.xml | 6 ++++++ 10 files changed, 39 insertions(+), 3 deletions(-) delete mode 100644 Source/Android/app/src/main/res/drawable-hdpi/ic_dolphin.png delete mode 100644 Source/Android/app/src/main/res/drawable-xhdpi/ic_dolphin.png delete mode 100644 Source/Android/app/src/main/res/drawable-xxhdpi/ic_dolphin.png create mode 100644 Source/Android/app/src/main/res/drawable/ic_dolphin.xml diff --git a/Source/Android/app/build.gradle b/Source/Android/app/build.gradle index 72779c3fb5..525c7be0fd 100644 --- a/Source/Android/app/build.gradle +++ b/Source/Android/app/build.gradle @@ -103,6 +103,7 @@ dependencies { implementation 'androidx.fragment:fragment:1.4.1' implementation 'androidx.slidingpanelayout:slidingpanelayout:1.2.0' implementation 'com.google.android.material:material:1.6.0' + implementation 'androidx.core:core-splashscreen:1.0.0' // Android TV UI libraries. implementation 'androidx.leanback:leanback:1.0.0' diff --git a/Source/Android/app/src/main/AndroidManifest.xml b/Source/Android/app/src/main/AndroidManifest.xml index 78bd53c35f..e1352b47c2 100644 --- a/Source/Android/app/src/main/AndroidManifest.xml +++ b/Source/Android/app/src/main/AndroidManifest.xml @@ -49,13 +49,13 @@ + android:theme="@style/Theme.Dolphin.Splash"> - + - + diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/MainActivity.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/MainActivity.java index 1224fa0397..c0238617f9 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/MainActivity.java +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/MainActivity.java @@ -14,6 +14,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; +import androidx.core.splashscreen.SplashScreen; import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; import androidx.viewpager.widget.ViewPager; @@ -55,6 +56,10 @@ public final class MainActivity extends AppCompatActivity @Override protected void onCreate(Bundle savedInstanceState) { + SplashScreen splashScreen = SplashScreen.installSplashScreen(this); + splashScreen.setKeepOnScreenCondition( + () -> !DirectoryInitialization.areDolphinDirectoriesReady()); + super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); diff --git a/Source/Android/app/src/main/res/drawable-hdpi/ic_dolphin.png b/Source/Android/app/src/main/res/drawable-hdpi/ic_dolphin.png deleted file mode 100644 index e50a86dac11e7aa333882860ded133bc4bcfe012..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2037 zcmV9PdauKx`#yHCSYd=cJ( zSKt$L72fhI@DN^r)6Rcjy(R;-7sjH(xT7%WC4Fh!^Z!j-LuG$M=i^A%O$G$RdR00a z9J`CwsnD)8q_j=L#1^qnTv)O4ZDeT*dNk=@?xo6)IYKX+3Ez+#Xql)+t7PO_EfQ4l z54#1&ZGV$#aVR|`6dJ?($YHzTcQlWCt}}1z6r5?3hA#o=vEqh;?m+s}pr;gdmnOnb zaT_fXQ7Ec+_zoJKe3WIHR*5*K?0~H-pn#N## z^EixX8i$T8<~51JAkse4_3Y}cyF3Nd z!%vfZS&`CH;81?-(I*X*&&eR@RO4_wY8-*NUBgknz!%I67?bhs$cW92B5+Gv{SB${ z%zjMgOuDC8M2ZT7-qKZ`vO8#S5?SfbrjhVsMF5#mo;09gI1;tR;;`*J^m|C3Fute{ zD|7(8+KZCU*FOR1loJ0ok1qNp7JyzOCAv}!$?wMGvi}+k`^r^}FCJCM!%J@Ky!RUF z9fwx=A5+uTK4}e2;8Ur^exa_to93%vx>izGkEUY+C%P9y*C$D#q&<}GXSzS0j@?** z$d1j0KFcG`kHfJ3aSZi8j_Ys6<|eug;{hRR%`UvKC_U`Zx4wtf@H+~va@cVN^peoy zi@9J>X2fCo$e=`}$q}eBJsMSK#BkD_SDq4q3geZO<_L`Y2Sbl1dgJq$=n9!Aq2mb6 z2irVArkMI4gW}Ej+$HxYu23>bFt`vtO2DA<++ z&iik}dfge+T#$mYBaf2NB9Kuk>RrcJcS%3iE39npLWY6=Va)YC0`<#!T!nXG)Ia1Y zD6vy)1_A1{)=tX+;vRtRVw_wmm zev9>zxUvEvK-7+gg32T4IlK-cr+VzIz*#Q^lIVES`yj&Tn7}>Di(JJIQG017wSF+D zM?I$Dw~_IrmMn)*{p~20`!CD0*>nkd0iq1nU!MPMh*9srIH!I0;28pKQjyZULa~L8 zV|+r<);|nZKJhSO@8Ev~RXsy-gUhE&PW$gEsjNt^5IoTK+&%C)%zpU?CW8)gMm?aR zvWN{oUXJAe%HQUVa>?*txjAnW%P;0DPv3G60^U+E{`LsLIKL3&YCG>4jNx2Y?3i=98T6nAr1BoUC`U~TML5XhFIj$Y zm8!41$pN=OsNLmIdIaJ-Ej=X16DO5(h$~NWrCl%IO+BN+AzKF0!rE3>@fA;(t~*cdX#g%tqq zVW{CMMJ5UF%4W+=Fupj3^%GQQI&e{-3ccJQHyMKR3w(dh#52}i?9DzTs3(;rlYVp(;V}s>g-hf{{{aKtgo~Z z%LXqw>QGs~I0^Bn+PsVxo6Vltzc87zlB?5Z+dUZclpSFoA}#`$I|?y}lV8k>9EkbMqN&#Y2$YT{lNAoXY2Kn>EuejlFISo}8_pFY-nE&$N8ocnJnmIG|| zVwufO6-)*n{zLQoUI}mG6NEB0JCRvq$r;cp$kURf1k0UhX1P_ZG9Gj!f@!A&i|yD{ zW$s^~eUYD*$0g7(t6{p~*)@YcA?uiSN-*7sQ57bo+|c~zpaiX31mkMUu4U53@hhgC z5=__QE90Tc-K+%Nd#EyF6UD3q-IN}i*ns`l9vlk*0000C^0%JD?g{_^003YMJ)%D| TqiGX%00000NkvXXu0mjfJv86; diff --git a/Source/Android/app/src/main/res/drawable-xhdpi/ic_dolphin.png b/Source/Android/app/src/main/res/drawable-xhdpi/ic_dolphin.png deleted file mode 100644 index f20aa29c6ab0d5091fa39138ff35888b9abbcdb8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2692 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 + + + + + + + + + + diff --git a/Source/Android/app/src/main/res/values-night/colors.xml b/Source/Android/app/src/main/res/values-night/colors.xml index 8db7ef7bc5..d792ba7d42 100644 --- a/Source/Android/app/src/main/res/values-night/colors.xml +++ b/Source/Android/app/src/main/res/values-night/colors.xml @@ -4,6 +4,8 @@ #2196f3 #FFFFFF + #1A1C1E + #444444 #36ff0000 diff --git a/Source/Android/app/src/main/res/values/colors.xml b/Source/Android/app/src/main/res/values/colors.xml index 46bb372e2c..e6dc65f906 100644 --- a/Source/Android/app/src/main/res/values/colors.xml +++ b/Source/Android/app/src/main/res/values/colors.xml @@ -4,6 +4,8 @@ #21b0f3 #ffffff + #FDFCFF + #444444 #36ff0000 diff --git a/Source/Android/app/src/main/res/values/themes.xml b/Source/Android/app/src/main/res/values/themes.xml index 110242a302..5b9dd6859d 100644 --- a/Source/Android/app/src/main/res/values/themes.xml +++ b/Source/Android/app/src/main/res/values/themes.xml @@ -1,5 +1,11 @@ + +