From c8b344644b001de170ee7f777dbe492125ea7b06 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Mon, 12 Dec 2022 17:48:07 +0100 Subject: [PATCH] Ktlint for all modules + run it --- app/build.gradle.kts | 46 ---------------- build.gradle.kts | 52 +++++++++++++++++++ .../android/x/features/login/LoginScreen.kt | 2 +- .../login/changeserver/ChangeServerScreen.kt | 3 +- .../x/features/login/error/ErrorFormatter.kt | 2 +- .../MessageTimelineItemStateFactory.kt | 3 +- .../x/features/messages/MessagesScreen.kt | 3 +- .../MessagesTimelineItemActionsSheet.kt | 1 - .../MessagesTimelineItemImageView.kt | 1 - .../messages/components/html/HtmlDocument.kt | 2 - .../model/MessagesTimelineItemState.kt | 3 -- .../features/roomlist/LastMessageFormatter.kt | 8 +-- .../x/features/roomlist/RoomListScreen.kt | 1 - .../roomlist/components/RoomListTopBar.kt | 1 - .../model/RoomListRoomSummaryPlaceholders.kt | 1 - libraries/designsystem/build.gradle.kts | 2 +- .../element/android/x/designsystem/Theme.kt | 4 +- .../io/element/android/x/designsystem/Type.kt | 2 +- .../components/ClickableLinkText.kt | 2 - .../components/dialogs/ConfirmationDialog.kt | 4 +- libraries/elementresources/build.gradle.kts | 2 +- .../io/element/android/x/matrix/Matrix.kt | 6 +-- .../element/android/x/matrix/MatrixClient.kt | 8 +-- .../x/matrix/permalink/PermalinkParser.kt | 2 +- .../x/matrix/room/RoomListenerFlows.kt | 2 - .../x/matrix/room/RoomSummaryDataSource.kt | 7 ++- .../x/matrix/timeline/MatrixTimeline.kt | 2 +- .../x/textcomposer/MessageComposerMode.kt | 1 - .../x/textcomposer/RichTextComposerLayout.kt | 2 +- 29 files changed, 80 insertions(+), 95 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 73e8289c06..22f8a23ba6 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -3,7 +3,6 @@ plugins { id("org.jetbrains.kotlin.android") alias(libs.plugins.ksp) id("com.google.firebase.appdistribution") version "3.0.2" - id("org.jlleitschuh.gradle.ktlint") version "11.0.0" id("org.jetbrains.kotlinx.knit") version "0.4.0" } @@ -109,51 +108,6 @@ android { kotlin.srcDir("build/generated/ksp/test/kotlin") } } - - // See https://github.com/JLLeitschuh/ktlint-gradle#configuration - configure { - // See https://github.com/pinterest/ktlint/releases/ - // TODO 0.47.1 is available - version.set("0.45.1") - android.set(true) - ignoreFailures.set(false) - enableExperimentalRules.set(true) - // display the corresponding rule - verbose.set(true) - reporters { - reporter(org.jlleitschuh.gradle.ktlint.reporter.ReporterType.PLAIN) - // To have XML report for Danger - reporter(org.jlleitschuh.gradle.ktlint.reporter.ReporterType.CHECKSTYLE) - } - filter { - exclude { element -> element.file.path.contains("$buildDir/generated/") } - } - disabledRules.set( - setOf( - // TODO Re-enable these 4 rules after reformatting project - "indent", - "experimental:argument-list-wrapping", - "max-line-length", - "parameter-list-wrapping", - - "spacing-between-declarations-with-comments", - "no-multi-spaces", - "experimental:spacing-between-declarations-with-annotations", - "experimental:annotation", - // - Missing newline after "(" - // - Missing newline before ")" - "wrapping", - // - Unnecessary trailing comma before ")" - "experimental:trailing-comma", - // - A block comment in between other elements on the same line is disallowed - "experimental:comment-wrapping", - // - A KDoc comment after any other element on the same line must be separated by a new line - "experimental:kdoc-wrapping", - // Ignore error "Redundant curly braces", since we use it to fix false positives, for instance in "elementLogs.${i}.txt" - "string-template", - ) - ) - } } dependencies { diff --git a/build.gradle.kts b/build.gradle.kts index eed167a371..481c3a6fbf 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -5,6 +5,7 @@ plugins { alias(libs.plugins.kotlin.android) apply false alias(libs.plugins.ksp) apply false id("io.gitlab.arturbosch.detekt") version "1.22.0" + id("org.jlleitschuh.gradle.ktlint") version "11.0.0" } tasks.register("clean").configure { @@ -12,6 +13,7 @@ tasks.register("clean").configure { } allprojects { + // Detekt apply { plugin("io.gitlab.arturbosch.detekt") } @@ -26,4 +28,54 @@ allprojects { dependencies { detektPlugins("com.twitter.compose.rules:detekt:0.0.26") } + + // KtLint + apply { + plugin("org.jlleitschuh.gradle.ktlint") + } + + // See https://github.com/JLLeitschuh/ktlint-gradle#configuration + configure { + // See https://github.com/pinterest/ktlint/releases/ + // TODO 0.47.1 is available + version.set("0.45.1") + android.set(true) + ignoreFailures.set(false) + enableExperimentalRules.set(true) + // display the corresponding rule + verbose.set(true) + reporters { + reporter(org.jlleitschuh.gradle.ktlint.reporter.ReporterType.PLAIN) + // To have XML report for Danger + reporter(org.jlleitschuh.gradle.ktlint.reporter.ReporterType.CHECKSTYLE) + } + filter { + exclude { element -> element.file.path.contains("$buildDir/generated/") } + } + disabledRules.set( + setOf( + // TODO Re-enable these 4 rules after reformatting project + "indent", + "experimental:argument-list-wrapping", + "max-line-length", + "parameter-list-wrapping", + + "spacing-between-declarations-with-comments", + "no-multi-spaces", + "experimental:spacing-between-declarations-with-annotations", + "experimental:annotation", + // - Missing newline after "(" + // - Missing newline before ")" + "wrapping", + // - Unnecessary trailing comma before ")" + "experimental:trailing-comma", + // - A block comment in between other elements on the same line is disallowed + "experimental:comment-wrapping", + // - A KDoc comment after any other element on the same line must be separated by a new line + "experimental:kdoc-wrapping", + // Ignore error "Redundant curly braces", since we use it to fix false positives, for instance in "elementLogs.${i}.txt" + "string-template", + ) + ) + } } diff --git a/features/login/src/main/java/io/element/android/x/features/login/LoginScreen.kt b/features/login/src/main/java/io/element/android/x/features/login/LoginScreen.kt index de30fe2c72..049124fb07 100644 --- a/features/login/src/main/java/io/element/android/x/features/login/LoginScreen.kt +++ b/features/login/src/main/java/io/element/android/x/features/login/LoginScreen.kt @@ -117,7 +117,7 @@ fun LoginContent( ) // Form Column( - //modifier = Modifier.weight(1f), + // modifier = Modifier.weight(1f), ) { Box( modifier = Modifier.fillMaxWidth() diff --git a/features/login/src/main/java/io/element/android/x/features/login/changeserver/ChangeServerScreen.kt b/features/login/src/main/java/io/element/android/x/features/login/changeserver/ChangeServerScreen.kt index d972a20817..3918d2f6c5 100644 --- a/features/login/src/main/java/io/element/android/x/features/login/changeserver/ChangeServerScreen.kt +++ b/features/login/src/main/java/io/element/android/x/features/login/changeserver/ChangeServerScreen.kt @@ -84,8 +84,7 @@ fun ChangeServerContent( state = scrollState, ) .padding(horizontal = 16.dp) - ) - { + ) { val isError = state.changeServerAction is Fail Box( modifier = Modifier diff --git a/features/login/src/main/java/io/element/android/x/features/login/error/ErrorFormatter.kt b/features/login/src/main/java/io/element/android/x/features/login/error/ErrorFormatter.kt index ab862e085c..6c26a9aff1 100644 --- a/features/login/src/main/java/io/element/android/x/features/login/error/ErrorFormatter.kt +++ b/features/login/src/main/java/io/element/android/x/features/login/error/ErrorFormatter.kt @@ -3,8 +3,8 @@ package io.element.android.x.features.login.error import androidx.compose.runtime.Composable import androidx.compose.ui.res.stringResource import io.element.android.x.core.uri.isValidUrl -import io.element.android.x.features.login.LoginFormState import io.element.android.x.element.resources.R as ElementR +import io.element.android.x.features.login.LoginFormState @Composable fun loginError( diff --git a/features/messages/src/main/java/io/element/android/x/features/messages/MessageTimelineItemStateFactory.kt b/features/messages/src/main/java/io/element/android/x/features/messages/MessageTimelineItemStateFactory.kt index de9538a962..1dfd5712e7 100644 --- a/features/messages/src/main/java/io/element/android/x/features/messages/MessageTimelineItemStateFactory.kt +++ b/features/messages/src/main/java/io/element/android/x/features/messages/MessageTimelineItemStateFactory.kt @@ -22,6 +22,7 @@ import io.element.android.x.matrix.MatrixClient import io.element.android.x.matrix.media.MediaResolver import io.element.android.x.matrix.room.MatrixRoom import io.element.android.x.matrix.timeline.MatrixTimelineItem +import kotlin.system.measureTimeMillis import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow @@ -35,7 +36,6 @@ import org.matrix.rustcomponents.sdk.FormattedBody import org.matrix.rustcomponents.sdk.MessageFormat import org.matrix.rustcomponents.sdk.MessageType import timber.log.Timber -import kotlin.system.measureTimeMillis class MessageTimelineItemStateFactory( private val client: MatrixClient, @@ -198,7 +198,6 @@ class MessageTimelineItemStateFactory( htmlDocument = messageType.content.formatted?.toHtmlDocument() ) else -> MessagesTimelineItemUnknownContent - } } diff --git a/features/messages/src/main/java/io/element/android/x/features/messages/MessagesScreen.kt b/features/messages/src/main/java/io/element/android/x/features/messages/MessagesScreen.kt index 51bd0506cc..a5a44e38f5 100644 --- a/features/messages/src/main/java/io/element/android/x/features/messages/MessagesScreen.kt +++ b/features/messages/src/main/java/io/element/android/x/features/messages/MessagesScreen.kt @@ -101,13 +101,13 @@ import io.element.android.x.features.messages.textcomposer.MessageComposerViewMo import io.element.android.x.features.messages.textcomposer.MessageComposerViewState import io.element.android.x.textcomposer.MessageComposerMode import io.element.android.x.textcomposer.TextComposer +import java.lang.Math.random import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.persistentListOf import kotlinx.collections.immutable.toImmutableList import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.launch import timber.log.Timber -import java.lang.Math.random @Composable fun MessagesScreen( @@ -116,7 +116,6 @@ fun MessagesScreen( viewModel: MessagesViewModel = mavericksViewModel(argsFactory = { roomId }), composerViewModel: MessageComposerViewModel = mavericksViewModel(argsFactory = { roomId }) ) { - fun onSendMessage(textMessage: String) { viewModel.sendMessage(textMessage) composerViewModel.updateText("") diff --git a/features/messages/src/main/java/io/element/android/x/features/messages/components/MessagesTimelineItemActionsSheet.kt b/features/messages/src/main/java/io/element/android/x/features/messages/components/MessagesTimelineItemActionsSheet.kt index ab7dac565d..b34c65916d 100644 --- a/features/messages/src/main/java/io/element/android/x/features/messages/components/MessagesTimelineItemActionsSheet.kt +++ b/features/messages/src/main/java/io/element/android/x/features/messages/components/MessagesTimelineItemActionsSheet.kt @@ -76,7 +76,6 @@ fun TimelineItemActionsScreen( } } - ModalBottomSheetLayout( modifier = modifier, sheetState = modalBottomSheetState, diff --git a/features/messages/src/main/java/io/element/android/x/features/messages/components/MessagesTimelineItemImageView.kt b/features/messages/src/main/java/io/element/android/x/features/messages/components/MessagesTimelineItemImageView.kt index dd614be275..35836505db 100644 --- a/features/messages/src/main/java/io/element/android/x/features/messages/components/MessagesTimelineItemImageView.kt +++ b/features/messages/src/main/java/io/element/android/x/features/messages/components/MessagesTimelineItemImageView.kt @@ -35,7 +35,6 @@ fun MessagesTimelineItemImageView( .aspectRatio(content.aspectRatio), contentAlignment = Alignment.Center, ) { - var isLoading = rememberSaveable(content.imageMeta) { mutableStateOf(true) } val context = LocalContext.current val model = ImageRequest.Builder(context) diff --git a/features/messages/src/main/java/io/element/android/x/features/messages/components/html/HtmlDocument.kt b/features/messages/src/main/java/io/element/android/x/features/messages/components/html/HtmlDocument.kt index 576a806e09..388435c390 100644 --- a/features/messages/src/main/java/io/element/android/x/features/messages/components/html/HtmlDocument.kt +++ b/features/messages/src/main/java/io/element/android/x/features/messages/components/html/HtmlDocument.kt @@ -454,7 +454,6 @@ private fun AnnotatedString.Builder.appendInlineChildrenElements( childNodes: List, colors: ColorScheme ) { - for (node in childNodes) { when (node) { is TextNode -> { @@ -552,4 +551,3 @@ private fun HtmlText( onLongClick = onLongClick ) } - diff --git a/features/messages/src/main/java/io/element/android/x/features/messages/model/MessagesTimelineItemState.kt b/features/messages/src/main/java/io/element/android/x/features/messages/model/MessagesTimelineItemState.kt index 6c86a8687a..fd4bf88f18 100644 --- a/features/messages/src/main/java/io/element/android/x/features/messages/model/MessagesTimelineItemState.kt +++ b/features/messages/src/main/java/io/element/android/x/features/messages/model/MessagesTimelineItemState.kt @@ -25,6 +25,3 @@ sealed interface MessagesTimelineItemState { val safeSenderName: String = senderDisplayName ?: senderId } } - - - diff --git a/features/roomlist/src/main/java/io/element/android/x/features/roomlist/LastMessageFormatter.kt b/features/roomlist/src/main/java/io/element/android/x/features/roomlist/LastMessageFormatter.kt index 06dca99637..d06eb20fbc 100644 --- a/features/roomlist/src/main/java/io/element/android/x/features/roomlist/LastMessageFormatter.kt +++ b/features/roomlist/src/main/java/io/element/android/x/features/roomlist/LastMessageFormatter.kt @@ -2,6 +2,10 @@ package io.element.android.x.features.roomlist import android.text.format.DateFormat import android.text.format.DateUtils +import java.time.Period +import java.time.format.DateTimeFormatter +import java.util.Locale +import kotlin.math.absoluteValue import kotlinx.datetime.Clock import kotlinx.datetime.Instant import kotlinx.datetime.LocalDateTime @@ -10,10 +14,6 @@ import kotlinx.datetime.toInstant import kotlinx.datetime.toJavaLocalDate import kotlinx.datetime.toJavaLocalDateTime import kotlinx.datetime.toLocalDateTime -import java.time.Period -import java.time.format.DateTimeFormatter -import java.util.Locale -import kotlin.math.absoluteValue class LastMessageFormatter( private val clock: Clock = Clock.System, diff --git a/features/roomlist/src/main/java/io/element/android/x/features/roomlist/RoomListScreen.kt b/features/roomlist/src/main/java/io/element/android/x/features/roomlist/RoomListScreen.kt index e0dbc2fe39..dff4871efe 100644 --- a/features/roomlist/src/main/java/io/element/android/x/features/roomlist/RoomListScreen.kt +++ b/features/roomlist/src/main/java/io/element/android/x/features/roomlist/RoomListScreen.kt @@ -178,4 +178,3 @@ fun PreviewableDarkRoomListContent() { ) } } - diff --git a/features/roomlist/src/main/java/io/element/android/x/features/roomlist/components/RoomListTopBar.kt b/features/roomlist/src/main/java/io/element/android/x/features/roomlist/components/RoomListTopBar.kt index f45d0ac244..667357cf73 100644 --- a/features/roomlist/src/main/java/io/element/android/x/features/roomlist/components/RoomListTopBar.kt +++ b/features/roomlist/src/main/java/io/element/android/x/features/roomlist/components/RoomListTopBar.kt @@ -49,7 +49,6 @@ fun RoomListTopBar( onLogoutClicked: () -> Unit, scrollBehavior: TopAppBarScrollBehavior ) { - LogCompositions(tag = "RoomListScreen", msg = "TopBar") var searchWidgetStateIsOpened by rememberSaveable { mutableStateOf(false) } diff --git a/features/roomlist/src/main/java/io/element/android/x/features/roomlist/model/RoomListRoomSummaryPlaceholders.kt b/features/roomlist/src/main/java/io/element/android/x/features/roomlist/model/RoomListRoomSummaryPlaceholders.kt index 93eb2a6d42..645114507f 100644 --- a/features/roomlist/src/main/java/io/element/android/x/features/roomlist/model/RoomListRoomSummaryPlaceholders.kt +++ b/features/roomlist/src/main/java/io/element/android/x/features/roomlist/model/RoomListRoomSummaryPlaceholders.kt @@ -23,4 +23,3 @@ object RoomListRoomSummaryPlaceholders { } } } - diff --git a/libraries/designsystem/build.gradle.kts b/libraries/designsystem/build.gradle.kts index c132b472c3..2fb20b4f6c 100644 --- a/libraries/designsystem/build.gradle.kts +++ b/libraries/designsystem/build.gradle.kts @@ -12,4 +12,4 @@ android { implementation(libs.accompanist.systemui) ksp(libs.showkase.processor) } -} \ No newline at end of file +} diff --git a/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Theme.kt b/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Theme.kt index dd268f5f73..2e72ebe4ee 100644 --- a/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Theme.kt +++ b/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Theme.kt @@ -46,7 +46,7 @@ private val LightColorScheme = lightColorScheme( onTertiary = Color.White, onBackground = Color(0xFF1C1B1F), onSurface = Color(0xFF1C1B1F), - */ + */ ) @Suppress("CompositionLocalAllowlist") val LocalIsDarkTheme = compositionLocalOf { error("Not defined") } @@ -87,5 +87,3 @@ fun ElementXTheme( ) } } - - diff --git a/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Type.kt b/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Type.kt index 3e92cda7af..da25eb21ef 100644 --- a/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Type.kt +++ b/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Type.kt @@ -46,7 +46,7 @@ val Typography = Typography( lineHeight = 16.sp, letterSpacing = 0.5.sp ) - */ + */ ) object ElementTextStyles { diff --git a/libraries/designsystem/src/main/java/io/element/android/x/designsystem/components/ClickableLinkText.kt b/libraries/designsystem/src/main/java/io/element/android/x/designsystem/components/ClickableLinkText.kt index 73903e8a8a..0efdb52771 100644 --- a/libraries/designsystem/src/main/java/io/element/android/x/designsystem/components/ClickableLinkText.kt +++ b/libraries/designsystem/src/main/java/io/element/android/x/designsystem/components/ClickableLinkText.kt @@ -58,7 +58,6 @@ fun ClickableLinkText( uriHandler.openUri(linkAnnotations.first().item) } } - } } Text( @@ -71,4 +70,3 @@ fun ClickableLinkText( inlineContent = inlineContent ) } - diff --git a/libraries/designsystem/src/main/java/io/element/android/x/designsystem/components/dialogs/ConfirmationDialog.kt b/libraries/designsystem/src/main/java/io/element/android/x/designsystem/components/dialogs/ConfirmationDialog.kt index 1c23ec5c80..fb43ccd3ce 100644 --- a/libraries/designsystem/src/main/java/io/element/android/x/designsystem/components/dialogs/ConfirmationDialog.kt +++ b/libraries/designsystem/src/main/java/io/element/android/x/designsystem/components/dialogs/ConfirmationDialog.kt @@ -43,8 +43,8 @@ fun ConfirmationDialog( onClick = { onDismiss() onSubmitClicked() - }) - { + } + ) { Text(submitText) } } diff --git a/libraries/elementresources/build.gradle.kts b/libraries/elementresources/build.gradle.kts index bc26e32933..aea3268bf4 100644 --- a/libraries/elementresources/build.gradle.kts +++ b/libraries/elementresources/build.gradle.kts @@ -8,4 +8,4 @@ android { dependencies { implementation("com.google.android.material:material:1.7.0") -} \ No newline at end of file +} diff --git a/libraries/matrix/src/main/java/io/element/android/x/matrix/Matrix.kt b/libraries/matrix/src/main/java/io/element/android/x/matrix/Matrix.kt index d98dfee413..c02f197611 100644 --- a/libraries/matrix/src/main/java/io/element/android/x/matrix/Matrix.kt +++ b/libraries/matrix/src/main/java/io/element/android/x/matrix/Matrix.kt @@ -7,6 +7,9 @@ import io.element.android.x.matrix.media.MediaFetcher import io.element.android.x.matrix.media.MediaKeyer import io.element.android.x.matrix.session.SessionStore import io.element.android.x.matrix.util.logError +import java.io.File +import java.util.Optional +import java.util.concurrent.Executors import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.asCoroutineDispatcher @@ -20,9 +23,6 @@ import org.matrix.rustcomponents.sdk.AuthenticationService import org.matrix.rustcomponents.sdk.Client import org.matrix.rustcomponents.sdk.ClientBuilder import timber.log.Timber -import java.io.File -import java.util.Optional -import java.util.concurrent.Executors class Matrix( private val coroutineScope: CoroutineScope, diff --git a/libraries/matrix/src/main/java/io/element/android/x/matrix/MatrixClient.kt b/libraries/matrix/src/main/java/io/element/android/x/matrix/MatrixClient.kt index 5f56208e06..ce85d8a8b2 100644 --- a/libraries/matrix/src/main/java/io/element/android/x/matrix/MatrixClient.kt +++ b/libraries/matrix/src/main/java/io/element/android/x/matrix/MatrixClient.kt @@ -9,6 +9,9 @@ import io.element.android.x.matrix.room.RoomSummaryDataSource import io.element.android.x.matrix.room.RustRoomSummaryDataSource import io.element.android.x.matrix.session.SessionStore import io.element.android.x.matrix.sync.SlidingSyncObserverProxy +import java.io.Closeable +import java.io.File +import java.util.concurrent.atomic.AtomicBoolean import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.withContext import org.matrix.rustcomponents.sdk.Client @@ -19,9 +22,6 @@ import org.matrix.rustcomponents.sdk.SlidingSyncMode import org.matrix.rustcomponents.sdk.SlidingSyncViewBuilder import org.matrix.rustcomponents.sdk.StoppableSpawn import timber.log.Timber -import java.io.Closeable -import java.io.File -import java.util.concurrent.atomic.AtomicBoolean class MatrixClient internal constructor( private val client: Client, @@ -62,7 +62,7 @@ class MatrixClient internal constructor( .slidingSync() .homeserver("https://slidingsync.lab.element.dev") .withCommonExtensions() - //.coldCache("ElementX") + // .coldCache("ElementX") .addView(slidingSyncView) .build() diff --git a/libraries/matrix/src/main/java/io/element/android/x/matrix/permalink/PermalinkParser.kt b/libraries/matrix/src/main/java/io/element/android/x/matrix/permalink/PermalinkParser.kt index bd20bd3277..d23c3d3d4f 100644 --- a/libraries/matrix/src/main/java/io/element/android/x/matrix/permalink/PermalinkParser.kt +++ b/libraries/matrix/src/main/java/io/element/android/x/matrix/permalink/PermalinkParser.kt @@ -3,8 +3,8 @@ package io.element.android.x.matrix.permalink import android.net.Uri import android.net.UrlQuerySanitizer import io.element.android.x.matrix.core.MatrixPatterns -import timber.log.Timber import java.net.URLDecoder +import timber.log.Timber /** * This class turns a uri to a [PermalinkData]. diff --git a/libraries/matrix/src/main/java/io/element/android/x/matrix/room/RoomListenerFlows.kt b/libraries/matrix/src/main/java/io/element/android/x/matrix/room/RoomListenerFlows.kt index 59bf35dc98..4634e6df12 100644 --- a/libraries/matrix/src/main/java/io/element/android/x/matrix/room/RoomListenerFlows.kt +++ b/libraries/matrix/src/main/java/io/element/android/x/matrix/room/RoomListenerFlows.kt @@ -21,6 +21,4 @@ fun Room.timelineDiff(scope: CoroutineScope): Flow = callbackFlow awaitClose { removeTimeline() } - } - diff --git a/libraries/matrix/src/main/java/io/element/android/x/matrix/room/RoomSummaryDataSource.kt b/libraries/matrix/src/main/java/io/element/android/x/matrix/room/RoomSummaryDataSource.kt index 71ef62a4d8..03e9422157 100644 --- a/libraries/matrix/src/main/java/io/element/android/x/matrix/room/RoomSummaryDataSource.kt +++ b/libraries/matrix/src/main/java/io/element/android/x/matrix/room/RoomSummaryDataSource.kt @@ -3,6 +3,9 @@ package io.element.android.x.matrix.room import io.element.android.x.core.coroutine.CoroutineDispatchers import io.element.android.x.matrix.sync.roomListDiff import io.element.android.x.matrix.sync.state +import java.io.Closeable +import java.util.Collections +import java.util.UUID import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.FlowPreview import kotlinx.coroutines.SupervisorJob @@ -22,9 +25,6 @@ import org.matrix.rustcomponents.sdk.SlidingSyncView import org.matrix.rustcomponents.sdk.SlidingSyncViewRoomsListDiff import org.matrix.rustcomponents.sdk.UpdateSummary import timber.log.Timber -import java.io.Closeable -import java.util.Collections -import java.util.UUID interface RoomSummaryDataSource { fun roomSummaries(): Flow> @@ -111,7 +111,6 @@ internal class RustRoomSummaryDataSource( } private fun MutableList.applyDiff(diff: SlidingSyncViewRoomsListDiff) { - fun MutableList.fillUntil(untilIndex: Int) { repeat((size - 1 until untilIndex).count()) { add(buildEmptyRoomSummary()) diff --git a/libraries/matrix/src/main/java/io/element/android/x/matrix/timeline/MatrixTimeline.kt b/libraries/matrix/src/main/java/io/element/android/x/matrix/timeline/MatrixTimeline.kt index 93c5b37d15..41c06c1a9d 100644 --- a/libraries/matrix/src/main/java/io/element/android/x/matrix/timeline/MatrixTimeline.kt +++ b/libraries/matrix/src/main/java/io/element/android/x/matrix/timeline/MatrixTimeline.kt @@ -2,6 +2,7 @@ package io.element.android.x.matrix.timeline import io.element.android.x.core.coroutine.CoroutineDispatchers import io.element.android.x.matrix.room.MatrixRoom +import java.util.Collections import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.FlowPreview import kotlinx.coroutines.flow.Flow @@ -16,7 +17,6 @@ import org.matrix.rustcomponents.sdk.TimelineChange import org.matrix.rustcomponents.sdk.TimelineDiff import org.matrix.rustcomponents.sdk.TimelineListener import timber.log.Timber -import java.util.Collections class MatrixTimeline( private val matrixRoom: MatrixRoom, diff --git a/libraries/textcomposer/src/main/java/io/element/android/x/textcomposer/MessageComposerMode.kt b/libraries/textcomposer/src/main/java/io/element/android/x/textcomposer/MessageComposerMode.kt index dff983a47a..bf5b556525 100644 --- a/libraries/textcomposer/src/main/java/io/element/android/x/textcomposer/MessageComposerMode.kt +++ b/libraries/textcomposer/src/main/java/io/element/android/x/textcomposer/MessageComposerMode.kt @@ -42,4 +42,3 @@ sealed interface MessageComposerMode { is Reply -> eventId } } - diff --git a/libraries/textcomposer/src/main/java/io/element/android/x/textcomposer/RichTextComposerLayout.kt b/libraries/textcomposer/src/main/java/io/element/android/x/textcomposer/RichTextComposerLayout.kt index 44bdcbc090..0b598d616a 100644 --- a/libraries/textcomposer/src/main/java/io/element/android/x/textcomposer/RichTextComposerLayout.kt +++ b/libraries/textcomposer/src/main/java/io/element/android/x/textcomposer/RichTextComposerLayout.kt @@ -45,12 +45,12 @@ import io.element.android.wysiwyg.inputhandlers.models.InlineFormat import io.element.android.x.core.ui.DimensionConverter import io.element.android.x.core.ui.hideKeyboard import io.element.android.x.core.ui.showKeyboard +import io.element.android.x.element.resources.R as ElementR import io.element.android.x.textcomposer.databinding.ComposerRichTextLayoutBinding import io.element.android.x.textcomposer.databinding.ViewRichTextMenuButtonBinding import io.element.android.x.textcomposer.tools.setTextIfDifferent import uniffi.wysiwyg_composer.ActionState import uniffi.wysiwyg_composer.ComposerAction -import io.element.android.x.element.resources.R as ElementR // Imported from Element Android class RichTextComposerLayout @JvmOverloads constructor(