Skip to content

Commit

Permalink
Move QuickButtonPrefs files to new package
Browse files Browse the repository at this point in the history
  • Loading branch information
jkuester committed Jan 25, 2025
1 parent 592dc54 commit 0ce0399
Show file tree
Hide file tree
Showing 7 changed files with 29 additions and 39 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,15 @@ package com.jkuester.unlauncher.datasource
import android.content.Context
import androidx.datastore.core.DataStore
import androidx.datastore.dataStore
import com.jkuester.unlauncher.datasource.quickbuttonprefs.QuickButtonPreferencesMigrations
import com.jkuester.unlauncher.datasource.quickbuttonprefs.QuickButtonPreferencesSerializer
import com.jkuester.unlauncher.datastore.CorePreferences
import com.jkuester.unlauncher.datastore.QuickButtonPreferences
import com.jkuester.unlauncher.datastore.UnlauncherApps
import com.sduduzog.slimlauncher.datasource.apps.UnlauncherAppsMigrations
import com.sduduzog.slimlauncher.datasource.apps.UnlauncherAppsSerializer
import com.sduduzog.slimlauncher.datasource.coreprefs.CorePreferencesMigrations
import com.sduduzog.slimlauncher.datasource.coreprefs.CorePreferencesSerializer
import com.sduduzog.slimlauncher.datasource.quickbuttonprefs.QuickButtonPreferencesMigrations
import com.sduduzog.slimlauncher.datasource.quickbuttonprefs.QuickButtonPreferencesSerializer
import dagger.Module
import dagger.Provides
import dagger.hilt.InstallIn
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.sduduzog.slimlauncher.datasource.quickbuttonprefs
package com.jkuester.unlauncher.datasource.quickbuttonprefs

import android.content.Context
import androidx.datastore.core.DataMigration
Expand Down Expand Up @@ -46,15 +46,14 @@ class QuickButtonPreferencesMigrations {
prefBuilder.build()
},
object : DataMigration<QuickButtonPreferences> {
override suspend fun shouldMigrate(currentData: QuickButtonPreferences): Boolean {
return !QuickButtonPreferencesRepository.RES_BY_ICON.keys.containsAll(
override suspend fun shouldMigrate(currentData: QuickButtonPreferences): Boolean =
!QuickButtonPreferencesRepository.RES_BY_ICON.keys.containsAll(
listOf(
currentData.leftButton.iconId,
currentData.centerButton.iconId,
currentData.rightButton.iconId
)
)
}

override suspend fun migrate(
currentData: QuickButtonPreferences
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.sduduzog.slimlauncher.datasource.quickbuttonprefs
package com.jkuester.unlauncher.datasource.quickbuttonprefs

import android.app.Activity
import android.util.Log
Expand Down Expand Up @@ -58,39 +58,30 @@ class QuickButtonPreferencesRepository @Inject constructor(
quickButtonPreferencesFlow.first()
}

fun updateLeftIconId(iconId: Int) {
fun updateAsync(transform: suspend (t: QuickButtonPreferences) -> QuickButtonPreferences) {
lifecycleScope.launch {
quickButtonPreferencesStore.updateData { currentPreferences ->
currentPreferences.toBuilder()
.setLeftButton(
currentPreferences.leftButton.toBuilder().setIconId(iconId).build()
)
.build()
}
quickButtonPreferencesStore.updateData(transform)
}
}

fun updateCenterIconId(iconId: Int) {
lifecycleScope.launch {
quickButtonPreferencesStore.updateData { currentPreferences ->
currentPreferences.toBuilder()
.setCenterButton(
currentPreferences.centerButton.toBuilder().setIconId(iconId).build()
)
.build()
}
}
fun updateLeftIconId(iconId: Int) = this.updateAsync { currentPreferences ->
currentPreferences
.toBuilder()
.setLeftButton(currentPreferences.leftButton.toBuilder().setIconId(iconId).build())
.build()
}

fun updateRightIconId(iconId: Int) {
lifecycleScope.launch {
quickButtonPreferencesStore.updateData { currentPreferences ->
currentPreferences.toBuilder()
.setRightButton(
currentPreferences.rightButton.toBuilder().setIconId(iconId).build()
)
.build()
}
}
fun updateCenterIconId(iconId: Int) = this.updateAsync { currentPreferences ->
currentPreferences
.toBuilder()
.setCenterButton(currentPreferences.centerButton.toBuilder().setIconId(iconId).build())
.build()
}

fun updateRightIconId(iconId: Int) = this.updateAsync { currentPreferences ->
currentPreferences
.toBuilder()
.setRightButton(currentPreferences.rightButton.toBuilder().setIconId(iconId).build())
.build()
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.sduduzog.slimlauncher.datasource.quickbuttonprefs
package com.jkuester.unlauncher.datasource.quickbuttonprefs

import androidx.datastore.core.CorruptionException
import androidx.datastore.core.Serializer
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ import android.app.Dialog
import android.content.DialogInterface
import android.os.Bundle
import androidx.fragment.app.DialogFragment
import com.jkuester.unlauncher.datasource.quickbuttonprefs.QuickButtonPreferencesRepository
import com.sduduzog.slimlauncher.R
import com.sduduzog.slimlauncher.datasource.quickbuttonprefs.QuickButtonPreferencesRepository

class ChooseQuickButtonDialog(
private val repo: QuickButtonPreferencesRepository,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ import androidx.fragment.app.viewModels
import androidx.lifecycle.lifecycleScope
import androidx.navigation.Navigation
import androidx.recyclerview.widget.LinearLayoutManager
import com.jkuester.unlauncher.datasource.quickbuttonprefs.QuickButtonPreferencesRepository
import com.jkuester.unlauncher.datastore.ClockType
import com.jkuester.unlauncher.datastore.SearchBarPosition
import com.jkuester.unlauncher.datastore.UnlauncherApp
Expand All @@ -45,7 +46,6 @@ import com.sduduzog.slimlauncher.databinding.HomeFragmentContentBinding
import com.sduduzog.slimlauncher.databinding.HomeFragmentDefaultBinding
import com.sduduzog.slimlauncher.datasource.apps.UnlauncherAppsRepository
import com.sduduzog.slimlauncher.datasource.coreprefs.CorePreferencesRepository
import com.sduduzog.slimlauncher.datasource.quickbuttonprefs.QuickButtonPreferencesRepository
import com.sduduzog.slimlauncher.models.HomeApp
import com.sduduzog.slimlauncher.models.MainViewModel
import com.sduduzog.slimlauncher.ui.dialogs.RenameAppDisplayNameDialog
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import com.jkuester.unlauncher.datasource.quickbuttonprefs.QuickButtonPreferencesRepository
import com.sduduzog.slimlauncher.R
import com.sduduzog.slimlauncher.databinding.CustomizeQuickButtonsFragmentBinding
import com.sduduzog.slimlauncher.datasource.quickbuttonprefs.QuickButtonPreferencesRepository
import com.sduduzog.slimlauncher.ui.dialogs.ChooseQuickButtonDialog
import com.sduduzog.slimlauncher.utils.BaseFragment
import dagger.hilt.android.AndroidEntryPoint
Expand Down

0 comments on commit 0ce0399

Please sign in to comment.