From 17f2ca0f7b005afa73d74a3b7c74080f38853fbf Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Fri, 12 Feb 2021 15:50:13 +0100 Subject: [PATCH] Fix some warnings --- .../vector/app/core/di/ActiveSessionHolder.kt | 4 +- .../im/vector/app/core/extensions/LiveData.kt | 4 +- .../app/core/platform/VectorBaseActivity.kt | 4 +- .../im/vector/app/core/utils/DataSource.kt | 2 +- .../app/core/utils/DefaultSubscriber.kt | 3 +- .../autocomplete/RecyclerViewPresenter.kt | 2 +- .../app/features/call/VectorCallActivity.kt | 2 +- .../restore/KeysBackupRestoreActivity.kt | 8 +- .../KeysBackupRestoreFromKeyFragment.kt | 4 +- ...KeysBackupRestoreFromPassphraseFragment.kt | 8 +- .../setup/KeysBackupSetupActivity.kt | 16 ++-- .../setup/KeysBackupSetupStep1Fragment.kt | 4 +- .../setup/KeysBackupSetupStep2Fragment.kt | 76 ++++++++++--------- .../setup/KeysBackupSetupStep3Fragment.kt | 4 +- .../crypto/keysrequest/KeyRequestHandler.kt | 4 +- .../recover/BackupToQuadSMigrationTask.kt | 2 +- .../IncomingVerificationRequestHandler.kt | 6 +- .../features/grouplist/GroupListViewModel.kt | 2 +- .../vector/app/features/home/HomeActivity.kt | 4 +- .../UnknownDeviceDetectorSharedViewModel.kt | 2 +- .../room/breadcrumbs/BreadcrumbsController.kt | 2 +- .../JumpToBottomViewVisibilityManager.kt | 4 +- .../home/room/detail/RoomDetailViewModel.kt | 2 +- .../timeline/factory/DefaultItemFactory.kt | 2 +- .../timeline/factory/MessageItemFactory.kt | 2 +- .../timeline/factory/NoticeItemFactory.kt | 2 +- .../helper/MessageItemAttributesFactory.kt | 6 +- .../timeline/item/AbsBaseMessageItem.kt | 2 +- .../detail/timeline/item/AbsMessageItem.kt | 4 +- .../room/detail/timeline/item/DefaultItem.kt | 2 +- .../detail/timeline/item/MessagePollItem.kt | 2 +- .../room/detail/timeline/item/NoticeItem.kt | 2 +- .../app/features/login/LoginFragment.kt | 2 +- .../login/LoginResetPasswordFragment.kt | 2 +- .../features/matrixto/MatrixToBottomSheet.kt | 2 +- .../reactions/EmojiReactionPickerActivity.kt | 5 +- .../members/RoomMemberListViewModel.kt | 2 +- .../CrossSigningSettingsViewModel.kt | 2 +- .../settings/devices/DevicesViewModel.kt | 2 +- .../devtools/AccountDataEpoxyController.kt | 2 +- .../RoomWidgetPermissionBottomSheet.kt | 1 - 41 files changed, 104 insertions(+), 109 deletions(-) diff --git a/vector/src/main/java/im/vector/app/core/di/ActiveSessionHolder.kt b/vector/src/main/java/im/vector/app/core/di/ActiveSessionHolder.kt index 77ca68fcf1..e739cac95f 100644 --- a/vector/src/main/java/im/vector/app/core/di/ActiveSessionHolder.kt +++ b/vector/src/main/java/im/vector/app/core/di/ActiveSessionHolder.kt @@ -23,7 +23,6 @@ import im.vector.app.features.crypto.keysrequest.KeyRequestHandler import im.vector.app.features.crypto.verification.IncomingVerificationRequestHandler import im.vector.app.features.notifications.PushRuleTriggerListener import im.vector.app.features.session.SessionListener -import org.matrix.android.sdk.api.auth.AuthenticationService import org.matrix.android.sdk.api.session.Session import timber.log.Timber import java.util.concurrent.atomic.AtomicReference @@ -31,8 +30,7 @@ import javax.inject.Inject import javax.inject.Singleton @Singleton -class ActiveSessionHolder @Inject constructor(private val authenticationService: AuthenticationService, - private val sessionObservableStore: ActiveSessionDataSource, +class ActiveSessionHolder @Inject constructor(private val sessionObservableStore: ActiveSessionDataSource, private val keyRequestHandler: KeyRequestHandler, private val incomingVerificationRequestHandler: IncomingVerificationRequestHandler, private val callManager: WebRtcCallManager, diff --git a/vector/src/main/java/im/vector/app/core/extensions/LiveData.kt b/vector/src/main/java/im/vector/app/core/extensions/LiveData.kt index 192953f609..b0a03b58da 100644 --- a/vector/src/main/java/im/vector/app/core/extensions/LiveData.kt +++ b/vector/src/main/java/im/vector/app/core/extensions/LiveData.kt @@ -25,11 +25,11 @@ import im.vector.app.core.utils.FirstThrottler import im.vector.app.core.utils.LiveEvent inline fun LiveData.observeK(owner: LifecycleOwner, crossinline observer: (T?) -> Unit) { - this.observe(owner, Observer { observer(it) }) + this.observe(owner, { observer(it) }) } inline fun LiveData.observeNotNull(owner: LifecycleOwner, crossinline observer: (T) -> Unit) { - this.observe(owner, Observer { it?.run(observer) }) + this.observe(owner, { it?.run(observer) }) } inline fun LiveData>.observeEvent(owner: LifecycleOwner, crossinline observer: (T) -> Unit) { diff --git a/vector/src/main/java/im/vector/app/core/platform/VectorBaseActivity.kt b/vector/src/main/java/im/vector/app/core/platform/VectorBaseActivity.kt index 5747f5158d..332bb4654e 100644 --- a/vector/src/main/java/im/vector/app/core/platform/VectorBaseActivity.kt +++ b/vector/src/main/java/im/vector/app/core/platform/VectorBaseActivity.kt @@ -208,12 +208,12 @@ abstract class VectorBaseActivity : AppCompatActivity(), HasScr navigator = screenComponent.navigator() activeSessionHolder = screenComponent.activeSessionHolder() vectorPreferences = vectorComponent.vectorPreferences() - configurationViewModel.activityRestarter.observe(this, Observer { + configurationViewModel.activityRestarter.observe(this) { if (!it.hasBeenHandled) { // Recreate the Activity because configuration has changed restart() } - }) + } pinLocker.getLiveState().observeNotNull(this) { if (this@VectorBaseActivity !is UnlockedActivity && it == PinLocker.State.LOCKED) { navigator.openPinCode(this, pinStartForActivityResult, PinMode.AUTH) diff --git a/vector/src/main/java/im/vector/app/core/utils/DataSource.kt b/vector/src/main/java/im/vector/app/core/utils/DataSource.kt index 06bdeb9277..fc4ee330bb 100644 --- a/vector/src/main/java/im/vector/app/core/utils/DataSource.kt +++ b/vector/src/main/java/im/vector/app/core/utils/DataSource.kt @@ -49,7 +49,7 @@ open class BehaviorDataSource(private val defaultValue: T? = null) : MutableD private fun createRelay(): BehaviorRelay { return if (defaultValue == null) { - BehaviorRelay.create() + BehaviorRelay.create() } else { BehaviorRelay.createDefault(defaultValue) } diff --git a/vector/src/main/java/im/vector/app/core/utils/DefaultSubscriber.kt b/vector/src/main/java/im/vector/app/core/utils/DefaultSubscriber.kt index 99c28becbc..a82e5a4e03 100644 --- a/vector/src/main/java/im/vector/app/core/utils/DefaultSubscriber.kt +++ b/vector/src/main/java/im/vector/app/core/utils/DefaultSubscriber.kt @@ -19,12 +19,11 @@ package im.vector.app.core.utils import io.reactivex.Completable import io.reactivex.Single import io.reactivex.disposables.Disposable -import io.reactivex.functions.Consumer import io.reactivex.internal.functions.Functions import timber.log.Timber fun Single.subscribeLogError(): Disposable { - return subscribe(Functions.emptyConsumer(), Consumer { Timber.e(it) }) + return subscribe(Functions.emptyConsumer(), { Timber.e(it) }) } fun Completable.subscribeLogError(): Disposable { diff --git a/vector/src/main/java/im/vector/app/features/autocomplete/RecyclerViewPresenter.kt b/vector/src/main/java/im/vector/app/features/autocomplete/RecyclerViewPresenter.kt index c4631300f1..7625eb6216 100644 --- a/vector/src/main/java/im/vector/app/features/autocomplete/RecyclerViewPresenter.kt +++ b/vector/src/main/java/im/vector/app/features/autocomplete/RecyclerViewPresenter.kt @@ -102,7 +102,7 @@ abstract class RecyclerViewPresenter(context: Context?) : AutocompletePresent return LinearLayoutManager(context, LinearLayoutManager.VERTICAL, false) } - private class Observer internal constructor(private val root: DataSetObserver) : RecyclerView.AdapterDataObserver() { + private class Observer constructor(private val root: DataSetObserver) : RecyclerView.AdapterDataObserver() { override fun onChanged() { root.onChanged() } diff --git a/vector/src/main/java/im/vector/app/features/call/VectorCallActivity.kt b/vector/src/main/java/im/vector/app/features/call/VectorCallActivity.kt index ab3769d1f3..091dbeec24 100644 --- a/vector/src/main/java/im/vector/app/features/call/VectorCallActivity.kt +++ b/vector/src/main/java/im/vector/app/features/call/VectorCallActivity.kt @@ -383,7 +383,7 @@ class VectorCallActivity : VectorBaseActivity(), CallContro mode: String?): Intent { return Intent(context, VectorCallActivity::class.java).apply { // what could be the best flags? - flags = Intent.FLAG_ACTIVITY_CLEAR_TOP + flags = FLAG_ACTIVITY_CLEAR_TOP putExtra(MvRx.KEY_ARG, CallArgs(roomId, callId, otherUserId, isIncomingCall, isVideoCall)) putExtra(EXTRA_MODE, mode) } diff --git a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreActivity.kt b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreActivity.kt index 80ae46262d..46ae84e47a 100644 --- a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreActivity.kt +++ b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreActivity.kt @@ -54,7 +54,7 @@ class KeysBackupRestoreActivity : SimpleFragmentActivity() { viewModel = viewModelProvider.get(KeysBackupRestoreSharedViewModel::class.java) viewModel.initSession(session) - viewModel.keySourceModel.observe(this, Observer { keySource -> + viewModel.keySourceModel.observe(this) { keySource -> if (keySource != null && !keySource.isInQuadS && supportFragmentManager.fragments.isEmpty()) { val isBackupCreatedFromPassphrase = viewModel.keyVersionResult.value?.getAuthDataAsMegolmBackupAuthData()?.privateKeySalt != null @@ -64,7 +64,7 @@ class KeysBackupRestoreActivity : SimpleFragmentActivity() { replaceFragment(R.id.container, KeysBackupRestoreFromKeyFragment::class.java) } } - }) + } viewModel.keyVersionResultError.observeEvent(this) { message -> AlertDialog.Builder(this) @@ -111,9 +111,9 @@ class KeysBackupRestoreActivity : SimpleFragmentActivity() { } } - viewModel.loadingEvent.observe(this, Observer { + viewModel.loadingEvent.observe(this) { updateWaitingView(it) - }) + } viewModel.importRoomKeysFinishWithResult.observeEvent(this) { // set data? diff --git a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreFromKeyFragment.kt b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreFromKeyFragment.kt index 2887a29776..350036f282 100644 --- a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreFromKeyFragment.kt +++ b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreFromKeyFragment.kt @@ -56,9 +56,9 @@ class KeysBackupRestoreFromKeyFragment @Inject constructor() } views.keyInputLayout.error = viewModel.recoveryCodeErrorText.value - viewModel.recoveryCodeErrorText.observe(viewLifecycleOwner, Observer { newValue -> + viewModel.recoveryCodeErrorText.observe(viewLifecycleOwner) { newValue -> views.keyInputLayout.error = newValue - }) + } views.keysRestoreButton.setOnClickListener { onRestoreFromKey() } views.keysBackupImport.setOnClickListener { onImport() } diff --git a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreFromPassphraseFragment.kt b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreFromPassphraseFragment.kt index d15446dd62..b6ed809c19 100644 --- a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreFromPassphraseFragment.kt +++ b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/restore/KeysBackupRestoreFromPassphraseFragment.kt @@ -51,17 +51,17 @@ class KeysBackupRestoreFromPassphraseFragment @Inject constructor() : VectorBase viewModel = fragmentViewModelProvider.get(KeysBackupRestoreFromPassphraseViewModel::class.java) sharedViewModel = activityViewModelProvider.get(KeysBackupRestoreSharedViewModel::class.java) - viewModel.passphraseErrorText.observe(viewLifecycleOwner, Observer { newValue -> + viewModel.passphraseErrorText.observe(viewLifecycleOwner) { newValue -> views.keysBackupPassphraseEnterTil.error = newValue - }) + } views.helperTextWithLink.text = spannableStringForHelperText() - viewModel.showPasswordMode.observe(viewLifecycleOwner, Observer { + viewModel.showPasswordMode.observe(viewLifecycleOwner) { val shouldBeVisible = it ?: false views.keysBackupPassphraseEnterEdittext.showPassword(shouldBeVisible) views.keysBackupViewShowPassword.render(shouldBeVisible) - }) + } views.keysBackupPassphraseEnterEdittext.setOnEditorActionListener { _, actionId, _ -> if (actionId == EditorInfo.IME_ACTION_DONE) { diff --git a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupActivity.kt b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupActivity.kt index ab8e725959..8900216905 100644 --- a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupActivity.kt +++ b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupActivity.kt @@ -49,20 +49,20 @@ class KeysBackupSetupActivity : SimpleFragmentActivity() { viewModel.showManualExport.value = intent.getBooleanExtra(EXTRA_SHOW_MANUAL_EXPORT, false) viewModel.initSession(session) - viewModel.isCreatingBackupVersion.observe(this, Observer { + viewModel.isCreatingBackupVersion.observe(this) { val isCreating = it ?: false if (isCreating) { showWaitingView() } else { hideWaitingView() } - }) + } - viewModel.loadingStatus.observe(this, Observer { + viewModel.loadingStatus.observe(this) { it?.let { updateWaitingView(it) } - }) + } viewModel.navigateEvent.observeEvent(this) { uxStateEvent -> when (uxStateEvent) { @@ -99,7 +99,7 @@ class KeysBackupSetupActivity : SimpleFragmentActivity() { } } - viewModel.prepareRecoverFailError.observe(this, Observer { error -> + viewModel.prepareRecoverFailError.observe(this) { error -> if (error != null) { AlertDialog.Builder(this) .setTitle(R.string.unknown_error) @@ -110,9 +110,9 @@ class KeysBackupSetupActivity : SimpleFragmentActivity() { } .show() } - }) + } - viewModel.creatingBackupError.observe(this, Observer { error -> + viewModel.creatingBackupError.observe(this) { error -> if (error != null) { AlertDialog.Builder(this) .setTitle(R.string.unexpected_error) @@ -123,7 +123,7 @@ class KeysBackupSetupActivity : SimpleFragmentActivity() { } .show() } - }) + } } private val saveStartForActivityResult = registerStartForActivityResult { activityResult -> diff --git a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupStep1Fragment.kt b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupStep1Fragment.kt index 44996a159c..53db9ef470 100644 --- a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupStep1Fragment.kt +++ b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupStep1Fragment.kt @@ -40,12 +40,12 @@ class KeysBackupSetupStep1Fragment @Inject constructor() : VectorBaseFragment - if (strength == null) { - views.keysBackupSetupStep2PassphraseStrengthLevel.strength = 0 - views.keysBackupSetupStep2PassphraseEnterTil.error = null - } else { - val score = strength.score - views.keysBackupSetupStep2PassphraseStrengthLevel.strength = score - - if (score in 1..3) { - val warning = strength.feedback?.getWarning(VectorLocale.applicationLocale) - if (warning != null) { - views.keysBackupSetupStep2PassphraseEnterTil.error = warning - } - - val suggestions = strength.feedback?.getSuggestions(VectorLocale.applicationLocale) - if (suggestions != null) { - views.keysBackupSetupStep2PassphraseEnterTil.error = suggestions.firstOrNull() - } - } else { + viewModel.run { + passwordStrength.observe(viewLifecycleOwner, Observer { strength -> + if (strength == null) { + views.keysBackupSetupStep2PassphraseStrengthLevel.strength = 0 views.keysBackupSetupStep2PassphraseEnterTil.error = null - } - } - }) + } else { + val score = strength.score + views.keysBackupSetupStep2PassphraseStrengthLevel.strength = score - viewModel.passphrase.observe(viewLifecycleOwner, Observer { newValue -> - if (newValue.isEmpty()) { - viewModel.passwordStrength.value = null - } else { - viewModel.viewModelScope.launch(Dispatchers.IO) { - val strength = zxcvbn.measure(newValue) - launch(Dispatchers.Main) { - viewModel.passwordStrength.value = strength + if (score in 1..3) { + val warning = strength.feedback?.getWarning(VectorLocale.applicationLocale) + if (warning != null) { + views.keysBackupSetupStep2PassphraseEnterTil.error = warning + } + + val suggestions = strength.feedback?.getSuggestions(VectorLocale.applicationLocale) + if (suggestions != null) { + views.keysBackupSetupStep2PassphraseEnterTil.error = suggestions.firstOrNull() + } + } else { + views.keysBackupSetupStep2PassphraseEnterTil.error = null + } + } + }) + + passphrase.observe(viewLifecycleOwner) { newValue -> + if (newValue.isEmpty()) { + passwordStrength.value = null + } else { + viewModelScope.launch(Dispatchers.IO) { + val strength = zxcvbn.measure(newValue) + launch(Dispatchers.Main) { + passwordStrength.value = strength + } } } } - }) + } views.keysBackupSetupStep2PassphraseEnterEdittext.setText(viewModel.passphrase.value) - viewModel.passphraseError.observe(viewLifecycleOwner, Observer { + viewModel.passphraseError.observe(viewLifecycleOwner) { TransitionManager.beginDelayedTransition(views.keysBackupRoot) views.keysBackupSetupStep2PassphraseEnterTil.error = it - }) + } views.keysBackupSetupStep2PassphraseConfirmEditText.setText(viewModel.confirmPassphrase.value) - viewModel.showPasswordMode.observe(viewLifecycleOwner, Observer { + viewModel.showPasswordMode.observe(viewLifecycleOwner) { val shouldBeVisible = it ?: false views.keysBackupSetupStep2PassphraseEnterEdittext.showPassword(shouldBeVisible) views.keysBackupSetupStep2PassphraseConfirmEditText.showPassword(shouldBeVisible) views.keysBackupSetupStep2ShowPassword.render(shouldBeVisible) - }) + } - viewModel.confirmPassphraseError.observe(viewLifecycleOwner, Observer { + viewModel.confirmPassphraseError.observe(viewLifecycleOwner) { TransitionManager.beginDelayedTransition(views.keysBackupRoot) views.keysBackupSetupStep2PassphraseConfirmTil.error = it - }) + } views.keysBackupSetupStep2PassphraseConfirmEditText.setOnEditorActionListener { _, actionId, _ -> if (actionId == EditorInfo.IME_ACTION_DONE) { diff --git a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupStep3Fragment.kt b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupStep3Fragment.kt index a41de109b0..8e3b121d91 100644 --- a/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupStep3Fragment.kt +++ b/vector/src/main/java/im/vector/app/features/crypto/keysbackup/setup/KeysBackupSetupStep3Fragment.kt @@ -61,7 +61,7 @@ class KeysBackupSetupStep3Fragment @Inject constructor() : VectorBaseFragment { reportProgress(params, R.string.bootstrap_progress_generating_ssss) - awaitCallback { + awaitCallback { quadS.generateKeyWithPassphrase( UUID.randomUUID().toString(), "ssss_key", diff --git a/vector/src/main/java/im/vector/app/features/crypto/verification/IncomingVerificationRequestHandler.kt b/vector/src/main/java/im/vector/app/features/crypto/verification/IncomingVerificationRequestHandler.kt index b7f967e592..48f3f0a460 100644 --- a/vector/src/main/java/im/vector/app/features/crypto/verification/IncomingVerificationRequestHandler.kt +++ b/vector/src/main/java/im/vector/app/features/crypto/verification/IncomingVerificationRequestHandler.kt @@ -92,13 +92,11 @@ class IncomingVerificationRequestHandler @Inject constructor( } addButton( context.getString(R.string.ignore), - Runnable { - tx.cancel() - } + { tx.cancel() } ) addButton( context.getString(R.string.action_open), - Runnable { + { (weakCurrentActivity?.get() as? VectorBaseActivity<*>)?.let { it.navigator.performDeviceVerification(it, tx.otherUserId, tx.transactionId) } diff --git a/vector/src/main/java/im/vector/app/features/grouplist/GroupListViewModel.kt b/vector/src/main/java/im/vector/app/features/grouplist/GroupListViewModel.kt index 3b096adbfb..63a3052467 100644 --- a/vector/src/main/java/im/vector/app/features/grouplist/GroupListViewModel.kt +++ b/vector/src/main/java/im/vector/app/features/grouplist/GroupListViewModel.kt @@ -123,7 +123,7 @@ class GroupListViewModel @AssistedInject constructor(@Assisted initialState: Gro session .rx() .liveGroupSummaries(groupSummariesQueryParams), - BiFunction { allCommunityGroup, communityGroups -> + { allCommunityGroup, communityGroups -> listOf(allCommunityGroup) + communityGroups } ) diff --git a/vector/src/main/java/im/vector/app/features/home/HomeActivity.kt b/vector/src/main/java/im/vector/app/features/home/HomeActivity.kt index 15e982492b..6a381ec049 100644 --- a/vector/src/main/java/im/vector/app/features/home/HomeActivity.kt +++ b/vector/src/main/java/im/vector/app/features/home/HomeActivity.kt @@ -285,10 +285,10 @@ class HomeActivity : dismissedAction = Runnable { homeActivityViewModel.handle(HomeActivityViewActions.PushPromptHasBeenReviewed) } - addButton(getString(R.string.dismiss), Runnable { + addButton(getString(R.string.dismiss), { homeActivityViewModel.handle(HomeActivityViewActions.PushPromptHasBeenReviewed) }, true) - addButton(getString(R.string.settings), Runnable { + addButton(getString(R.string.settings), { (weakCurrentActivity?.get() as? VectorBaseActivity<*>)?.let { // action(it) homeActivityViewModel.handle(HomeActivityViewActions.PushPromptHasBeenReviewed) diff --git a/vector/src/main/java/im/vector/app/features/home/UnknownDeviceDetectorSharedViewModel.kt b/vector/src/main/java/im/vector/app/features/home/UnknownDeviceDetectorSharedViewModel.kt index f4f16502ab..ac046ca4c3 100644 --- a/vector/src/main/java/im/vector/app/features/home/UnknownDeviceDetectorSharedViewModel.kt +++ b/vector/src/main/java/im/vector/app/features/home/UnknownDeviceDetectorSharedViewModel.kt @@ -103,7 +103,7 @@ class UnknownDeviceDetectorSharedViewModel @AssistedInject constructor(@Assisted session.rx().liveUserCryptoDevices(session.myUserId), session.rx().liveMyDevicesInfo(), session.rx().liveCrossSigningPrivateKeys(), - Function3 { cryptoList, infoList, pInfo -> + { cryptoList, infoList, pInfo -> // Timber.v("## Detector trigger ${cryptoList.map { "${it.deviceId} ${it.trustLevel}" }}") // Timber.v("## Detector trigger canCrossSign ${pInfo.get().selfSigned != null}") infoList diff --git a/vector/src/main/java/im/vector/app/features/home/room/breadcrumbs/BreadcrumbsController.kt b/vector/src/main/java/im/vector/app/features/home/room/breadcrumbs/BreadcrumbsController.kt index 4e6bb124ad..7f48190a67 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/breadcrumbs/BreadcrumbsController.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/breadcrumbs/BreadcrumbsController.kt @@ -65,7 +65,7 @@ class BreadcrumbsController @Inject constructor( hasUnreadMessage(it.hasUnreadMessages) hasDraft(it.userDrafts.isNotEmpty()) itemClickListener( - DebouncedClickListener(View.OnClickListener { _ -> + DebouncedClickListener({ _ -> listener?.onBreadcrumbClicked(it.roomId) }) ) diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/JumpToBottomViewVisibilityManager.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/JumpToBottomViewVisibilityManager.kt index d3f9b6eda5..2810b27aa6 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/JumpToBottomViewVisibilityManager.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/JumpToBottomViewVisibilityManager.kt @@ -60,9 +60,9 @@ class JumpToBottomViewVisibilityManager( } fun maybeShowJumpToBottomViewVisibilityWithDelay() { - debouncer.debounce("jump_to_bottom_visibility", 250, Runnable { + debouncer.debounce("jump_to_bottom_visibility", 250) { maybeShowJumpToBottomViewVisibility() - }) + } } private fun maybeShowJumpToBottomViewVisibility() { diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewModel.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewModel.kt index cb93db1d72..2994649231 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewModel.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewModel.kt @@ -1330,7 +1330,7 @@ class RoomDetailViewModel @AssistedInject constructor( .combineLatest, RoomSummary, UnreadState>( timelineEvents.observeOn(Schedulers.computation()), room.rx().liveRoomSummary().unwrap(), - BiFunction { timelineEvents, roomSummary -> + { timelineEvents, roomSummary -> computeUnreadState(timelineEvents, roomSummary) } ) diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/DefaultItemFactory.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/DefaultItemFactory.kt index 2120576bee..582c343806 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/DefaultItemFactory.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/DefaultItemFactory.kt @@ -42,7 +42,7 @@ class DefaultItemFactory @Inject constructor(private val avatarSizeProvider: Ava avatarRenderer = avatarRenderer, informationData = informationData, text = text, - itemLongClickListener = View.OnLongClickListener { view -> + itemLongClickListener = { view -> callback?.onEventLongClicked(informationData, null, view) ?: false }, readReceiptsCallback = callback diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/MessageItemFactory.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/MessageItemFactory.kt index b3fa7c0eda..e9cf8251de 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/MessageItemFactory.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/MessageItemFactory.kt @@ -322,7 +322,7 @@ class MessageItemFactory @Inject constructor( mode(ImageContentRenderer.Mode.STICKER) } else { clickListener( - DebouncedClickListener(View.OnClickListener { view -> + DebouncedClickListener({ view -> callback?.onImageMessageClicked(messageContent, data, view) })) } diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/NoticeItemFactory.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/NoticeItemFactory.kt index cd8c682f39..b8003ae1b7 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/NoticeItemFactory.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/NoticeItemFactory.kt @@ -41,7 +41,7 @@ class NoticeItemFactory @Inject constructor(private val eventFormatter: NoticeEv avatarRenderer = avatarRenderer, informationData = informationData, noticeText = formattedText, - itemLongClickListener = View.OnLongClickListener { view -> + itemLongClickListener = { view -> callback?.onEventLongClicked(informationData, null, view) ?: false }, readReceiptsCallback = callback, diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/helper/MessageItemAttributesFactory.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/helper/MessageItemAttributesFactory.kt index c120fa671c..de668d4f31 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/helper/MessageItemAttributesFactory.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/helper/MessageItemAttributesFactory.kt @@ -39,13 +39,13 @@ class MessageItemAttributesFactory @Inject constructor( informationData = informationData, avatarRenderer = avatarRenderer, messageColorProvider = messageColorProvider, - itemLongClickListener = View.OnLongClickListener { view -> + itemLongClickListener = { view -> callback?.onEventLongClicked(informationData, messageContent, view) ?: false }, - itemClickListener = DebouncedClickListener(View.OnClickListener { view -> + itemClickListener = DebouncedClickListener({ view -> callback?.onEventCellClicked(informationData, messageContent, view) }), - memberClickListener = DebouncedClickListener(View.OnClickListener { + memberClickListener = DebouncedClickListener({ callback?.onMemberNameClicked(informationData) }), reactionPillCallback = callback, diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsBaseMessageItem.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsBaseMessageItem.kt index 29aca2c4d5..11bbcbcb8a 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsBaseMessageItem.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsBaseMessageItem.kt @@ -39,7 +39,7 @@ abstract class AbsBaseMessageItem : BaseEventItem abstract val baseAttributes: Attributes - private val _readReceiptsClickListener = DebouncedClickListener(View.OnClickListener { + private val _readReceiptsClickListener = DebouncedClickListener({ baseAttributes.readReceiptsCallback?.onReadReceiptsClicked(baseAttributes.informationData.readReceipts) }) diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsMessageItem.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsMessageItem.kt index e0f67fdd30..d4b1b8859a 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsMessageItem.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsMessageItem.kt @@ -42,10 +42,10 @@ abstract class AbsMessageItem : AbsBaseMessageItem @EpoxyAttribute lateinit var attributes: Attributes - private val _avatarClickListener = DebouncedClickListener(View.OnClickListener { + private val _avatarClickListener = DebouncedClickListener({ attributes.avatarCallback?.onAvatarClicked(attributes.informationData) }) - private val _memberNameClickListener = DebouncedClickListener(View.OnClickListener { + private val _memberNameClickListener = DebouncedClickListener({ attributes.avatarCallback?.onMemberNameClicked(attributes.informationData) }) diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/DefaultItem.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/DefaultItem.kt index 8cd3c95141..cdc677334e 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/DefaultItem.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/DefaultItem.kt @@ -32,7 +32,7 @@ abstract class DefaultItem : BaseEventItem() { @EpoxyAttribute lateinit var attributes: Attributes - private val _readReceiptsClickListener = DebouncedClickListener(View.OnClickListener { + private val _readReceiptsClickListener = DebouncedClickListener({ attributes.readReceiptsCallback?.onReadReceiptsClicked(attributes.informationData.readReceipts) }) diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/MessagePollItem.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/MessagePollItem.kt index a7db58deb1..ca5c3b2dea 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/MessagePollItem.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/MessagePollItem.kt @@ -143,7 +143,7 @@ abstract class MessagePollItem : AbsMessageItem() { override fun bindView(itemView: View) { super.bindView(itemView) val buttons = listOf(button1, button2, button3, button4, button5) - val clickListener = DebouncedClickListener(View.OnClickListener { + val clickListener = DebouncedClickListener({ val optionIndex = buttons.indexOf(it) if (optionIndex != -1 && pollId != null) { val compatValue = if (optionIndex < optionValues?.size ?: 0) optionValues?.get(optionIndex) else null diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/NoticeItem.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/NoticeItem.kt index 34ee8c69fa..03156fcacc 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/NoticeItem.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/NoticeItem.kt @@ -35,7 +35,7 @@ abstract class NoticeItem : BaseEventItem() { @EpoxyAttribute lateinit var attributes: Attributes - private val _readReceiptsClickListener = DebouncedClickListener(View.OnClickListener { + private val _readReceiptsClickListener = DebouncedClickListener({ attributes.readReceiptsCallback?.onReadReceiptsClicked(attributes.informationData.readReceipts) }) diff --git a/vector/src/main/java/im/vector/app/features/login/LoginFragment.kt b/vector/src/main/java/im/vector/app/features/login/LoginFragment.kt index 8f18fd8296..2d93ca32be 100644 --- a/vector/src/main/java/im/vector/app/features/login/LoginFragment.kt +++ b/vector/src/main/java/im/vector/app/features/login/LoginFragment.kt @@ -225,7 +225,7 @@ class LoginFragment @Inject constructor() : AbstractSSOLoginFragment { isLoginNotEmpty, isPasswordNotEmpty -> + { isLoginNotEmpty, isPasswordNotEmpty -> isLoginNotEmpty && isPasswordNotEmpty } ) diff --git a/vector/src/main/java/im/vector/app/features/login/LoginResetPasswordFragment.kt b/vector/src/main/java/im/vector/app/features/login/LoginResetPasswordFragment.kt index 4743d42312..75d5bd9807 100644 --- a/vector/src/main/java/im/vector/app/features/login/LoginResetPasswordFragment.kt +++ b/vector/src/main/java/im/vector/app/features/login/LoginResetPasswordFragment.kt @@ -69,7 +69,7 @@ class LoginResetPasswordFragment @Inject constructor() : AbstractLoginFragment { isEmail, isPasswordNotEmpty -> + { isEmail, isPasswordNotEmpty -> isEmail && isPasswordNotEmpty } ) diff --git a/vector/src/main/java/im/vector/app/features/matrixto/MatrixToBottomSheet.kt b/vector/src/main/java/im/vector/app/features/matrixto/MatrixToBottomSheet.kt index ca15efe25a..1d897477a2 100644 --- a/vector/src/main/java/im/vector/app/features/matrixto/MatrixToBottomSheet.kt +++ b/vector/src/main/java/im/vector/app/features/matrixto/MatrixToBottomSheet.kt @@ -138,7 +138,7 @@ class MatrixToBottomSheet : fun withLink(matrixToLink: String, listener: InteractionListener?): MatrixToBottomSheet { return MatrixToBottomSheet().apply { arguments = Bundle().apply { - putParcelable(MvRx.KEY_ARG, MatrixToBottomSheet.MatrixToArgs( + putParcelable(MvRx.KEY_ARG, MatrixToArgs( matrixToLink = matrixToLink )) } diff --git a/vector/src/main/java/im/vector/app/features/reactions/EmojiReactionPickerActivity.kt b/vector/src/main/java/im/vector/app/features/reactions/EmojiReactionPickerActivity.kt index 992e677723..b2f1c3c15a 100644 --- a/vector/src/main/java/im/vector/app/features/reactions/EmojiReactionPickerActivity.kt +++ b/vector/src/main/java/im/vector/app/features/reactions/EmojiReactionPickerActivity.kt @@ -26,7 +26,6 @@ import android.view.MenuItem import android.widget.SearchView import androidx.appcompat.widget.Toolbar import androidx.core.view.isVisible -import androidx.lifecycle.Observer import com.airbnb.mvrx.viewModel import com.google.android.material.tabs.TabLayout import com.jakewharton.rxbinding3.widget.queryTextChanges @@ -107,13 +106,13 @@ class EmojiReactionPickerActivity : VectorBaseActivity + viewModel.currentSection.observe(this) { section -> section?.let { views.tabs.removeOnTabSelectedListener(tabLayoutSelectionListener) views.tabs.getTabAt(it)?.select() views.tabs.addOnTabSelectedListener(tabLayoutSelectionListener) } - }) + } viewModel.navigateEvent.observeEvent(this) { if (it == EmojiChooserViewModel.NAVIGATE_FINISH) { diff --git a/vector/src/main/java/im/vector/app/features/roomprofile/members/RoomMemberListViewModel.kt b/vector/src/main/java/im/vector/app/features/roomprofile/members/RoomMemberListViewModel.kt index de983537fc..6c810661b0 100644 --- a/vector/src/main/java/im/vector/app/features/roomprofile/members/RoomMemberListViewModel.kt +++ b/vector/src/main/java/im/vector/app/features/roomprofile/members/RoomMemberListViewModel.kt @@ -90,7 +90,7 @@ class RoomMemberListViewModel @AssistedInject constructor(@Assisted initialState .liveStateEvent(EventType.STATE_ROOM_POWER_LEVELS, QueryStringValue.NoCondition) .mapOptional { it.content.toModel() } .unwrap(), - BiFunction { roomMembers, powerLevelsContent -> + { roomMembers, powerLevelsContent -> buildRoomMemberSummaries(powerLevelsContent, roomMembers) } ) diff --git a/vector/src/main/java/im/vector/app/features/settings/crosssigning/CrossSigningSettingsViewModel.kt b/vector/src/main/java/im/vector/app/features/settings/crosssigning/CrossSigningSettingsViewModel.kt index 04100056aa..cce72b1e27 100644 --- a/vector/src/main/java/im/vector/app/features/settings/crosssigning/CrossSigningSettingsViewModel.kt +++ b/vector/src/main/java/im/vector/app/features/settings/crosssigning/CrossSigningSettingsViewModel.kt @@ -62,7 +62,7 @@ class CrossSigningSettingsViewModel @AssistedInject constructor( Observable.combineLatest, Optional, Pair, Optional>>( session.rx().liveMyDevicesInfo(), session.rx().liveCrossSigningInfo(session.myUserId), - BiFunction { myDevicesInfo, mxCrossSigningInfo -> + { myDevicesInfo, mxCrossSigningInfo -> myDevicesInfo to mxCrossSigningInfo } ) diff --git a/vector/src/main/java/im/vector/app/features/settings/devices/DevicesViewModel.kt b/vector/src/main/java/im/vector/app/features/settings/devices/DevicesViewModel.kt index 60551d49a9..8be7ad817c 100644 --- a/vector/src/main/java/im/vector/app/features/settings/devices/DevicesViewModel.kt +++ b/vector/src/main/java/im/vector/app/features/settings/devices/DevicesViewModel.kt @@ -121,7 +121,7 @@ class DevicesViewModel @AssistedInject constructor( Observable.combineLatest, List, List>( session.rx().liveUserCryptoDevices(session.myUserId), session.rx().liveMyDevicesInfo(), - BiFunction { cryptoList, infoList -> + { cryptoList, infoList -> infoList .sortedByDescending { it.lastSeenTs } .map { deviceInfo -> diff --git a/vector/src/main/java/im/vector/app/features/settings/devtools/AccountDataEpoxyController.kt b/vector/src/main/java/im/vector/app/features/settings/devtools/AccountDataEpoxyController.kt index f06e23a366..13d7e0f396 100644 --- a/vector/src/main/java/im/vector/app/features/settings/devtools/AccountDataEpoxyController.kt +++ b/vector/src/main/java/im/vector/app/features/settings/devtools/AccountDataEpoxyController.kt @@ -68,7 +68,7 @@ class AccountDataEpoxyController @Inject constructor( genericItemWithValue { id(accountData.type) title(accountData.type) - itemClickAction(DebouncedClickListener(View.OnClickListener { + itemClickAction(DebouncedClickListener({ interactionListener?.didTap(accountData) })) itemLongClickAction(View.OnLongClickListener { diff --git a/vector/src/main/java/im/vector/app/features/widgets/permissions/RoomWidgetPermissionBottomSheet.kt b/vector/src/main/java/im/vector/app/features/widgets/permissions/RoomWidgetPermissionBottomSheet.kt index 68ae11c1bf..9618f5b98f 100644 --- a/vector/src/main/java/im/vector/app/features/widgets/permissions/RoomWidgetPermissionBottomSheet.kt +++ b/vector/src/main/java/im/vector/app/features/widgets/permissions/RoomWidgetPermissionBottomSheet.kt @@ -34,7 +34,6 @@ import im.vector.app.databinding.BottomSheetRoomWidgetPermissionBinding import im.vector.app.features.home.AvatarRenderer import im.vector.app.features.widgets.WidgetArgs -import org.matrix.android.sdk.api.util.toMatrixItem import javax.inject.Inject class RoomWidgetPermissionBottomSheet :