diff --git a/build.gradle b/build.gradle index 55085ee20..ed94a62f8 100644 --- a/build.gradle +++ b/build.gradle @@ -129,6 +129,7 @@ dependencies { implementation 'androidx.documentfile:documentfile:1.0.1' implementation 'com.google.android.material:material:1.6.1' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' + implementation 'androidx.core:core-splashscreen:1.0.0' androidTestImplementation 'androidx.test:core:1.4.0' androidTestImplementation 'androidx.test.ext:junit:1.1.3' diff --git a/src/main/java/de/dennisguse/opentracks/TrackListActivity.java b/src/main/java/de/dennisguse/opentracks/TrackListActivity.java index d56282b1d..275829532 100644 --- a/src/main/java/de/dennisguse/opentracks/TrackListActivity.java +++ b/src/main/java/de/dennisguse/opentracks/TrackListActivity.java @@ -38,6 +38,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.widget.SearchView; import androidx.core.content.ContextCompat; +import androidx.core.splashscreen.SplashScreen; import androidx.cursoradapter.widget.ResourceCursorAdapter; import androidx.loader.app.LoaderManager; import androidx.loader.content.CursorLoader; @@ -158,8 +159,7 @@ public class TrackListActivity extends AbstractTrackDeleteActivity implements Co @Override protected void onCreate(Bundle savedInstanceState) { - // Reset theme after splash - setTheme(R.style.ThemeCustom); + SplashScreen.installSplashScreen(this); super.onCreate(savedInstanceState); setDefaultKeyMode(DEFAULT_KEYS_SEARCH_LOCAL); diff --git a/src/main/java/de/dennisguse/opentracks/publicapi/AbstractAPIActivity.java b/src/main/java/de/dennisguse/opentracks/publicapi/AbstractAPIActivity.java index a4f6a72a8..5684e0bcf 100644 --- a/src/main/java/de/dennisguse/opentracks/publicapi/AbstractAPIActivity.java +++ b/src/main/java/de/dennisguse/opentracks/publicapi/AbstractAPIActivity.java @@ -6,6 +6,7 @@ import android.widget.Toast; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; +import androidx.core.splashscreen.SplashScreen; import de.dennisguse.opentracks.R; import de.dennisguse.opentracks.services.TrackRecordingService; @@ -30,7 +31,10 @@ public abstract class AbstractAPIActivity extends AppCompatActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { + SplashScreen splashScreen = SplashScreen.installSplashScreen(this); super.onCreate(savedInstanceState); + splashScreen.setKeepOnScreenCondition(() -> true ); + if (PreferencesUtils.isPublicAPIenabled()) { Log.i(TAG, "Received and trying to execute requested action."); new TrackRecordingServiceConnection(serviceConnectedCallback) diff --git a/src/main/res/drawable/ic_logo_color_splashscreen.xml b/src/main/res/drawable/ic_logo_color_splashscreen.xml new file mode 100644 index 000000000..c377f4ff2 --- /dev/null +++ b/src/main/res/drawable/ic_logo_color_splashscreen.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + diff --git a/src/main/res/drawable/splashscreen.xml b/src/main/res/drawable/splashscreen.xml deleted file mode 100644 index b1831ec27..000000000 --- a/src/main/res/drawable/splashscreen.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/src/main/res/values/themes_custom.xml b/src/main/res/values/themes_custom.xml index 8d73ea2d1..f0c68ba13 100644 --- a/src/main/res/values/themes_custom.xml +++ b/src/main/res/values/themes_custom.xml @@ -59,10 +59,11 @@ limitations under the License. ?attr/colorSecondary -