mirror of
https://github.com/mueller-ma/PrepaidBalance.git
synced 2024-09-20 00:12:15 +02:00
parent
593161e76f
commit
d47c25247a
@ -73,6 +73,7 @@ dependencies {
|
||||
implementation "androidx.room:room-ktx:$room_version"
|
||||
kapt "androidx.room:room-compiler:$room_version"
|
||||
implementation "com.mikepenz:aboutlibraries:$about_libraries_version"
|
||||
implementation "androidx.core:core-splashscreen:1.0.0"
|
||||
|
||||
testImplementation "junit:junit:4.13.2"
|
||||
androidTestImplementation "androidx.test.ext:junit:1.1.3"
|
||||
|
@ -10,7 +10,7 @@
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
android:label="@string/app_name"
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/Theme.App">
|
||||
android:theme="@style/Theme.App.Starting">
|
||||
<activity
|
||||
android:name="com.github.muellerma.prepaidbalance.ui.MainActivity"
|
||||
android:exported="true">
|
||||
|
@ -13,6 +13,7 @@ import androidx.annotation.StringRes
|
||||
import androidx.appcompat.app.AlertDialog
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.core.content.edit
|
||||
import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen
|
||||
import androidx.core.view.isVisible
|
||||
import androidx.preference.PreferenceManager
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
@ -36,6 +37,7 @@ class MainActivity : AppCompatActivity(), CoroutineScope, SwipeRefreshLayout.OnR
|
||||
override val coroutineContext: CoroutineContext get() = Dispatchers.IO + Job()
|
||||
private lateinit var binding: ActivityMainBinding
|
||||
private lateinit var database: AppDatabase
|
||||
private var databaseLoaded = false
|
||||
private val requestPermissionLauncher = registerForActivityResult(
|
||||
ActivityResultContracts.RequestPermission()
|
||||
) { isGranted: Boolean ->
|
||||
@ -48,8 +50,10 @@ class MainActivity : AppCompatActivity(), CoroutineScope, SwipeRefreshLayout.OnR
|
||||
}
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
val splashScreen = installSplashScreen()
|
||||
super.onCreate(savedInstanceState)
|
||||
Log.d(TAG, "onCreate()")
|
||||
splashScreen.setKeepOnScreenCondition { !databaseLoaded }
|
||||
binding = ActivityMainBinding.inflate(layoutInflater)
|
||||
setContentView(binding.root)
|
||||
|
||||
@ -73,11 +77,11 @@ class MainActivity : AppCompatActivity(), CoroutineScope, SwipeRefreshLayout.OnR
|
||||
Log.d(TAG, "updateBalanceList()")
|
||||
launch {
|
||||
val entries = database.balanceDao().getAll()
|
||||
|
||||
Handler(Looper.getMainLooper()).post {
|
||||
(binding.list.adapter as BalanceListAdapter).balances = entries
|
||||
binding.list.isVisible = entries.isNotEmpty()
|
||||
binding.hint.isVisible = entries.isEmpty()
|
||||
databaseLoaded = true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<style name="Theme.App" parent="Theme.Material3.DayNight">
|
||||
<item name="colorPrimary">@color/golden</item>
|
||||
<item name="colorPrimaryContainer">@color/dark_golden</item>
|
||||
@ -17,4 +18,10 @@
|
||||
<item name="android:statusBarColor">?android:windowBackgroundFallback</item>
|
||||
<item name="android:navigationBarColor">?android:windowBackgroundFallback</item>
|
||||
</style>
|
||||
|
||||
<style name="Theme.App.Starting" parent="Theme.SplashScreen">
|
||||
<item name="windowSplashScreenAnimatedIcon">@drawable/ic_launcher_foreground</item>
|
||||
<item name="postSplashScreenTheme">@style/Theme.App</item>
|
||||
</style>
|
||||
|
||||
</resources>
|
Loading…
Reference in New Issue
Block a user