From ed48eb38c9dbda84a9929ef67be4127e7a38b9f5 Mon Sep 17 00:00:00 2001 From: ariskotsomitopoulos Date: Tue, 21 Dec 2021 13:23:17 +0200 Subject: [PATCH] Apply ktlinFormat --- .../java/org/matrix/android/sdk/flow/FlowRoom.kt | 1 - .../api/session/room/timeline/TimelineService.kt | 1 - .../api/session/threads/ThreadNotificationState.kt | 1 - .../database/RealmSessionStoreMigration.kt | 2 -- .../internal/database/helper/ThreadEventsHelper.kt | 7 +------ .../sdk/internal/database/model/ChunkEntity.kt | 1 - .../sdk/internal/database/model/EventEntity.kt | 1 - .../internal/database/query/ChunkEntityQueries.kt | 4 ---- .../internal/database/query/EventEntityQueries.kt | 2 -- .../database/query/TimelineEventEntityQueries.kt | 2 -- .../room/relation/DefaultRelationService.kt | 1 - .../session/room/send/DefaultSendService.kt | 1 - .../session/room/send/LocalEchoEventFactory.kt | 1 - .../session/room/timeline/DefaultTimeline.kt | 7 +------ .../session/room/timeline/PaginationTask.kt | 1 - .../room/timeline/TimelineEventDecryptor.kt | 1 - .../room/timeline/TokenChunkEventPersistor.kt | 1 - .../internal/session/sync/SyncResponseHandler.kt | 2 +- .../session/sync/handler/room/RoomSyncHandler.kt | 2 +- .../sync/handler/room/ThreadsAwarenessHandler.kt | 1 - .../command/AutocompleteCommandPresenter.kt | 6 ++---- .../vector/app/features/command/CommandParser.kt | 4 ++-- .../home/room/detail/RoomDetailActivity.kt | 2 +- .../home/room/detail/RoomDetailViewState.kt | 1 - .../features/home/room/detail/TimelineFragment.kt | 12 ++---------- .../room/detail/composer/MessageComposerAction.kt | 2 +- .../detail/composer/MessageComposerViewModel.kt | 14 ++++++-------- .../detail/timeline/TimelineEventController.kt | 4 ++-- .../helper/TimelineEventVisibilityHelper.kt | 2 +- .../detail/timeline/item/AbsBaseMessageItem.kt | 1 + .../room/detail/timeline/item/AbsMessageItem.kt | 4 ++-- .../features/home/room/threads/ThreadsActivity.kt | 3 +-- .../room/threads/list/model/ThreadListModel.kt | 5 ++--- .../threads/list/viewmodel/ThreadListViewState.kt | 2 +- .../im/vector/app/features/navigation/Navigator.kt | 1 - 35 files changed, 28 insertions(+), 75 deletions(-) diff --git a/matrix-sdk-android-flow/src/main/java/org/matrix/android/sdk/flow/FlowRoom.kt b/matrix-sdk-android-flow/src/main/java/org/matrix/android/sdk/flow/FlowRoom.kt index cdb3bdf9c2..46acdc123b 100644 --- a/matrix-sdk-android-flow/src/main/java/org/matrix/android/sdk/flow/FlowRoom.kt +++ b/matrix-sdk-android-flow/src/main/java/org/matrix/android/sdk/flow/FlowRoom.kt @@ -21,7 +21,6 @@ import kotlinx.coroutines.flow.Flow import org.matrix.android.sdk.api.query.QueryStringValue import org.matrix.android.sdk.api.session.events.model.Event import org.matrix.android.sdk.api.session.room.Room -import org.matrix.android.sdk.api.session.room.RoomSummaryQueryParams import org.matrix.android.sdk.api.session.room.members.RoomMemberQueryParams import org.matrix.android.sdk.api.session.room.model.EventAnnotationsSummary import org.matrix.android.sdk.api.session.room.model.ReadReceipt diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/room/timeline/TimelineService.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/room/timeline/TimelineService.kt index 4ac4aab4e6..bf48353918 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/room/timeline/TimelineService.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/room/timeline/TimelineService.kt @@ -91,5 +91,4 @@ interface TimelineService { * @param rootThreadEventId the eventId of the current thread */ suspend fun markThreadAsRead(rootThreadEventId: String) - } diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/threads/ThreadNotificationState.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/threads/ThreadNotificationState.kt index 093e4a7627..58cc3a0706 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/threads/ThreadNotificationState.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/threads/ThreadNotificationState.kt @@ -30,5 +30,4 @@ enum class ThreadNotificationState { // The is at least one new message that should bi highlighted // ex. "Hello @aris.kotsomitopoulos" NEW_HIGHLIGHTED_MESSAGE; - } diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/RealmSessionStoreMigration.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/RealmSessionStoreMigration.kt index 04c48a1889..88a7b7abb3 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/RealmSessionStoreMigration.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/RealmSessionStoreMigration.kt @@ -26,7 +26,6 @@ import org.matrix.android.sdk.api.session.room.model.VersioningState import org.matrix.android.sdk.api.session.room.model.create.RoomCreateContent import org.matrix.android.sdk.api.session.room.model.tag.RoomTag import org.matrix.android.sdk.api.session.threads.ThreadNotificationState -import org.matrix.android.sdk.internal.database.model.ChunkEntityFields import org.matrix.android.sdk.internal.database.model.CurrentStateEventEntityFields import org.matrix.android.sdk.internal.database.model.EditAggregatedSummaryEntityFields import org.matrix.android.sdk.internal.database.model.EditionOfEventFields @@ -89,7 +88,6 @@ internal class RealmSessionStoreMigration @Inject constructor( if (oldVersion <= 17) migrateTo18(realm) if (oldVersion <= 18) migrateTo19(realm) if (oldVersion <= 19) migrateTo20(realm) - } private fun migrateTo1(realm: DynamicRealm) { diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/helper/ThreadEventsHelper.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/helper/ThreadEventsHelper.kt index 3610d5871b..557bb4bdf1 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/helper/ThreadEventsHelper.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/helper/ThreadEventsHelper.kt @@ -37,13 +37,10 @@ import org.matrix.android.sdk.internal.database.query.whereRoomId * of threads included. If there is no root thread event no action is done */ internal fun Map.updateThreadSummaryIfNeeded(roomId: String, realm: Realm, currentUserId: String) { - if (!BuildConfig.THREADING_ENABLED) return for ((rootThreadEventId, eventEntity) in this) { - eventEntity.findAllThreadsForRootEventId(eventEntity.realm, rootThreadEventId).let { - if (it.isNullOrEmpty()) return@let val latestMessage = it.firstOrNull() @@ -55,7 +52,6 @@ internal fun Map.updateThreadSummaryIfNeeded(roomId: String threadsCounted = it.size, latestMessageTimelineEventEntity = latestMessage ) - } } @@ -175,7 +171,6 @@ internal fun isUserMentioned(currentUserId: String, timelineEventEntity: Timelin * immediately so we should not display wrong notifications */ internal fun updateNotificationsNew(roomId: String, realm: Realm, currentUserId: String) { - val readReceipt = findMyReadReceipt(realm, roomId, currentUserId) ?: return val readReceiptChunk = ChunkEntity @@ -190,7 +185,7 @@ internal fun updateNotificationsNew(roomId: String, realm: Realm, currentUserId: val readReceiptChunkPosition = readReceiptChunkTimelineEvents.indexOfFirst { it.eventId == readReceipt } - if(readReceiptChunkPosition == -1) return + if (readReceiptChunkPosition == -1) return if (readReceiptChunkPosition < readReceiptChunkTimelineEvents.lastIndex) { // If the read receipt is found inside the chunk diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/model/ChunkEntity.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/model/ChunkEntity.kt index 0b9a1ee8cc..68533a3c19 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/model/ChunkEntity.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/model/ChunkEntity.kt @@ -44,7 +44,6 @@ internal open class ChunkEntity(@Index var prevToken: String? = null, val room: RealmResults? = null companion object - } internal fun ChunkEntity.deleteOnCascade(deleteStateEvents: Boolean, canDeleteRoot: Boolean) { diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/model/EventEntity.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/model/EventEntity.kt index 3a7611fc36..f4e12bf3ed 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/model/EventEntity.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/model/EventEntity.kt @@ -95,5 +95,4 @@ internal open class EventEntity(@Index var eventId: String = "", } fun isThread(): Boolean = rootThreadEventId != null - } diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/ChunkEntityQueries.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/ChunkEntityQueries.kt index 2261d9786a..156a8dd767 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/ChunkEntityQueries.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/ChunkEntityQueries.kt @@ -46,9 +46,6 @@ internal fun ChunkEntity.Companion.findLastForwardChunkOfRoom(realm: Realm, room .findFirst() } - - - internal fun ChunkEntity.Companion.findAllIncludingEvents(realm: Realm, eventIds: List): RealmResults { return realm.where() .`in`(ChunkEntityFields.TIMELINE_EVENTS.EVENT_ID, eventIds.toTypedArray()) @@ -59,7 +56,6 @@ internal fun ChunkEntity.Companion.findIncludingEvent(realm: Realm, eventId: Str return findAllIncludingEvents(realm, listOf(eventId)).firstOrNull() } - internal fun ChunkEntity.Companion.create( realm: Realm, prevToken: String?, diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/EventEntityQueries.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/EventEntityQueries.kt index a439d6aae7..f7fa1037ba 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/EventEntityQueries.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/EventEntityQueries.kt @@ -49,13 +49,11 @@ internal fun EventEntity.Companion.where(realm: Realm, eventId: String): RealmQu .equalTo(EventEntityFields.EVENT_ID, eventId) } - internal fun EventEntity.Companion.whereRoomId(realm: Realm, roomId: String): RealmQuery { return realm.where() .equalTo(EventEntityFields.ROOM_ID, roomId) } - internal fun EventEntity.Companion.where(realm: Realm, eventIds: List): RealmQuery { return realm.where() .`in`(EventEntityFields.EVENT_ID, eventIds.toTypedArray()) diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/TimelineEventEntityQueries.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/TimelineEventEntityQueries.kt index 9ce59904b4..63f41ebf2c 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/TimelineEventEntityQueries.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/query/TimelineEventEntityQueries.kt @@ -25,11 +25,9 @@ import io.realm.kotlin.where import org.matrix.android.sdk.api.session.room.send.SendState import org.matrix.android.sdk.api.session.room.timeline.TimelineEventFilters import org.matrix.android.sdk.internal.database.model.ChunkEntity -import org.matrix.android.sdk.internal.database.model.ChunkEntityFields import org.matrix.android.sdk.internal.database.model.RoomEntity import org.matrix.android.sdk.internal.database.model.TimelineEventEntity import org.matrix.android.sdk.internal.database.model.TimelineEventEntityFields -import timber.log.Timber internal fun TimelineEventEntity.Companion.where(realm: Realm, roomId: String, eventId: String): RealmQuery { return realm.where() diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/relation/DefaultRelationService.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/relation/DefaultRelationService.kt index a82d6e8d19..d459e79a4a 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/relation/DefaultRelationService.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/relation/DefaultRelationService.kt @@ -169,7 +169,6 @@ internal class DefaultRelationService @AssistedInject constructor( autoMarkdown: Boolean, formattedText: String?, eventReplied: TimelineEvent?): Cancelable? { - val event = if (eventReplied != null) { eventFactory.createReplyTextEvent( roomId = roomId, diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/send/DefaultSendService.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/send/DefaultSendService.kt index e89ea77835..8fe799b1a1 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/send/DefaultSendService.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/send/DefaultSendService.kt @@ -258,7 +258,6 @@ internal class DefaultSendService @AssistedInject constructor( roomIds: Set, rootThreadEventId: String? ): Cancelable { - // Ensure that the event will not be send in a thread if we are a different flow. // Like sending files to multiple rooms val rootThreadId = if (roomIds.isNotEmpty()) null else rootThreadEventId diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/send/LocalEchoEventFactory.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/send/LocalEchoEventFactory.kt index 27e50e5e93..1046bcee49 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/send/LocalEchoEventFactory.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/send/LocalEchoEventFactory.kt @@ -397,7 +397,6 @@ internal class LocalEchoEventFactory @Inject constructor( msgType: String, autoMarkdown: Boolean, formattedText: String?): Event { - val content = formattedText?.let { TextContent(text, it) } ?: createTextContent(text, autoMarkdown) return createEvent( roomId, diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/DefaultTimeline.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/DefaultTimeline.kt index 1fe05ced68..69e56a85d0 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/DefaultTimeline.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/DefaultTimeline.kt @@ -180,7 +180,6 @@ internal class DefaultTimeline( .endGroup() .sort(TimelineEventEntityFields.DISPLAY_INDEX, Sort.DESCENDING) .findAll() - } ?: buildEventQuery(realm).sort(TimelineEventEntityFields.DISPLAY_INDEX, Sort.DESCENDING).findAll() timelineEvents.addChangeListener(eventsChangeListener) @@ -332,7 +331,6 @@ internal class DefaultTimeline( val firstCacheEvent = results.firstOrNull() val chunkEntity = getLiveChunk() - updateState(Timeline.Direction.FORWARDS) { it.copy( hasMoreInCache = !builtEventsIdMap.containsKey(firstCacheEvent?.eventId), // what is in DB @@ -340,7 +338,6 @@ internal class DefaultTimeline( ) } updateState(Timeline.Direction.BACKWARDS) { - it.copy( hasMoreInCache = !builtEventsIdMap.containsKey(lastCacheEvent?.eventId), hasReachedEnd = if (isFromThreadTimeline) true else chunkEntity?.isLastBackward ?: false || lastCacheEvent?.root?.type == EventType.STATE_ROOM_CREATE @@ -497,7 +494,6 @@ internal class DefaultTimeline( * This has to be called on TimelineThread as it accesses realm live results */ private fun executePaginationTask(direction: Timeline.Direction, limit: Int) { - val currentChunk = getLiveChunk() val token = if (direction == Timeline.Direction.BACKWARDS) currentChunk?.prevToken else currentChunk?.nextToken if (token == null) { @@ -604,8 +600,7 @@ internal class DefaultTimeline( nextDisplayIndex = offsetIndex + 1 } - - if(!BuildConfig.THREADING_ENABLED) { + if (!BuildConfig.THREADING_ENABLED) { // Prerequisite to in order for the ThreadsAwarenessHandler to work properly fetchRootThreadEventsIfNeeded(offsetResults) } diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/PaginationTask.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/PaginationTask.kt index cb23061eda..8aeccb66c8 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/PaginationTask.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/PaginationTask.kt @@ -21,7 +21,6 @@ import org.matrix.android.sdk.internal.network.executeRequest import org.matrix.android.sdk.internal.session.filter.FilterRepository import org.matrix.android.sdk.internal.session.room.RoomAPI import org.matrix.android.sdk.internal.task.Task -import timber.log.Timber import javax.inject.Inject internal interface PaginationTask : Task { diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/TimelineEventDecryptor.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/TimelineEventDecryptor.kt index aa792f6b9b..a4d48903ad 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/TimelineEventDecryptor.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/TimelineEventDecryptor.kt @@ -115,7 +115,6 @@ internal class TimelineEventDecryptor @Inject constructor( .findFirst() eventEntity?.apply { - val decryptedPayload = if (!BuildConfig.THREADING_ENABLED) { threadsAwarenessHandler.handleIfNeededDuringDecryption( diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/TokenChunkEventPersistor.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/TokenChunkEventPersistor.kt index 8331d3f5f4..b909b2feef 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/TokenChunkEventPersistor.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/TokenChunkEventPersistor.kt @@ -238,7 +238,6 @@ internal class TokenChunkEventPersistor @Inject constructor( // This is a normal event or a root thread one optimizedThreadSummaryMap[eventEntity.eventId] = eventEntity } - } // Find all the chunks which contain at least one event from the list of eventIds diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/SyncResponseHandler.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/SyncResponseHandler.kt index 5ac3eadb75..a3cfddd472 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/SyncResponseHandler.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/SyncResponseHandler.kt @@ -102,7 +102,7 @@ internal class SyncResponseHandler @Inject constructor( val aggregator = SyncResponsePostTreatmentAggregator() // Prerequisite for thread events handling in RoomSyncHandler - if(!BuildConfig.THREADING_ENABLED) { + if (!BuildConfig.THREADING_ENABLED) { threadsAwarenessHandler.fetchRootThreadEventsIfNeeded(syncResponse) } diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/RoomSyncHandler.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/RoomSyncHandler.kt index f354a98f80..8386071755 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/RoomSyncHandler.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/RoomSyncHandler.kt @@ -376,7 +376,7 @@ internal class RoomSyncHandler @Inject constructor(private val readReceiptHandle decryptIfNeeded(event, roomId) } - if(!BuildConfig.THREADING_ENABLED) { + if (!BuildConfig.THREADING_ENABLED) { threadsAwarenessHandler.handleIfNeeded( realm = realm, roomId = roomId, diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/ThreadsAwarenessHandler.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/ThreadsAwarenessHandler.kt index eb03875cb1..a4ebfabc5c 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/ThreadsAwarenessHandler.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/ThreadsAwarenessHandler.kt @@ -45,7 +45,6 @@ import org.matrix.android.sdk.internal.session.permalinks.PermalinkFactory import org.matrix.android.sdk.internal.session.room.send.LocalEchoEventFactory import org.matrix.android.sdk.internal.session.room.timeline.GetEventTask import org.matrix.android.sdk.internal.util.awaitTransaction -import timber.log.Timber import javax.inject.Inject /** diff --git a/vector/src/main/java/im/vector/app/features/autocomplete/command/AutocompleteCommandPresenter.kt b/vector/src/main/java/im/vector/app/features/autocomplete/command/AutocompleteCommandPresenter.kt index 7846ebab37..7afe3eaebc 100644 --- a/vector/src/main/java/im/vector/app/features/autocomplete/command/AutocompleteCommandPresenter.kt +++ b/vector/src/main/java/im/vector/app/features/autocomplete/command/AutocompleteCommandPresenter.kt @@ -25,10 +25,7 @@ import im.vector.app.BuildConfig import im.vector.app.features.autocomplete.AutocompleteClickListener import im.vector.app.features.autocomplete.RecyclerViewPresenter import im.vector.app.features.command.Command -import im.vector.app.features.home.room.detail.AutoCompleter import im.vector.app.features.settings.VectorPreferences -import timber.log.Timber -import javax.inject.Inject class AutocompleteCommandPresenter @AssistedInject constructor( @Assisted val isInThreadTimeline: Boolean, @@ -62,8 +59,9 @@ class AutocompleteCommandPresenter @AssistedInject constructor( .filter { if (BuildConfig.THREADING_ENABLED && isInThreadTimeline) { it.isThreadCommand - } else + } else { true + } } .filter { if (query.isNullOrEmpty()) { diff --git a/vector/src/main/java/im/vector/app/features/command/CommandParser.kt b/vector/src/main/java/im/vector/app/features/command/CommandParser.kt index 3eb01758f8..7ff2223682 100644 --- a/vector/src/main/java/im/vector/app/features/command/CommandParser.kt +++ b/vector/src/main/java/im/vector/app/features/command/CommandParser.kt @@ -64,14 +64,14 @@ object CommandParser { // If the command is not supported by threads return error - if(BuildConfig.THREADING_ENABLED && isInThreadTimeline){ + if (BuildConfig.THREADING_ENABLED && isInThreadTimeline) { val slashCommand = messageParts.first() val notSupportedCommandsInThreads = Command.values().filter { !it.isThreadCommand }.map { it.command } - if(notSupportedCommandsInThreads.contains(slashCommand)){ + if (notSupportedCommandsInThreads.contains(slashCommand)) { return ParsedCommand.ErrorCommandNotSupportedInThreads(slashCommand) } } diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailActivity.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailActivity.kt index 40af675e66..bc1e17f984 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailActivity.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailActivity.kt @@ -37,8 +37,8 @@ import im.vector.app.core.platform.ToolbarConfigurable import im.vector.app.core.platform.VectorBaseActivity import im.vector.app.databinding.ActivityRoomDetailBinding import im.vector.app.features.home.room.breadcrumbs.BreadcrumbsFragment -import im.vector.app.features.home.room.detail.timeline.helper.VoiceMessagePlaybackTracker import im.vector.app.features.home.room.detail.arguments.TimelineArgs +import im.vector.app.features.home.room.detail.timeline.helper.VoiceMessagePlaybackTracker import im.vector.app.features.matrixto.MatrixToBottomSheet import im.vector.app.features.navigation.Navigator import im.vector.app.features.room.RequireActiveMembershipAction diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewState.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewState.kt index 051c9b6500..f41ac504fc 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewState.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewState.kt @@ -89,5 +89,4 @@ data class RoomDetailViewState( fun isDm() = asyncRoomSummary()?.isDirect == true fun isThreadTimeline() = rootThreadEventId != null - } diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/TimelineFragment.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/TimelineFragment.kt index 0bff2da082..7778294aa3 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/TimelineFragment.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/TimelineFragment.kt @@ -63,8 +63,6 @@ import com.airbnb.epoxy.EpoxyModel import com.airbnb.epoxy.OnModelBuildFinishedListener import com.airbnb.epoxy.addGlidePreloader import com.airbnb.epoxy.glidePreloader -import com.airbnb.mvrx.Mavericks -import com.airbnb.mvrx.activityViewModel import com.airbnb.mvrx.args import com.airbnb.mvrx.fragmentViewModel import com.airbnb.mvrx.withState @@ -136,7 +134,6 @@ import im.vector.app.features.command.Command import im.vector.app.features.crypto.keysbackup.restore.KeysBackupRestoreActivity import im.vector.app.features.crypto.verification.VerificationBottomSheet import im.vector.app.features.home.AvatarRenderer -import im.vector.app.features.home.UnreadMessagesSharedViewModel import im.vector.app.features.home.room.detail.arguments.TimelineArgs import im.vector.app.features.home.room.detail.composer.MessageComposerAction import im.vector.app.features.home.room.detail.composer.MessageComposerView @@ -975,7 +972,6 @@ class TimelineFragment @Inject constructor( } override fun onPrepareOptionsMenu(menu: Menu) { - menu.forEach { it.isVisible = roomDetailViewModel.isMenuItemVisible(it.itemId) } @@ -1014,7 +1010,6 @@ class TimelineFragment @Inject constructor( // Handle custom threads badge notification updateMenuThreadNotificationBadge(menu, state) - } } @@ -1057,7 +1052,6 @@ class TimelineFragment @Inject constructor( val permalink = session.permalinkService().createPermalink(timelineArgs.roomId, it) copyToClipboard(requireContext(), permalink, false) showSnackWithMessage(getString(R.string.copied_to_clipboard)) - } true } @@ -1109,7 +1103,6 @@ class TimelineFragment @Inject constructor( val int = RoomDetailActivity.newIntent(con, newRoom) int.flags = Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_NEW_TASK con.startActivity(int) - } } } @@ -1388,7 +1381,7 @@ class TimelineFragment @Inject constructor( } private fun updateJumpToReadMarkerViewVisibility() { - if(isThreadTimeLine()) return + if (isThreadTimeLine()) return viewLifecycleOwner.lifecycleScope.launchWhenResumed { withState(roomDetailViewModel) { val showJumpToUnreadBanner = when (it.unreadState) { @@ -1488,7 +1481,7 @@ class TimelineFragment @Inject constructor( } private fun observerUserTyping() { - if(isThreadTimeLine()) return + if (isThreadTimeLine()) return views.composerLayout.views.composerEditText.textChanges() .skipInitialValue() .debounce(300) @@ -1774,7 +1767,6 @@ class TimelineFragment @Inject constructor( if (roomId != timelineArgs.roomId) return false // Navigation to same room if (!isThreadTimeLine()) { - if (rootThreadEventId != null) { // Thread link, so PermalinkHandler will handle the navigation return false diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/composer/MessageComposerAction.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/composer/MessageComposerAction.kt index 25c8b17206..10cef39942 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/composer/MessageComposerAction.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/composer/MessageComposerAction.kt @@ -35,7 +35,7 @@ sealed class MessageComposerAction : VectorViewModelAction { data class InitializeVoiceRecorder(val attachmentData: ContentAttachmentData) : MessageComposerAction() data class OnVoiceRecordingUiStateChanged(val uiState: VoiceMessageRecorderView.RecordingUiState) : MessageComposerAction() object StartRecordingVoiceMessage : MessageComposerAction() - data class EndRecordingVoiceMessage(val isCancelled: Boolean,val rootThreadEventId: String?) : MessageComposerAction() + data class EndRecordingVoiceMessage(val isCancelled: Boolean, val rootThreadEventId: String?) : MessageComposerAction() object PauseRecordingVoiceMessage : MessageComposerAction() data class PlayOrPauseVoicePlayback(val eventId: String, val messageAudioContent: MessageAudioContent) : MessageComposerAction() object PlayOrPauseRecordingPlayback : MessageComposerAction() diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/composer/MessageComposerViewModel.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/composer/MessageComposerViewModel.kt index 4755bddffe..83c2938b45 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/composer/MessageComposerViewModel.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/composer/MessageComposerViewModel.kt @@ -30,7 +30,6 @@ import im.vector.app.features.attachments.toContentAttachmentData import im.vector.app.features.command.CommandParser import im.vector.app.features.command.ParsedCommand import im.vector.app.features.home.room.detail.ChatEffect -import im.vector.app.features.home.room.detail.TimelineFragment import im.vector.app.features.home.room.detail.composer.rainbow.RainbowGenerator import im.vector.app.features.home.room.detail.composer.voice.VoiceMessageRecorderView import im.vector.app.features.home.room.detail.toMessageType @@ -167,13 +166,14 @@ class MessageComposerViewModel @AssistedInject constructor( when (val slashCommandResult = CommandParser.parseSplashCommand(action.text, state.isInThreadTimeline())) { is ParsedCommand.ErrorNotACommand -> { // Send the text message to the room - if (state.rootThreadEventId != null) + if (state.rootThreadEventId != null) { room.replyInThread( rootThreadEventId = state.rootThreadEventId, replyInThreadText = action.text.toString(), autoMarkdown = action.autoMarkdown) - else + } else { room.sendTextMessage(action.text, autoMarkdown = action.autoMarkdown) + } _viewEvents.post(MessageComposerViewEvents.MessageSent) popDraft() @@ -192,13 +192,14 @@ class MessageComposerViewModel @AssistedInject constructor( } is ParsedCommand.SendPlainText -> { // Send the text message to the room, without markdown - if (state.rootThreadEventId != null) + if (state.rootThreadEventId != null) { room.replyInThread( rootThreadEventId = state.rootThreadEventId, replyInThreadText = action.text.toString(), autoMarkdown = false) - else + } else { room.sendTextMessage(slashCommandResult.message, autoMarkdown = false) + } _viewEvents.post(MessageComposerViewEvents.MessageSent) popDraft() } @@ -258,7 +259,6 @@ class MessageComposerViewModel @AssistedInject constructor( popDraft() } is ParsedCommand.SendRainbow -> { - val message = slashCommandResult.message.toString() state.rootThreadEventId?.let { room.replyInThread( @@ -283,7 +283,6 @@ class MessageComposerViewModel @AssistedInject constructor( popDraft() } is ParsedCommand.SendSpoiler -> { - val text = "[${stringProvider.getString(R.string.spoiler)}](${slashCommandResult.message})" val formattedText = "${slashCommandResult.message}" state.rootThreadEventId?.let { @@ -299,7 +298,6 @@ class MessageComposerViewModel @AssistedInject constructor( popDraft() } is ParsedCommand.SendShrug -> { - sendPrefixedMessage("¯\\_(ツ)_/¯", slashCommandResult.message, state.rootThreadEventId) _viewEvents.post(MessageComposerViewEvents.SlashCommandResultOk()) popDraft() diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/TimelineEventController.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/TimelineEventController.kt index b091ea2fb7..20a3f34338 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/TimelineEventController.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/TimelineEventController.kt @@ -105,7 +105,7 @@ class TimelineEventController @Inject constructor(private val dateFormatter: Vec rootThreadEventId = state.rootThreadEventId ) - fun isFromThreadTimeline():Boolean = rootThreadEventId != null + fun isFromThreadTimeline(): Boolean = rootThreadEventId != null } interface Callback : @@ -200,7 +200,7 @@ class TimelineEventController @Inject constructor(private val dateFormatter: Vec // it's sent by the same user so we are sure we have up to date information. val invalidatedSenderId: String? = currentSnapshot.getOrNull(position)?.senderInfo?.userId val prevDisplayableEventIndex = currentSnapshot.subList(0, position).indexOfLast { - timelineEventVisibilityHelper.shouldShowEvent(it, partialState.highlightedEventId, partialState.isFromThreadTimeline() ) + timelineEventVisibilityHelper.shouldShowEvent(it, partialState.highlightedEventId, partialState.isFromThreadTimeline()) } if (prevDisplayableEventIndex != -1 && currentSnapshot[prevDisplayableEventIndex].senderInfo.userId == invalidatedSenderId) { modelCache[prevDisplayableEventIndex] = null diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/helper/TimelineEventVisibilityHelper.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/helper/TimelineEventVisibilityHelper.kt index 7206fa2280..7efefc5209 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/helper/TimelineEventVisibilityHelper.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/helper/TimelineEventVisibilityHelper.kt @@ -128,7 +128,7 @@ class TimelineEventVisibilityHelper @Inject constructor(private val userPreferen return true } - if(BuildConfig.THREADING_ENABLED && !isFromThreadTimeline && root.isThread() && root.getRootThreadEventId() != null){ + if (BuildConfig.THREADING_ENABLED && !isFromThreadTimeline && root.isThread() && root.getRootThreadEventId() != null) { return true } 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 a3e808c7bb..080b766258 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 @@ -127,6 +127,7 @@ abstract class AbsBaseMessageItem : BaseEventItem val messageColorProvider: MessageColorProvider val itemLongClickListener: View.OnLongClickListener? val itemClickListener: ClickListener? + // val memberClickListener: ClickListener? val reactionPillCallback: TimelineEventController.ReactionPillCallback? 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 a9455a0e3c..f75df30916 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 @@ -124,10 +124,10 @@ abstract class AbsMessageItem : AbsBaseMessageItem val displayName = threadDetails.threadSummarySenderInfo?.displayName val avatarUrl = threadDetails.threadSummarySenderInfo?.avatarUrl attributes.avatarRenderer.render(MatrixItem.UserItem(userId, displayName, avatarUrl), holder.threadSummaryAvatarImageView) - updateHighlightedMessageHeight(holder,true) + updateHighlightedMessageHeight(holder, true) } ?: run { holder.threadSummaryConstraintLayout.isVisible = false - updateHighlightedMessageHeight(holder,false) + updateHighlightedMessageHeight(holder, false) } } } diff --git a/vector/src/main/java/im/vector/app/features/home/room/threads/ThreadsActivity.kt b/vector/src/main/java/im/vector/app/features/home/room/threads/ThreadsActivity.kt index ecbea4cdaf..84d270a2c2 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/threads/ThreadsActivity.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/threads/ThreadsActivity.kt @@ -29,8 +29,8 @@ import im.vector.app.core.platform.ToolbarConfigurable import im.vector.app.core.platform.VectorBaseActivity import im.vector.app.databinding.ActivityThreadsBinding import im.vector.app.features.home.AvatarRenderer -import im.vector.app.features.home.room.detail.arguments.TimelineArgs import im.vector.app.features.home.room.detail.TimelineFragment +import im.vector.app.features.home.room.detail.arguments.TimelineArgs import im.vector.app.features.home.room.threads.arguments.ThreadListArgs import im.vector.app.features.home.room.threads.arguments.ThreadTimelineArgs import im.vector.app.features.home.room.threads.list.views.ThreadListFragment @@ -152,7 +152,6 @@ class ThreadsActivity : VectorBaseActivity(), ToolbarCon putExtra(THREAD_TIMELINE_ARGS, threadTimelineArgs) putExtra(THREAD_EVENT_ID_TO_NAVIGATE, eventIdToNavigate) putExtra(THREAD_LIST_ARGS, threadListArgs) - } } } diff --git a/vector/src/main/java/im/vector/app/features/home/room/threads/list/model/ThreadListModel.kt b/vector/src/main/java/im/vector/app/features/home/room/threads/list/model/ThreadListModel.kt index 286f027915..b890952719 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/threads/list/model/ThreadListModel.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/threads/list/model/ThreadListModel.kt @@ -77,15 +77,14 @@ abstract class ThreadListModel : VectorEpoxyModel() { } private fun renderNotificationState(holder: Holder) { - when (threadNotificationState) { ThreadNotificationState.NEW_MESSAGE -> { holder.unreadImageView.isVisible = true - holder.unreadImageView.setColorFilter(ContextCompat.getColor(holder.view.context, R.color.palette_gray_200)); + holder.unreadImageView.setColorFilter(ContextCompat.getColor(holder.view.context, R.color.palette_gray_200)) } ThreadNotificationState.NEW_HIGHLIGHTED_MESSAGE -> { holder.unreadImageView.isVisible = true - holder.unreadImageView.setColorFilter(ContextCompat.getColor(holder.view.context, R.color.palette_vermilion)); + holder.unreadImageView.setColorFilter(ContextCompat.getColor(holder.view.context, R.color.palette_vermilion)) } else -> { holder.unreadImageView.isVisible = false diff --git a/vector/src/main/java/im/vector/app/features/home/room/threads/list/viewmodel/ThreadListViewState.kt b/vector/src/main/java/im/vector/app/features/home/room/threads/list/viewmodel/ThreadListViewState.kt index 53d2a45344..2a70a5be1e 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/threads/list/viewmodel/ThreadListViewState.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/threads/list/viewmodel/ThreadListViewState.kt @@ -26,7 +26,7 @@ data class ThreadListViewState( val rootThreadEventList: Async> = Uninitialized, val shouldFilterThreads: Boolean = false, val roomId: String -) : MavericksState{ +) : MavericksState { constructor(args: ThreadListArgs) : this(roomId = args.roomId) } diff --git a/vector/src/main/java/im/vector/app/features/navigation/Navigator.kt b/vector/src/main/java/im/vector/app/features/navigation/Navigator.kt index b6da13ca33..5254bf4838 100644 --- a/vector/src/main/java/im/vector/app/features/navigation/Navigator.kt +++ b/vector/src/main/java/im/vector/app/features/navigation/Navigator.kt @@ -154,5 +154,4 @@ interface Navigator { fun openThread(context: Context, threadTimelineArgs: ThreadTimelineArgs, eventIdToNavigate: String? = null) fun openThreadList(context: Context, threadTimelineArgs: ThreadTimelineArgs) - }