diff --git a/app/build.gradle b/app/build.gradle index 60674706e..452bdb5ca 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -230,6 +230,7 @@ dependencies { implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.0' implementation 'androidx.recyclerview:recyclerview:1.2.1' implementation "androidx.security:security-crypto-ktx:1.1.0-alpha03" + implementation 'androidx.core:core-splashscreen:1.0.0-alpha02' implementation 'com.google.android.material:material:1.4.0' implementation 'com.google.android.flexbox:flexbox:3.0.0' diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 7fb8213c6..431fad6d6 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -39,29 +39,24 @@ android:label="${appLabel}" android:roundIcon="@mipmap/ic_launcher_round" android:extractNativeLibs="${extractNativeLibs}" - android:theme="@style/AppTheme" + android:theme="@style/AppSplashScreenTheme" android:allowNativeHeapPointerTagging="false"> - - - - - - - - + + + + + + + diff --git a/app/src/main/java/org/linphone/activities/launcher/LauncherActivity.kt b/app/src/main/java/org/linphone/activities/launcher/LauncherActivity.kt deleted file mode 100644 index d8a206adf..000000000 --- a/app/src/main/java/org/linphone/activities/launcher/LauncherActivity.kt +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (c) 2010-2020 Belledonne Communications SARL. - * - * This file is part of linphone-android - * (see https://www.linphone.org). - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package org.linphone.activities.launcher - -import android.content.Intent -import android.os.Bundle -import org.linphone.LinphoneApplication.Companion.coreContext -import org.linphone.LinphoneApplication.Companion.corePreferences -import org.linphone.R -import org.linphone.activities.GenericActivity -import org.linphone.activities.main.MainActivity -import org.linphone.core.tools.Log - -class LauncherActivity : GenericActivity() { - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - - setContentView(R.layout.launcher_activity) - } - - override fun onStart() { - super.onStart() - coreContext.handler.postDelayed({ onReady() }, 500) - } - - private fun onReady() { - Log.i("[Launcher] Core is ready") - - if (corePreferences.preventInterfaceFromShowingUp) { - Log.w("[Context] We were asked to not show the user interface") - finish() - return - } - - val intent = Intent() - intent.setClass(this, MainActivity::class.java) - - // Propagate current intent action, type and data - if (getIntent() != null) { - val extras = getIntent().extras - if (extras != null) intent.putExtras(extras) - } - intent.action = getIntent().action - intent.type = getIntent().type - intent.data = getIntent().data - - startActivity(intent) - if (corePreferences.enableAnimations) { - overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out) - } - } -} diff --git a/app/src/main/java/org/linphone/activities/main/MainActivity.kt b/app/src/main/java/org/linphone/activities/main/MainActivity.kt index bd2aabd1e..6a9771e31 100644 --- a/app/src/main/java/org/linphone/activities/main/MainActivity.kt +++ b/app/src/main/java/org/linphone/activities/main/MainActivity.kt @@ -30,6 +30,7 @@ import android.view.Gravity import android.view.MotionEvent import android.view.View import android.view.inputmethod.InputMethodManager +import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen import androidx.core.view.ViewCompat import androidx.core.view.WindowInsetsCompat import androidx.databinding.DataBindingUtil @@ -112,6 +113,8 @@ class MainActivity : GenericActivity(), SnackBarActivity, NavController.OnDestin override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + val splashScreen = installSplashScreen() + binding = DataBindingUtil.setContentView(this, R.layout.main_activity) binding.lifecycleOwner = this diff --git a/app/src/main/res/drawable/launch_screen.xml b/app/src/main/res/drawable/launch_screen.xml deleted file mode 100644 index 5a3965dfc..000000000 --- a/app/src/main/res/drawable/launch_screen.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/vector_linphone_logo.xml b/app/src/main/res/drawable/vector_linphone_logo.xml new file mode 100644 index 000000000..9c1d994f9 --- /dev/null +++ b/app/src/main/res/drawable/vector_linphone_logo.xml @@ -0,0 +1,20 @@ + + + + + diff --git a/app/src/main/res/layout/launcher_activity.xml b/app/src/main/res/layout/launcher_activity.xml deleted file mode 100644 index 5efc4c664..000000000 --- a/app/src/main/res/layout/launcher_activity.xml +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/values-night/styles.xml b/app/src/main/res/values-night/styles.xml index 6933329f9..83cce0c6d 100644 --- a/app/src/main/res/values-night/styles.xml +++ b/app/src/main/res/values-night/styles.xml @@ -4,7 +4,7 @@ +