From e3d6b4276f765c766cea321e6ec765beba0bd1cd Mon Sep 17 00:00:00 2001 From: Moez Bhatti Date: Fri, 7 Sep 2018 15:04:32 -0400 Subject: [PATCH] Remove unnecessary showClearButton field in Main State --- .../java/com/moez/QKSMS/feature/main/MainActivity.kt | 4 ++-- .../main/java/com/moez/QKSMS/feature/main/MainState.kt | 2 -- .../java/com/moez/QKSMS/feature/main/MainViewModel.kt | 10 +++------- 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/presentation/src/main/java/com/moez/QKSMS/feature/main/MainActivity.kt b/presentation/src/main/java/com/moez/QKSMS/feature/main/MainActivity.kt index 2e65c9ca..86a0a826 100644 --- a/presentation/src/main/java/com/moez/QKSMS/feature/main/MainActivity.kt +++ b/presentation/src/main/java/com/moez/QKSMS/feature/main/MainActivity.kt @@ -208,7 +208,7 @@ class MainActivity : QkThemedActivity(), MainView { when (state.page) { is Inbox -> { - showBackButton(state.page.showClearButton) + showBackButton(state.page.selected > 0) title = when (state.page.selected != 0) { true -> getString(R.string.main_title_selected, state.page.selected) false -> getString(R.string.main_title) @@ -228,7 +228,7 @@ class MainActivity : QkThemedActivity(), MainView { } is Archived -> { - showBackButton(state.page.showClearButton) + showBackButton(state.page.selected > 0) title = when (state.page.selected != 0) { true -> getString(R.string.main_title_selected, state.page.selected) false -> getString(R.string.title_archived) diff --git a/presentation/src/main/java/com/moez/QKSMS/feature/main/MainState.kt b/presentation/src/main/java/com/moez/QKSMS/feature/main/MainState.kt index 6a89bbd6..49f48ac2 100644 --- a/presentation/src/main/java/com/moez/QKSMS/feature/main/MainState.kt +++ b/presentation/src/main/java/com/moez/QKSMS/feature/main/MainState.kt @@ -38,7 +38,6 @@ data class MainState( sealed class MainPage data class Inbox( - val showClearButton: Boolean = false, val markPinned: Boolean = true, val markRead: Boolean = false, val data: RealmResults? = null, @@ -50,7 +49,6 @@ data class Searching( ) : MainPage() data class Archived( - val showClearButton: Boolean = false, val markPinned: Boolean = true, val markRead: Boolean = false, val data: RealmResults? = null, diff --git a/presentation/src/main/java/com/moez/QKSMS/feature/main/MainViewModel.kt b/presentation/src/main/java/com/moez/QKSMS/feature/main/MainViewModel.kt index 9e4759d0..347cf5d3 100644 --- a/presentation/src/main/java/com/moez/QKSMS/feature/main/MainViewModel.kt +++ b/presentation/src/main/java/com/moez/QKSMS/feature/main/MainViewModel.kt @@ -174,10 +174,7 @@ class MainViewModel @Inject constructor( .withLatestFrom(state) { _, state -> when { state.page is Searching -> view.clearSearch() - state.page is Inbox && state.page.selected > 0 -> view.clearSelection() - state.page is Inbox && state.page.showClearButton -> view.clearSearch() - state.page is Archived && state.page.selected > 0 -> view.clearSelection() else -> newState { copy(drawerOpen = true) } @@ -285,12 +282,12 @@ class MainViewModel @Inject constructor( when (state.page) { is Inbox -> { - val page = state.page.copy(markPinned = pin, markRead = read, selected = selected, showClearButton = selected > 0) - newState { copy(page = page.copy(markRead = read, selected = selected, showClearButton = selected > 0)) } + val page = state.page.copy(markPinned = pin, markRead = read, selected = selected) + newState { copy(page = page.copy(markRead = read, selected = selected)) } } is Archived -> { - val page = state.page.copy(markPinned = pin, markRead = read, selected = selected, showClearButton = selected > 0) + val page = state.page.copy(markPinned = pin, markRead = read, selected = selected) newState { copy(page = page) } } } @@ -342,7 +339,6 @@ class MainViewModel @Inject constructor( state.page is Searching -> view.clearSearch() state.page is Inbox && state.page.selected > 0 -> view.clearSelection() - state.page is Inbox && state.page.showClearButton -> view.clearSearch() state.page is Archived && state.page.selected > 0 -> view.clearSelection()