Skip to content

Commit 1bc04af

Browse files
author
Martin Styk
committed
Update kotlin and android target version
1 parent 5521615 commit 1bc04af

20 files changed

Lines changed: 58 additions & 82 deletions

File tree

.idea/deploymentTargetDropDown.xml

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/kotlinc.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/migrations.xml

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ android {
3131
buildFeatures {
3232
viewBinding = true
3333
dataBinding = true
34+
buildConfig = true
3435
}
3536
lint {
3637
disable += "MissingTranslation"

app/src/main/java/sk/styk/martin/apkanalyzer/dependencyinjection/ActivityCommonModule.kt

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,14 @@ import dagger.Provides
1111
import dagger.hilt.InstallIn
1212
import dagger.hilt.android.components.ActivityComponent
1313
import dagger.hilt.android.scopes.ActivityScoped
14+
import sk.styk.martin.apkanalyzer.core.common.coroutines.DispatcherProvider
1415
import sk.styk.martin.apkanalyzer.manager.analytics.AnalyticsTracker
1516
import sk.styk.martin.apkanalyzer.manager.analytics.FragmentScreenTracker
1617
import sk.styk.martin.apkanalyzer.manager.navigationdrawer.ForegroundFragmentWatcher
1718
import sk.styk.martin.apkanalyzer.manager.permission.PermissionManager
1819
import sk.styk.martin.apkanalyzer.manager.permission.PermissionsManagerImpl
1920
import sk.styk.martin.apkanalyzer.manager.promo.UserReviewManager
2021
import sk.styk.martin.apkanalyzer.manager.resources.ActivityColorThemeManager
21-
import sk.styk.martin.apkanalyzer.manager.resources.ColorThemeManager
22-
import sk.styk.martin.apkanalyzer.core.common.coroutines.DispatcherProvider
2322

2423
@InstallIn(ActivityComponent::class)
2524
@Module
@@ -51,14 +50,14 @@ class ActivityCommonModule {
5150

5251
@Provides
5352
@ActivityScoped
54-
fun provideColorThemeManager(activity: AppCompatActivity, applicationColorThemeManager: ColorThemeManager): ActivityColorThemeManager {
53+
fun provideColorThemeManager(activity: AppCompatActivity): ActivityColorThemeManager {
5554
val activityColorThemeManager: ActivityColorThemeManager =
5655
ViewModelProvider(
5756
activity,
5857
object : ViewModelProvider.Factory {
5958
override fun <T : ViewModel> create(modelClass: Class<T>): T {
6059
@Suppress("UNCHECKED_CAST")
61-
return ActivityColorThemeManager(applicationColorThemeManager) as T
60+
return ActivityColorThemeManager() as T
6261
}
6362
},
6463
)[ActivityColorThemeManager::class.java]

app/src/main/java/sk/styk/martin/apkanalyzer/dependencyinjection/ApplicationModule.kt

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import android.app.NotificationManager
55
import android.content.ContentResolver
66
import android.content.Context
77
import android.content.SharedPreferences
8-
import android.content.pm.PackageManager
98
import androidx.preference.PreferenceManager
109
import com.google.android.play.core.review.ReviewManager
1110
import com.google.android.play.core.review.ReviewManagerFactory
@@ -15,8 +14,6 @@ import dagger.Provides
1514
import dagger.hilt.InstallIn
1615
import dagger.hilt.android.qualifiers.ApplicationContext
1716
import dagger.hilt.components.SingletonComponent
18-
import sk.styk.martin.apkanalyzer.manager.resources.ColorThemeManager
19-
import sk.styk.martin.apkanalyzer.manager.resources.ColorThemeManagerImpl
2017
import javax.inject.Singleton
2118

2219
@InstallIn(SingletonComponent::class)
@@ -35,9 +32,6 @@ class ApplicationModule {
3532
fun provideNotificationManager(@ApplicationContext context: Context): NotificationManager =
3633
context.getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
3734

38-
@Provides
39-
fun provideColorThemeManagerImpl(colorThemeManagerImpl: ColorThemeManagerImpl): ColorThemeManager = colorThemeManagerImpl
40-
4135
@Provides
4236
fun provideFirebaseAnalytics(@ApplicationContext context: Context): FirebaseAnalytics = FirebaseAnalytics.getInstance(context)
4337

app/src/main/java/sk/styk/martin/apkanalyzer/manager/persistence/PersistenceManager.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ private const val APP_START_NUMBER = "app_start_number"
1010
class PersistenceManager @Inject constructor(
1111
private val sharedPreferences: SharedPreferences,
1212
) {
13-
1413
var isOnboardingRequired: Boolean
1514
get() = sharedPreferences.getBoolean(FIRST_APP_START, true)
1615
set(value) = sharedPreferences.edit().putBoolean(FIRST_APP_START, value).apply()

app/src/main/java/sk/styk/martin/apkanalyzer/manager/persistence/SettingsManager.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package sk.styk.martin.apkanalyzer.manager.persistence
33
import android.content.SharedPreferences
44
import javax.inject.Inject
55

6-
private const val DAY_NIGHT_KEY = "dayNightPref"
6+
const val DAY_NIGHT_KEY = "dayNightPref"
77

88
class SettingsManager @Inject constructor(
99
private val sharedPreferences: SharedPreferences,
@@ -17,7 +17,7 @@ class SettingsManager @Inject constructor(
1717
fun persist() = persisted
1818

1919
companion object {
20-
fun from(persisted: String) = values()
20+
fun from(persisted: String) = entries
2121
.firstOrNull { it.persisted == persisted }
2222
?: DEFAULT
2323
}

app/src/main/java/sk/styk/martin/apkanalyzer/manager/resources/ActivityColorThemeManager.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import androidx.lifecycle.ViewModel
66
import java.lang.ref.WeakReference
77
import javax.inject.Inject
88

9-
class ActivityColorThemeManager @Inject constructor(private val colorThemeManager: ColorThemeManager) : ViewModel(), ColorThemeManager by colorThemeManager {
9+
class ActivityColorThemeManager @Inject constructor() : ViewModel() {
1010

1111
private var activity: WeakReference<Activity>? = null
1212

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,19 @@
11
package sk.styk.martin.apkanalyzer.manager.resources
22

3-
interface ColorThemeManager {
3+
import androidx.appcompat.app.AppCompatDelegate
4+
import sk.styk.martin.apkanalyzer.manager.persistence.SettingsManager
5+
import javax.inject.Inject
6+
import javax.inject.Singleton
47

5-
fun setTheme()
8+
@Singleton
9+
class ColorThemeManager @Inject constructor(
10+
private val settingsManager: SettingsManager,
11+
) {
12+
fun setTheme() {
13+
when (settingsManager.colorScheme) {
14+
SettingsManager.ColorScheme.LIGHT -> AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO)
15+
SettingsManager.ColorScheme.DARK -> AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES)
16+
SettingsManager.ColorScheme.DEFAULT -> AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM)
17+
}
18+
}
619
}

0 commit comments

Comments
 (0)