diff --git a/app/src/main/java/com/example/util/simpletimetracker/navigation/NotificationResolverImpl.kt b/app/src/main/java/com/example/util/simpletimetracker/navigation/NotificationResolverImpl.kt
index a5e45fe7..99caf117 100644
--- a/app/src/main/java/com/example/util/simpletimetracker/navigation/NotificationResolverImpl.kt
+++ b/app/src/main/java/com/example/util/simpletimetracker/navigation/NotificationResolverImpl.kt
@@ -6,29 +6,27 @@ import android.graphics.Color
import android.view.View
import android.widget.TextView
import android.widget.Toast
-import com.example.util.simpletimetracker.navigation.params.SnackBarParams
-import com.example.util.simpletimetracker.navigation.params.ToastParams
+import com.example.util.simpletimetracker.navigation.params.notification.SnackBarParams
+import com.example.util.simpletimetracker.navigation.params.notification.ToastParams
import com.google.android.material.snackbar.Snackbar
import javax.inject.Inject
class NotificationResolverImpl @Inject constructor() : NotificationResolver {
- override fun show(activity: Activity?, notification: Notification, data: Any?, anchor: Any?) {
- when (notification) {
- Notification.TOAST -> showSystemMessage(activity, data)
- Notification.SNACK_BAR -> showSnackBar(activity, data, anchor)
+ override fun show(activity: Activity?, data: NotificationParams, anchor: Any?) {
+ when (data) {
+ is ToastParams -> showSystemMessage(activity, data)
+ is SnackBarParams -> showSnackBar(activity, data, anchor)
}
}
- private fun showSystemMessage(activity: Activity?, data: Any?) {
- if (data !is ToastParams) return
-
+ private fun showSystemMessage(activity: Activity?, data: ToastParams) {
Toast.makeText(activity?.applicationContext, data.message, Toast.LENGTH_LONG).show()
}
@SuppressLint("WrongConstant")
- private fun showSnackBar(activity: Activity?, data: Any?, anchor: Any?) {
- if (data !is SnackBarParams || activity == null) return
+ private fun showSnackBar(activity: Activity?, data: SnackBarParams, anchor: Any?) {
+ if (activity == null) return
val snackBar = Snackbar.make(
activity.findViewById(android.R.id.content),
diff --git a/app/src/main/java/com/example/util/simpletimetracker/navigation/RouterImpl.kt b/app/src/main/java/com/example/util/simpletimetracker/navigation/RouterImpl.kt
index c10b788c..ccb209fb 100644
--- a/app/src/main/java/com/example/util/simpletimetracker/navigation/RouterImpl.kt
+++ b/app/src/main/java/com/example/util/simpletimetracker/navigation/RouterImpl.kt
@@ -40,8 +40,8 @@ class RouterImpl @Inject constructor(
actionResolver.execute(activity, action, data)
}
- override fun show(notification: Notification, data: Any?, anchor: Any?) {
- notificationResolver.show(activity, notification, data, anchor)
+ override fun show(data: NotificationParams, anchor: Any?) {
+ notificationResolver.show(activity, data, anchor)
}
override fun setResultListener(key: String, listener: ResultListener) {
diff --git a/core/src/main/java/com/example/util/simpletimetracker/core/sharedViewModel/BackupViewModel.kt b/core/src/main/java/com/example/util/simpletimetracker/core/sharedViewModel/BackupViewModel.kt
index ef57caab..28f16bb1 100644
--- a/core/src/main/java/com/example/util/simpletimetracker/core/sharedViewModel/BackupViewModel.kt
+++ b/core/src/main/java/com/example/util/simpletimetracker/core/sharedViewModel/BackupViewModel.kt
@@ -12,14 +12,13 @@ import com.example.util.simpletimetracker.domain.model.Range
import com.example.util.simpletimetracker.domain.resolver.BackupRepo
import com.example.util.simpletimetracker.domain.resolver.CsvRepo
import com.example.util.simpletimetracker.navigation.Action
-import com.example.util.simpletimetracker.navigation.Notification
import com.example.util.simpletimetracker.navigation.RequestCode
import com.example.util.simpletimetracker.navigation.Router
import com.example.util.simpletimetracker.navigation.Screen
import com.example.util.simpletimetracker.navigation.params.CsvExportSettingsParams
import com.example.util.simpletimetracker.navigation.params.FileChooserParams
import com.example.util.simpletimetracker.navigation.params.StandardDialogParams
-import com.example.util.simpletimetracker.navigation.params.ToastParams
+import com.example.util.simpletimetracker.navigation.params.notification.ToastParams
import kotlinx.coroutines.launch
import javax.inject.Inject
@@ -140,9 +139,8 @@ class BackupViewModel @Inject constructor(
}
private fun showMessage(stringResId: Int) {
- stringResId
- .let(resourceRepo::getString)
- .let { router.show(Notification.TOAST, ToastParams(it)) }
+ val params = ToastParams(message = resourceRepo.getString(stringResId))
+ router.show(params)
}
private fun showProgress(isVisible: Boolean) {
diff --git a/core/src/main/java/com/example/util/simpletimetracker/core/sharedViewModel/RemoveRecordViewModel.kt b/core/src/main/java/com/example/util/simpletimetracker/core/sharedViewModel/RemoveRecordViewModel.kt
index f37547d4..5b077796 100644
--- a/core/src/main/java/com/example/util/simpletimetracker/core/sharedViewModel/RemoveRecordViewModel.kt
+++ b/core/src/main/java/com/example/util/simpletimetracker/core/sharedViewModel/RemoveRecordViewModel.kt
@@ -10,7 +10,7 @@ import com.example.util.simpletimetracker.domain.interactor.RecordInteractor
import com.example.util.simpletimetracker.domain.interactor.RecordTypeInteractor
import com.example.util.simpletimetracker.domain.model.Record
import com.example.util.simpletimetracker.navigation.params.ChangeRecordParams
-import com.example.util.simpletimetracker.navigation.params.SnackBarParams
+import com.example.util.simpletimetracker.navigation.params.notification.SnackBarParams
import kotlinx.coroutines.launch
import javax.inject.Inject
diff --git a/feature_archive/build/intermediates/incremental/packageDebugResources/stripped.dir/layout/archive_fragment.xml b/feature_archive/build/intermediates/incremental/packageDebugResources/stripped.dir/layout/archive_fragment.xml
deleted file mode 100644
index 8693725a..00000000
--- a/feature_archive/build/intermediates/incremental/packageDebugResources/stripped.dir/layout/archive_fragment.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
diff --git a/features/feature_archive/src/main/java/com/example/util/simpletimetracker/feature_archive/viewModel/ArchiveViewModel.kt b/features/feature_archive/src/main/java/com/example/util/simpletimetracker/feature_archive/viewModel/ArchiveViewModel.kt
index 2c917023..e49affef 100644
--- a/features/feature_archive/src/main/java/com/example/util/simpletimetracker/feature_archive/viewModel/ArchiveViewModel.kt
+++ b/features/feature_archive/src/main/java/com/example/util/simpletimetracker/feature_archive/viewModel/ArchiveViewModel.kt
@@ -17,12 +17,11 @@ import com.example.util.simpletimetracker.domain.interactor.RecordTypeInteractor
import com.example.util.simpletimetracker.domain.interactor.RunningRecordInteractor
import com.example.util.simpletimetracker.feature_archive.R
import com.example.util.simpletimetracker.feature_archive.interactor.ArchiveViewDataInteractor
-import com.example.util.simpletimetracker.navigation.Notification
import com.example.util.simpletimetracker.navigation.Router
import com.example.util.simpletimetracker.navigation.Screen
import com.example.util.simpletimetracker.navigation.params.ArchiveDialogParams
import com.example.util.simpletimetracker.navigation.params.StandardDialogParams
-import com.example.util.simpletimetracker.navigation.params.ToastParams
+import com.example.util.simpletimetracker.navigation.params.notification.ToastParams
import kotlinx.coroutines.launch
import javax.inject.Inject
@@ -94,10 +93,7 @@ class ArchiveViewModel @Inject constructor(
}
updateViewData()
- router.show(
- notification = Notification.TOAST,
- data = ToastParams(message)
- )
+ router.show(ToastParams(message))
}
}
@@ -128,10 +124,7 @@ class ArchiveViewModel @Inject constructor(
}
updateViewData()
- router.show(
- notification = Notification.TOAST,
- data = ToastParams(message)
- )
+ router.show(ToastParams(message))
}
}
diff --git a/features/feature_change_category/src/main/java/com/example/util/simpletimetracker/feature_change_category/viewModel/ChangeCategoryViewModel.kt b/features/feature_change_category/src/main/java/com/example/util/simpletimetracker/feature_change_category/viewModel/ChangeCategoryViewModel.kt
index f1b307ed..0b345ad0 100644
--- a/features/feature_change_category/src/main/java/com/example/util/simpletimetracker/feature_change_category/viewModel/ChangeCategoryViewModel.kt
+++ b/features/feature_change_category/src/main/java/com/example/util/simpletimetracker/feature_change_category/viewModel/ChangeCategoryViewModel.kt
@@ -20,10 +20,9 @@ import com.example.util.simpletimetracker.domain.interactor.RecordTypeCategoryIn
import com.example.util.simpletimetracker.domain.model.Category
import com.example.util.simpletimetracker.feature_change_category.R
import com.example.util.simpletimetracker.feature_change_category.interactor.ChangeCategoryViewDataInteractor
-import com.example.util.simpletimetracker.navigation.Notification
import com.example.util.simpletimetracker.navigation.Router
import com.example.util.simpletimetracker.navigation.params.ChangeCategoryParams
-import com.example.util.simpletimetracker.navigation.params.ToastParams
+import com.example.util.simpletimetracker.navigation.params.notification.ToastParams
import kotlinx.coroutines.launch
import javax.inject.Inject
@@ -34,7 +33,7 @@ class ChangeCategoryViewModel @Inject constructor(
private val recordTypeCategoryInteractor: RecordTypeCategoryInteractor,
private val prefsInteractor: PrefsInteractor,
private val categoryViewDataMapper: CategoryViewDataMapper,
- private val resourceRepo: ResourceRepo
+ private val resourceRepo: ResourceRepo,
) : ViewModel() {
lateinit var extra: ChangeCategoryParams
@@ -232,8 +231,7 @@ class ChangeCategoryViewModel @Inject constructor(
}
private fun showMessage(stringResId: Int) {
- stringResId
- .let(resourceRepo::getString)
- .let { router.show(Notification.TOAST, ToastParams(it)) }
+ val params = ToastParams(message = resourceRepo.getString(stringResId))
+ router.show(params)
}
}
diff --git a/features/feature_change_record/src/main/java/com/example/util/simpletimetracker/feature_change_record/viewModel/ChangeRecordViewModel.kt b/features/feature_change_record/src/main/java/com/example/util/simpletimetracker/feature_change_record/viewModel/ChangeRecordViewModel.kt
index e42f06f4..8f83f8d0 100644
--- a/features/feature_change_record/src/main/java/com/example/util/simpletimetracker/feature_change_record/viewModel/ChangeRecordViewModel.kt
+++ b/features/feature_change_record/src/main/java/com/example/util/simpletimetracker/feature_change_record/viewModel/ChangeRecordViewModel.kt
@@ -22,13 +22,12 @@ import com.example.util.simpletimetracker.domain.model.Record
import com.example.util.simpletimetracker.feature_change_record.R
import com.example.util.simpletimetracker.feature_change_record.interactor.ChangeRecordViewDataInteractor
import com.example.util.simpletimetracker.feature_change_record.viewData.ChangeRecordViewData
-import com.example.util.simpletimetracker.navigation.Notification
import com.example.util.simpletimetracker.navigation.Router
import com.example.util.simpletimetracker.navigation.Screen
import com.example.util.simpletimetracker.navigation.params.ChangeRecordParams
import com.example.util.simpletimetracker.navigation.params.DateTimeDialogParams
import com.example.util.simpletimetracker.navigation.params.DateTimeDialogType
-import com.example.util.simpletimetracker.navigation.params.ToastParams
+import com.example.util.simpletimetracker.navigation.params.notification.ToastParams
import kotlinx.coroutines.launch
import javax.inject.Inject
@@ -271,9 +270,8 @@ class ChangeRecordViewModel @Inject constructor(
}
private fun showMessage(stringResId: Int) {
- stringResId
- .let(resourceRepo::getString)
- .let { router.show(Notification.TOAST, ToastParams(it)) }
+ val params = ToastParams(message = resourceRepo.getString(stringResId))
+ router.show(params)
}
companion object {
diff --git a/features/feature_change_record_tag/src/main/java/com/example/util/simpletimetracker/feature_change_record_tag/viewModel/ChangeRecordTagViewModel.kt b/features/feature_change_record_tag/src/main/java/com/example/util/simpletimetracker/feature_change_record_tag/viewModel/ChangeRecordTagViewModel.kt
index 4df66753..a8686a4d 100644
--- a/features/feature_change_record_tag/src/main/java/com/example/util/simpletimetracker/feature_change_record_tag/viewModel/ChangeRecordTagViewModel.kt
+++ b/features/feature_change_record_tag/src/main/java/com/example/util/simpletimetracker/feature_change_record_tag/viewModel/ChangeRecordTagViewModel.kt
@@ -20,10 +20,9 @@ import com.example.util.simpletimetracker.domain.interactor.RecordTypeInteractor
import com.example.util.simpletimetracker.domain.model.RecordTag
import com.example.util.simpletimetracker.feature_change_record_tag.R
import com.example.util.simpletimetracker.feature_change_record_tag.mapper.ChangeRecordTagMapper
-import com.example.util.simpletimetracker.navigation.Notification
import com.example.util.simpletimetracker.navigation.Router
import com.example.util.simpletimetracker.navigation.params.ChangeCategoryParams
-import com.example.util.simpletimetracker.navigation.params.ToastParams
+import com.example.util.simpletimetracker.navigation.params.notification.ToastParams
import kotlinx.coroutines.launch
import javax.inject.Inject
@@ -168,8 +167,7 @@ class ChangeRecordTagViewModel @Inject constructor(
}
private fun showMessage(stringResId: Int) {
- stringResId
- .let(resourceRepo::getString)
- .let { router.show(Notification.TOAST, ToastParams(it)) }
+ val params = ToastParams(message = resourceRepo.getString(stringResId))
+ router.show(params)
}
}
diff --git a/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewModel/ChangeRecordTypeViewModel.kt b/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewModel/ChangeRecordTypeViewModel.kt
index dd0f4c65..ba68b0bf 100644
--- a/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewModel/ChangeRecordTypeViewModel.kt
+++ b/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewModel/ChangeRecordTypeViewModel.kt
@@ -37,12 +37,11 @@ import com.example.util.simpletimetracker.feature_change_record_type.viewData.Ch
import com.example.util.simpletimetracker.feature_change_record_type.viewData.ChangeRecordTypeIconSwitchViewData
import com.example.util.simpletimetracker.feature_change_record_type.viewData.ChangeRecordTypeIconViewData
import com.example.util.simpletimetracker.feature_change_record_type.viewData.ChangeRecordTypeScrollViewData
-import com.example.util.simpletimetracker.navigation.Notification
import com.example.util.simpletimetracker.navigation.Router
import com.example.util.simpletimetracker.navigation.Screen
import com.example.util.simpletimetracker.navigation.params.ChangeRecordTypeParams
import com.example.util.simpletimetracker.navigation.params.DurationDialogParams
-import com.example.util.simpletimetracker.navigation.params.ToastParams
+import com.example.util.simpletimetracker.navigation.params.notification.ToastParams
import kotlinx.coroutines.launch
import javax.inject.Inject
@@ -438,9 +437,8 @@ class ChangeRecordTypeViewModel @Inject constructor(
}
private fun showMessage(stringResId: Int) {
- stringResId
- .let(resourceRepo::getString)
- .let { router.show(Notification.TOAST, ToastParams(it)) }
+ val params = ToastParams(message = resourceRepo.getString(stringResId))
+ router.show(params)
}
companion object {
diff --git a/features/feature_change_running_record/src/main/java/com/example/util/simpletimetracker/feature_change_running_record/viewModel/ChangeRunningRecordViewModel.kt b/features/feature_change_running_record/src/main/java/com/example/util/simpletimetracker/feature_change_running_record/viewModel/ChangeRunningRecordViewModel.kt
index cf6e7def..e905b9e8 100644
--- a/features/feature_change_running_record/src/main/java/com/example/util/simpletimetracker/feature_change_running_record/viewModel/ChangeRunningRecordViewModel.kt
+++ b/features/feature_change_running_record/src/main/java/com/example/util/simpletimetracker/feature_change_running_record/viewModel/ChangeRunningRecordViewModel.kt
@@ -22,13 +22,12 @@ import com.example.util.simpletimetracker.domain.model.RunningRecord
import com.example.util.simpletimetracker.feature_change_running_record.R
import com.example.util.simpletimetracker.feature_change_running_record.interactor.ChangeRunningRecordViewDataInteractor
import com.example.util.simpletimetracker.feature_change_running_record.viewData.ChangeRunningRecordViewData
-import com.example.util.simpletimetracker.navigation.Notification
import com.example.util.simpletimetracker.navigation.Router
import com.example.util.simpletimetracker.navigation.Screen
import com.example.util.simpletimetracker.navigation.params.ChangeRunningRecordParams
import com.example.util.simpletimetracker.navigation.params.DateTimeDialogParams
import com.example.util.simpletimetracker.navigation.params.DateTimeDialogType
-import com.example.util.simpletimetracker.navigation.params.ToastParams
+import com.example.util.simpletimetracker.navigation.params.notification.ToastParams
import kotlinx.coroutines.Job
import kotlinx.coroutines.cancelAndJoin
import kotlinx.coroutines.delay
@@ -257,9 +256,8 @@ class ChangeRunningRecordViewModel @Inject constructor(
}
private fun showMessage(stringResId: Int) {
- stringResId
- .let(resourceRepo::getString)
- .let { router.show(Notification.TOAST, ToastParams(it)) }
+ val params = ToastParams(message = resourceRepo.getString(stringResId))
+ router.show(params)
}
companion object {
diff --git a/features/feature_records/src/main/java/com/example/util/simpletimetracker/feature_records/view/RecordsContainerFragment.kt b/features/feature_records/src/main/java/com/example/util/simpletimetracker/feature_records/view/RecordsContainerFragment.kt
index b91671d8..b7fa114a 100644
--- a/features/feature_records/src/main/java/com/example/util/simpletimetracker/feature_records/view/RecordsContainerFragment.kt
+++ b/features/feature_records/src/main/java/com/example/util/simpletimetracker/feature_records/view/RecordsContainerFragment.kt
@@ -12,9 +12,8 @@ import com.example.util.simpletimetracker.feature_views.extension.setOnLongClick
import com.example.util.simpletimetracker.core.sharedViewModel.RemoveRecordViewModel
import com.example.util.simpletimetracker.feature_records.adapter.RecordsContainerAdapter
import com.example.util.simpletimetracker.feature_records.viewModel.RecordsContainerViewModel
-import com.example.util.simpletimetracker.navigation.Notification
import com.example.util.simpletimetracker.navigation.Router
-import com.example.util.simpletimetracker.navigation.params.SnackBarParams
+import com.example.util.simpletimetracker.navigation.params.notification.SnackBarParams
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
import com.example.util.simpletimetracker.feature_records.databinding.RecordsContainerFragmentBinding as Binding
@@ -85,7 +84,7 @@ class RecordsContainerFragment :
private fun showMessage(message: SnackBarParams?) {
if (message != null && message.tag == SnackBarParams.TAG.RECORD_DELETE) {
- router.show(Notification.SNACK_BAR, message, binding.btnRecordAdd)
+ router.show(message, binding.btnRecordAdd)
removeRecordViewModel.onMessageShown()
}
}
diff --git a/features/feature_records_all/src/main/java/com/example/util/simpletimetracker/feature_records_all/view/RecordsAllFragment.kt b/features/feature_records_all/src/main/java/com/example/util/simpletimetracker/feature_records_all/view/RecordsAllFragment.kt
index 8958315e..28e72483 100644
--- a/features/feature_records_all/src/main/java/com/example/util/simpletimetracker/feature_records_all/view/RecordsAllFragment.kt
+++ b/features/feature_records_all/src/main/java/com/example/util/simpletimetracker/feature_records_all/view/RecordsAllFragment.kt
@@ -16,10 +16,9 @@ import com.example.util.simpletimetracker.core.sharedViewModel.RemoveRecordViewM
import com.example.util.simpletimetracker.feature_records_all.adapter.createRecordAllDateAdapterDelegate
import com.example.util.simpletimetracker.feature_records_all.viewData.RecordsAllSortOrderViewData
import com.example.util.simpletimetracker.feature_records_all.viewModel.RecordsAllViewModel
-import com.example.util.simpletimetracker.navigation.Notification
import com.example.util.simpletimetracker.navigation.Router
import com.example.util.simpletimetracker.navigation.params.RecordsAllParams
-import com.example.util.simpletimetracker.navigation.params.SnackBarParams
+import com.example.util.simpletimetracker.navigation.params.notification.SnackBarParams
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
import com.example.util.simpletimetracker.feature_records_all.databinding.RecordsAllFragmentBinding as Binding
@@ -96,7 +95,7 @@ class RecordsAllFragment : BaseFragment() {
private fun showMessage(message: SnackBarParams?) {
if (message != null && message.tag == SnackBarParams.TAG.RECORDS_ALL_DELETE) {
- router.show(Notification.SNACK_BAR, message)
+ router.show(message)
removeRecordViewModel.onMessageShown()
}
}
diff --git a/features/feature_settings/src/main/java/com/example/util/simpletimetracker/feature_settings/viewModel/SettingsViewModel.kt b/features/feature_settings/src/main/java/com/example/util/simpletimetracker/feature_settings/viewModel/SettingsViewModel.kt
index 5474b1d2..6aa2c5eb 100644
--- a/features/feature_settings/src/main/java/com/example/util/simpletimetracker/feature_settings/viewModel/SettingsViewModel.kt
+++ b/features/feature_settings/src/main/java/com/example/util/simpletimetracker/feature_settings/viewModel/SettingsViewModel.kt
@@ -15,14 +15,13 @@ import com.example.util.simpletimetracker.feature_settings.mapper.SettingsMapper
import com.example.util.simpletimetracker.feature_settings.viewData.CardOrderViewData
import com.example.util.simpletimetracker.feature_settings.viewData.FirstDayOfWeekViewData
import com.example.util.simpletimetracker.navigation.Action
-import com.example.util.simpletimetracker.navigation.Notification
import com.example.util.simpletimetracker.navigation.Router
import com.example.util.simpletimetracker.navigation.Screen
import com.example.util.simpletimetracker.navigation.params.CardOrderDialogParams
import com.example.util.simpletimetracker.navigation.params.DurationDialogParams
import com.example.util.simpletimetracker.navigation.params.OpenMarketParams
import com.example.util.simpletimetracker.navigation.params.SendEmailParams
-import com.example.util.simpletimetracker.navigation.params.ToastParams
+import com.example.util.simpletimetracker.navigation.params.notification.ToastParams
import kotlinx.coroutines.launch
import javax.inject.Inject
@@ -332,9 +331,8 @@ class SettingsViewModel @Inject constructor(
}
private fun showMessage(stringResId: Int) {
- stringResId
- .let(resourceRepo::getString)
- .let { router.show(Notification.TOAST, ToastParams(it)) }
+ val params = ToastParams(message = resourceRepo.getString(stringResId))
+ router.show(params)
}
private suspend fun updateCardOrderViewData() {
diff --git a/navigation/src/main/java/com/example/util/simpletimetracker/navigation/Notification.kt b/navigation/src/main/java/com/example/util/simpletimetracker/navigation/NotificationParams.kt
similarity index 51%
rename from navigation/src/main/java/com/example/util/simpletimetracker/navigation/Notification.kt
rename to navigation/src/main/java/com/example/util/simpletimetracker/navigation/NotificationParams.kt
index cfdf4bf9..25377224 100644
--- a/navigation/src/main/java/com/example/util/simpletimetracker/navigation/Notification.kt
+++ b/navigation/src/main/java/com/example/util/simpletimetracker/navigation/NotificationParams.kt
@@ -1,6 +1,3 @@
package com.example.util.simpletimetracker.navigation
-enum class Notification {
- TOAST,
- SNACK_BAR
-}
\ No newline at end of file
+interface NotificationParams
\ No newline at end of file
diff --git a/navigation/src/main/java/com/example/util/simpletimetracker/navigation/NotificationResolver.kt b/navigation/src/main/java/com/example/util/simpletimetracker/navigation/NotificationResolver.kt
index 7ae49c4e..07e70b34 100644
--- a/navigation/src/main/java/com/example/util/simpletimetracker/navigation/NotificationResolver.kt
+++ b/navigation/src/main/java/com/example/util/simpletimetracker/navigation/NotificationResolver.kt
@@ -4,5 +4,5 @@ import android.app.Activity
interface NotificationResolver {
- fun show(activity: Activity?, notification: Notification, data: Any?, anchor: Any?)
+ fun show(activity: Activity?, data: NotificationParams, anchor: Any?)
}
\ No newline at end of file
diff --git a/navigation/src/main/java/com/example/util/simpletimetracker/navigation/Router.kt b/navigation/src/main/java/com/example/util/simpletimetracker/navigation/Router.kt
index 91c342cf..159c87e8 100644
--- a/navigation/src/main/java/com/example/util/simpletimetracker/navigation/Router.kt
+++ b/navigation/src/main/java/com/example/util/simpletimetracker/navigation/Router.kt
@@ -22,8 +22,7 @@ interface Router {
)
fun show(
- notification: Notification,
- data: Any? = null,
+ data: NotificationParams,
anchor: Any? = null // should be a view
)
diff --git a/navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/ToastParams.kt b/navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/ToastParams.kt
deleted file mode 100644
index 0869a9b5..00000000
--- a/navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/ToastParams.kt
+++ /dev/null
@@ -1,5 +0,0 @@
-package com.example.util.simpletimetracker.navigation.params
-
-data class ToastParams(
- val message: String
-)
\ No newline at end of file
diff --git a/navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/SnackBarParams.kt b/navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/notification/SnackBarParams.kt
similarity index 63%
rename from navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/SnackBarParams.kt
rename to navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/notification/SnackBarParams.kt
index 95018be2..a0c20e66 100644
--- a/navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/SnackBarParams.kt
+++ b/navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/notification/SnackBarParams.kt
@@ -1,4 +1,6 @@
-package com.example.util.simpletimetracker.navigation.params
+package com.example.util.simpletimetracker.navigation.params.notification
+
+import com.example.util.simpletimetracker.navigation.NotificationParams
data class SnackBarParams(
val tag: TAG? = null,
@@ -6,7 +8,7 @@ data class SnackBarParams(
val dismissedListener: ((TAG?) -> Unit)? = null,
val actionText: String = "",
val actionListener: ((TAG?) -> Unit)? = null
-) {
+): NotificationParams {
enum class TAG {
RECORD_DELETE,
diff --git a/navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/notification/ToastParams.kt b/navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/notification/ToastParams.kt
new file mode 100644
index 00000000..f41dff6f
--- /dev/null
+++ b/navigation/src/main/java/com/example/util/simpletimetracker/navigation/params/notification/ToastParams.kt
@@ -0,0 +1,7 @@
+package com.example.util.simpletimetracker.navigation.params.notification
+
+import com.example.util.simpletimetracker.navigation.NotificationParams
+
+data class ToastParams(
+ val message: String,
+) : NotificationParams
\ No newline at end of file