diff --git a/vector/src/main/java/im/vector/app/features/createdirect/CreateDirectRoomActivity.kt b/vector/src/main/java/im/vector/app/features/createdirect/CreateDirectRoomActivity.kt index 16bca44a73..2d93bab6a3 100644 --- a/vector/src/main/java/im/vector/app/features/createdirect/CreateDirectRoomActivity.kt +++ b/vector/src/main/java/im/vector/app/features/createdirect/CreateDirectRoomActivity.kt @@ -46,9 +46,9 @@ import im.vector.app.core.utils.registerForPermissionsResult import im.vector.app.features.analytics.plan.Screen import im.vector.app.features.contactsbook.ContactsBookFragment import im.vector.app.features.qrcode.QrCodeScannerEvents +import im.vector.app.features.qrcode.QrCodeScannerFragment import im.vector.app.features.qrcode.QrCodeScannerViewModel import im.vector.app.features.qrcode.QrScannerArgs -import im.vector.app.features.qrcode.QrCodeScannerFragment import im.vector.app.features.userdirectory.UserListFragment import im.vector.app.features.userdirectory.UserListFragmentArgs import im.vector.app.features.userdirectory.UserListSharedAction @@ -107,11 +107,11 @@ class CreateDirectRoomActivity : SimpleFragmentActivity() { Toast.makeText(this, R.string.invalid_qr_code_uri, Toast.LENGTH_SHORT).show() finish() } - CreateDirectRoomViewEvents.DmSelf -> { + CreateDirectRoomViewEvents.DmSelf -> { Toast.makeText(this, R.string.cannot_dm_self, Toast.LENGTH_SHORT).show() finish() } - } + }.exhaustive } qrViewModel.observeViewEvents { @@ -123,7 +123,8 @@ class CreateDirectRoomActivity : SimpleFragmentActivity() { Toast.makeText(this, R.string.qr_code_not_scanned, Toast.LENGTH_SHORT).show() finish() } - } + else -> Unit + }.exhaustive } } diff --git a/vector/src/main/java/im/vector/app/features/createdirect/CreateDirectRoomViewEvents.kt b/vector/src/main/java/im/vector/app/features/createdirect/CreateDirectRoomViewEvents.kt index 6125e3173d..060cb0c327 100644 --- a/vector/src/main/java/im/vector/app/features/createdirect/CreateDirectRoomViewEvents.kt +++ b/vector/src/main/java/im/vector/app/features/createdirect/CreateDirectRoomViewEvents.kt @@ -16,10 +16,9 @@ package im.vector.app.features.createdirect -import com.airbnb.mvrx.Async import im.vector.app.core.platform.VectorViewEvents sealed class CreateDirectRoomViewEvents : VectorViewEvents { - object InvalidCode: CreateDirectRoomViewEvents() - object DmSelf: CreateDirectRoomViewEvents() + object InvalidCode : CreateDirectRoomViewEvents() + object DmSelf : CreateDirectRoomViewEvents() } diff --git a/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerActivity.kt b/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerActivity.kt index de6d16bb21..dda7b2e2eb 100644 --- a/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerActivity.kt +++ b/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerActivity.kt @@ -24,12 +24,13 @@ import androidx.activity.result.ActivityResultLauncher import com.airbnb.mvrx.viewModel import dagger.hilt.android.AndroidEntryPoint import im.vector.app.R +import im.vector.app.core.extensions.exhaustive import im.vector.app.core.extensions.replaceFragment import im.vector.app.core.platform.VectorBaseActivity import im.vector.app.databinding.ActivitySimpleBinding @AndroidEntryPoint -class QrCodeScannerActivity(): VectorBaseActivity() { +class QrCodeScannerActivity() : VectorBaseActivity() { override fun getBinding() = ActivitySimpleBinding.inflate(layoutInflater) @@ -49,7 +50,8 @@ class QrCodeScannerActivity(): VectorBaseActivity() { Toast.makeText(this, R.string.qr_code_not_scanned, Toast.LENGTH_SHORT).show() finish() } - } + else -> Unit + }.exhaustive } if (isFirstCreation()) { @@ -66,7 +68,6 @@ class QrCodeScannerActivity(): VectorBaseActivity() { finish() } - companion object { private const val EXTRA_OUT_TEXT = "EXTRA_OUT_TEXT" private const val EXTRA_OUT_IS_QR_CODE = "EXTRA_OUT_IS_QR_CODE" diff --git a/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerEvents.kt b/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerEvents.kt index 5d5f67cc75..69a500238e 100644 --- a/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerEvents.kt +++ b/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerEvents.kt @@ -19,7 +19,7 @@ package im.vector.app.features.qrcode import im.vector.app.core.platform.VectorViewEvents sealed class QrCodeScannerEvents : VectorViewEvents { - data class CodeParsed(val result: String, val isQrCode: Boolean): QrCodeScannerEvents() - object ParseFailed: QrCodeScannerEvents() - object SwitchMode: QrCodeScannerEvents() + data class CodeParsed(val result: String, val isQrCode: Boolean) : QrCodeScannerEvents() + object ParseFailed : QrCodeScannerEvents() + object SwitchMode : QrCodeScannerEvents() } diff --git a/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerFragment.kt b/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerFragment.kt index 937f4c7eb6..c514a1c8aa 100644 --- a/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerFragment.kt +++ b/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerFragment.kt @@ -53,7 +53,7 @@ data class QrScannerArgs( @StringRes val titleRes: Int ) : Parcelable -open class QrCodeScannerFragment @Inject constructor(): VectorBaseFragment(), ZXingScannerView.ResultHandler { +open class QrCodeScannerFragment @Inject constructor() : VectorBaseFragment(), ZXingScannerView.ResultHandler { private val qrViewModel: QrCodeScannerViewModel by activityViewModel() private val scannerArgs: QrScannerArgs? by args() diff --git a/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerViewModel.kt b/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerViewModel.kt index 225701f36b..9a71bb37c6 100644 --- a/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerViewModel.kt +++ b/vector/src/main/java/im/vector/app/features/qrcode/QrCodeScannerViewModel.kt @@ -40,11 +40,12 @@ class QrCodeScannerViewModel @AssistedInject constructor( companion object : MavericksViewModelFactory by hiltMavericksViewModelFactory() override fun handle(action: QrCodeScannerAction) { - when (action) { - is QrCodeScannerAction.CodeDecoded -> _viewEvents.post(QrCodeScannerEvents.CodeParsed(action.result, action.isQrCode)) - is QrCodeScannerAction.SwitchMode -> _viewEvents.post(QrCodeScannerEvents.SwitchMode) - is QrCodeScannerAction.ScanFailed -> _viewEvents.post(QrCodeScannerEvents.ParseFailed) - }.exhaustive + _viewEvents.post( + when (action) { + is QrCodeScannerAction.CodeDecoded -> QrCodeScannerEvents.CodeParsed(action.result, action.isQrCode) + is QrCodeScannerAction.SwitchMode -> QrCodeScannerEvents.SwitchMode + is QrCodeScannerAction.ScanFailed -> QrCodeScannerEvents.ParseFailed + }.exhaustive + ) } } - diff --git a/vector/src/main/java/im/vector/app/features/usercode/UserCodeActivity.kt b/vector/src/main/java/im/vector/app/features/usercode/UserCodeActivity.kt index 2e3e176180..356893aee2 100644 --- a/vector/src/main/java/im/vector/app/features/usercode/UserCodeActivity.kt +++ b/vector/src/main/java/im/vector/app/features/usercode/UserCodeActivity.kt @@ -127,7 +127,7 @@ class UserCodeActivity : VectorBaseActivity(), Toast.makeText(this, R.string.qr_code_not_scanned, Toast.LENGTH_SHORT).show() finish() } - } + }.exhaustive } } diff --git a/vector/src/main/res/layout/fragment_qr_code_scanner.xml b/vector/src/main/res/layout/fragment_qr_code_scanner.xml index 937b0706fb..fbde73c709 100644 --- a/vector/src/main/res/layout/fragment_qr_code_scanner.xml +++ b/vector/src/main/res/layout/fragment_qr_code_scanner.xml @@ -1,6 +1,7 @@ @@ -29,6 +30,7 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/appBarLayout" /> +