From 354168ab2120f2beab46a8d4dfb2b45523d8b676 Mon Sep 17 00:00:00 2001 From: moezbhatti Date: Tue, 30 Jul 2019 12:22:22 -0400 Subject: [PATCH] Refactor qksms blocking client to android blocking client --- ...kBlockingClient.kt => AndroidBlockingClient.kt} | 2 +- .../com/moez/QKSMS/blocking/BlockingManager.kt | 4 ++-- .../main/java/com/moez/QKSMS/util/Preferences.kt | 4 ++-- .../moez/QKSMS/feature/blocking/BlockingDialog.kt | 2 +- .../QKSMS/feature/blocking/BlockingPresenter.kt | 2 +- .../blocking/manager/BlockingManagerController.kt | 6 +++--- .../blocking/manager/BlockingManagerPresenter.kt | 14 +++++++------- .../blocking/manager/BlockingManagerView.kt | 4 ++-- .../src/main/res/layout/blocking_controller.xml | 2 +- .../res/layout/blocking_manager_controller.xml | 6 +++--- presentation/src/main/res/values/strings.xml | 3 ++- 11 files changed, 25 insertions(+), 24 deletions(-) rename data/src/main/java/com/moez/QKSMS/blocking/{QkBlockingClient.kt => AndroidBlockingClient.kt} (98%) diff --git a/data/src/main/java/com/moez/QKSMS/blocking/QkBlockingClient.kt b/data/src/main/java/com/moez/QKSMS/blocking/AndroidBlockingClient.kt similarity index 98% rename from data/src/main/java/com/moez/QKSMS/blocking/QkBlockingClient.kt rename to data/src/main/java/com/moez/QKSMS/blocking/AndroidBlockingClient.kt index 9a4d1517..d78bfb1f 100644 --- a/data/src/main/java/com/moez/QKSMS/blocking/QkBlockingClient.kt +++ b/data/src/main/java/com/moez/QKSMS/blocking/AndroidBlockingClient.kt @@ -29,7 +29,7 @@ import io.reactivex.Completable import io.reactivex.Single import javax.inject.Inject -class QkBlockingClient @Inject constructor( +class AndroidBlockingClient @Inject constructor( private val context: Context, private val blockingRepo: BlockingRepository ) : BlockingClient { diff --git a/data/src/main/java/com/moez/QKSMS/blocking/BlockingManager.kt b/data/src/main/java/com/moez/QKSMS/blocking/BlockingManager.kt index ca64fa9f..5f6b3cfa 100644 --- a/data/src/main/java/com/moez/QKSMS/blocking/BlockingManager.kt +++ b/data/src/main/java/com/moez/QKSMS/blocking/BlockingManager.kt @@ -13,7 +13,7 @@ import javax.inject.Singleton class BlockingManager @Inject constructor( private val prefs: Preferences, private val callControlBlockingClient: CallControlBlockingClient, - private val qkBlockingClient: QkBlockingClient, + private val androidBlockingClient: AndroidBlockingClient, private val shouldIAnswerBlockingClient: ShouldIAnswerBlockingClient ) : BlockingClient { @@ -21,7 +21,7 @@ class BlockingManager @Inject constructor( get() = when (prefs.blockingManager.get()) { Preferences.BLOCKING_MANAGER_SIA -> shouldIAnswerBlockingClient Preferences.BLOCKING_MANAGER_CC -> callControlBlockingClient - else -> qkBlockingClient + else -> androidBlockingClient } init { diff --git a/domain/src/main/java/com/moez/QKSMS/util/Preferences.kt b/domain/src/main/java/com/moez/QKSMS/util/Preferences.kt index e32f7986..45a99de3 100644 --- a/domain/src/main/java/com/moez/QKSMS/util/Preferences.kt +++ b/domain/src/main/java/com/moez/QKSMS/util/Preferences.kt @@ -61,7 +61,7 @@ class Preferences @Inject constructor(private val rxPrefs: RxSharedPreferences) const val SWIPE_ACTION_READ = 4 const val SWIPE_ACTION_UNREAD = 5 - const val BLOCKING_MANAGER_QKSMS = 0 + const val BLOCKING_MANAGER_ANDROID = 0 const val BLOCKING_MANAGER_CC = 1 const val BLOCKING_MANAGER_SIA = 2 } @@ -82,7 +82,7 @@ class Preferences @Inject constructor(private val rxPrefs: RxSharedPreferences) val textSize = rxPrefs.getInteger("textSize", TEXT_SIZE_NORMAL) @Deprecated("This should only be accessed when migrating to @blockingManager") val sia = rxPrefs.getBoolean("sia", false) - val blockingManager = rxPrefs.getInteger("blockingManager", BLOCKING_MANAGER_QKSMS) + val blockingManager = rxPrefs.getInteger("blockingManager", BLOCKING_MANAGER_ANDROID) val drop = rxPrefs.getBoolean("drop", false) val notifAction1 = rxPrefs.getInteger("notifAction1", NOTIFICATION_ACTION_READ) val notifAction2 = rxPrefs.getInteger("notifAction2", NOTIFICATION_ACTION_REPLY) diff --git a/presentation/src/main/java/com/moez/QKSMS/feature/blocking/BlockingDialog.kt b/presentation/src/main/java/com/moez/QKSMS/feature/blocking/BlockingDialog.kt index 0a685af0..d8eecf00 100644 --- a/presentation/src/main/java/com/moez/QKSMS/feature/blocking/BlockingDialog.kt +++ b/presentation/src/main/java/com/moez/QKSMS/feature/blocking/BlockingDialog.kt @@ -69,7 +69,7 @@ class BlockingDialog @Inject constructor( val manager = context.getString(when (prefs.blockingManager.get()) { Preferences.BLOCKING_MANAGER_SIA -> R.string.blocking_manager_sia_title Preferences.BLOCKING_MANAGER_CC -> R.string.blocking_manager_call_control_title - else -> R.string.app_name + else -> R.string.blocking_manager_android_title }) val message = context.resources.getQuantityString(res, addresses.size, manager) diff --git a/presentation/src/main/java/com/moez/QKSMS/feature/blocking/BlockingPresenter.kt b/presentation/src/main/java/com/moez/QKSMS/feature/blocking/BlockingPresenter.kt index 66272ca9..47555cf9 100644 --- a/presentation/src/main/java/com/moez/QKSMS/feature/blocking/BlockingPresenter.kt +++ b/presentation/src/main/java/com/moez/QKSMS/feature/blocking/BlockingPresenter.kt @@ -43,7 +43,7 @@ class BlockingPresenter @Inject constructor( when (client) { Preferences.BLOCKING_MANAGER_SIA -> R.string.blocking_manager_sia_title Preferences.BLOCKING_MANAGER_CC -> R.string.blocking_manager_call_control_title - else -> R.string.app_name + else -> R.string.blocking_manager_android_title } } .map(context::getString) diff --git a/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerController.kt b/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerController.kt index 01f09cbc..3b30e6ea 100644 --- a/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerController.kt +++ b/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerController.kt @@ -42,7 +42,7 @@ class BlockingManagerController : QkController = activityResumedSubject - override fun qksmsClicked(): Observable<*> = qksms.clicks() - override fun launchQksmsClicked(): Observable<*> = qksms.launch.clicks() + override fun androidClicked(): Observable<*> = android.clicks() + override fun launchAndroidClicked(): Observable<*> = android.launch.clicks() override fun callControlClicked(): Observable<*> = callControl.clicks() override fun launchCallControlClicked(): Observable<*> = callControl.launch.clicks() override fun siaClicked(): Observable<*> = shouldIAnswer.clicks() diff --git a/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerPresenter.kt b/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerPresenter.kt index 71026e93..41796ed6 100644 --- a/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerPresenter.kt +++ b/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerPresenter.kt @@ -1,8 +1,8 @@ package com.moez.QKSMS.feature.blocking.manager import android.os.Build +import com.moez.QKSMS.blocking.AndroidBlockingClient import com.moez.QKSMS.blocking.CallControlBlockingClient -import com.moez.QKSMS.blocking.QkBlockingClient import com.moez.QKSMS.blocking.ShouldIAnswerBlockingClient import com.moez.QKSMS.common.Navigator import com.moez.QKSMS.common.base.QkPresenter @@ -14,10 +14,10 @@ import javax.inject.Inject class BlockingManagerPresenter @Inject constructor( private val analytics: AnalyticsManager, + private val android: AndroidBlockingClient, private val callControl: CallControlBlockingClient, private val navigator: Navigator, private val prefs: Preferences, - private val qksms: QkBlockingClient, private val shouldIAnswer: ShouldIAnswerBlockingClient ) : QkPresenter(BlockingManagerState( blockingManager = prefs.blockingManager.get(), @@ -45,21 +45,21 @@ class BlockingManagerPresenter @Inject constructor( .autoDisposable(view.scope()) .subscribe { available -> newState { copy(siaInstalled = available) } } - view.qksmsClicked() + view.androidClicked() .autoDisposable(view.scope()) .subscribe { - analytics.setUserProperty("Blocking Manager", "QKSMS") - prefs.blockingManager.set(Preferences.BLOCKING_MANAGER_QKSMS) + analytics.setUserProperty("Blocking Manager", "Android") + prefs.blockingManager.set(Preferences.BLOCKING_MANAGER_ANDROID) } - view.launchQksmsClicked() + view.launchAndroidClicked() .autoDisposable(view.scope()) .subscribe { // TODO: This is a hack, get rid of it once we implement AndroidX navigation if (Build.VERSION.SDK_INT < 24) { view.openBlockedNumbers() } else { - qksms.openSettings() + android.openSettings() } } diff --git a/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerView.kt b/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerView.kt index 72e8af0f..ae3f3e8a 100644 --- a/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerView.kt +++ b/presentation/src/main/java/com/moez/QKSMS/feature/blocking/manager/BlockingManagerView.kt @@ -6,8 +6,8 @@ import io.reactivex.Observable interface BlockingManagerView : QkViewContract { fun activityResumed(): Observable<*> - fun qksmsClicked(): Observable<*> - fun launchQksmsClicked(): Observable<*> + fun androidClicked(): Observable<*> + fun launchAndroidClicked(): Observable<*> fun callControlClicked(): Observable<*> fun launchCallControlClicked(): Observable<*> fun siaClicked(): Observable<*> diff --git a/presentation/src/main/res/layout/blocking_controller.xml b/presentation/src/main/res/layout/blocking_controller.xml index 40222811..63d3765f 100644 --- a/presentation/src/main/res/layout/blocking_controller.xml +++ b/presentation/src/main/res/layout/blocking_controller.xml @@ -39,7 +39,7 @@ app:layout_constraintHorizontal_chainStyle="spread" app:layout_constraintTop_toTopOf="parent" app:title="@string/blocking_manager_title" - tools:summary="@string/app_name" /> + tools:summary="@string/blocking_manager_android_title" /> Your blocked conversations will appear here Blocking Manager - Built-in blocking functionality in QKSMS + Android + Built-in blocking functionality in Android Call Control Automatically filter your calls and messages in one convenient place! Community IQ™ allows you to prevent unwanted messages from community known spammers