Browse Source

Bump dependencies + linting

arkon 2 years ago
parent
commit
cd3cb72b65
33 changed files with 195 additions and 104 deletions
  1. 4 2
      app/src/main/java/eu/kanade/domain/source/interactor/SetMigrateSorting.kt
  2. 3 1
      app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
  3. 5 2
      app/src/main/java/eu/kanade/presentation/components/MangaCover.kt
  4. 10 4
      app/src/main/java/eu/kanade/presentation/components/Scaffold.kt
  5. 12 4
      app/src/main/java/eu/kanade/presentation/components/VerticalFastScroller.kt
  6. 3 1
      app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
  7. 1 1
      app/src/main/java/eu/kanade/presentation/manga/MangaScreenConstants.kt
  8. 18 12
      app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
  9. 13 7
      app/src/main/java/eu/kanade/presentation/util/Scrollbar.kt
  10. 5 2
      app/src/main/java/eu/kanade/tachiyomi/Migrations.kt
  11. 5 2
      app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupFileValidator.kt
  12. 2 1
      app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupTracking.kt
  13. 26 18
      app/src/main/java/eu/kanade/tachiyomi/data/track/bangumi/BangumiInterceptor.kt
  14. 5 2
      app/src/main/java/eu/kanade/tachiyomi/data/track/komga/KomgaApi.kt
  15. 11 7
      app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt
  16. 7 5
      app/src/main/java/eu/kanade/tachiyomi/extension/util/ExtensionInstallReceiver.kt
  17. 3 1
      app/src/main/java/eu/kanade/tachiyomi/glance/UpdatesGridGlanceWidget.kt
  18. 6 4
      app/src/main/java/eu/kanade/tachiyomi/network/interceptor/RateLimitInterceptor.kt
  19. 1 1
      app/src/main/java/eu/kanade/tachiyomi/ui/base/delegate/SecureActivityDelegate.kt
  20. 5 2
      app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
  21. 20 8
      app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
  22. 2 1
      app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
  23. 3 1
      app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/HttpPageLoader.kt
  24. 2 1
      app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/OrientationType.kt
  25. 2 1
      app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerViewerAdapter.kt
  26. 7 5
      app/src/main/java/eu/kanade/tachiyomi/util/lang/RxCoroutineBridge.kt
  27. 1 1
      app/src/main/java/eu/kanade/tachiyomi/widget/ExtendedNavigationView.kt
  28. 3 1
      app/src/main/java/eu/kanade/tachiyomi/widget/MaterialFastScroll.kt
  29. 3 1
      app/src/main/java/eu/kanade/tachiyomi/widget/TachiyomiChangeHandlerFrameLayout.kt
  30. 3 1
      app/src/main/java/eu/kanade/tachiyomi/widget/TachiyomiSearchView.kt
  31. 2 2
      gradle/androidx.versions.toml
  32. 1 1
      gradle/compose.versions.toml
  33. 1 1
      gradle/libs.versions.toml

+ 4 - 2
app/src/main/java/eu/kanade/domain/source/interactor/SetMigrateSorting.kt

@@ -13,11 +13,13 @@ class SetMigrateSorting(
 
     enum class Mode {
         ALPHABETICAL,
-        TOTAL;
+        TOTAL,
+        ;
     }
 
     enum class Direction {
         ASCENDING,
-        DESCENDING;
+        DESCENDING,
+        ;
     }
 }

+ 3 - 1
app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt

@@ -338,7 +338,9 @@ private fun InfoText(
 
     val clickableModifier = if (onClick != null) {
         Modifier.clickable(interactionSource, indication = null) { onClick() }
-    } else Modifier
+    } else {
+        Modifier
+    }
 
     Column(
         modifier = modifier.then(clickableModifier),

+ 5 - 2
app/src/main/java/eu/kanade/presentation/components/MangaCover.kt

@@ -18,7 +18,8 @@ import eu.kanade.tachiyomi.R
 
 enum class MangaCover(val ratio: Float) {
     Square(1f / 1f),
-    Book(2f / 3f);
+    Book(2f / 3f),
+    ;
 
     @Composable
     operator fun invoke(
@@ -42,7 +43,9 @@ enum class MangaCover(val ratio: Float) {
                             role = Role.Button,
                             onClick = onClick,
                         )
-                    } else Modifier,
+                    } else {
+                        Modifier
+                    },
                 ),
             contentScale = ContentScale.Crop,
         )

+ 10 - 4
app/src/main/java/eu/kanade/presentation/components/Scaffold.kt

@@ -220,12 +220,18 @@ private fun ScaffoldLayout(
                     .asPaddingValues(this@SubcomposeLayout)
                 val innerPadding = PaddingValues(
                     top =
-                    if (topBarHeight == 0) insets.calculateTopPadding()
-                    else topBarHeight.toDp(),
+                    if (topBarHeight == 0) {
+                        insets.calculateTopPadding()
+                    } else {
+                        topBarHeight.toDp()
+                    },
                     bottom =
                     (
-                        if (bottomBarHeight == 0) insets.calculateBottomPadding()
-                        else bottomBarHeight.toDp()
+                        if (bottomBarHeight == 0) {
+                            insets.calculateBottomPadding()
+                        } else {
+                            bottomBarHeight.toDp()
+                        }
                         ) + fabHeight.toDp(),
                     start = insets.calculateLeftPadding((this@SubcomposeLayout).layoutDirection),
                     end = insets.calculateRightPadding((this@SubcomposeLayout).layoutDirection),

+ 12 - 4
app/src/main/java/eu/kanade/presentation/components/VerticalFastScroller.kt

@@ -145,13 +145,17 @@ fun VerticalFastScroller(
                                     )
                                 },
                             )
-                        } else Modifier,
+                        } else {
+                            Modifier
+                        },
                     )
                     .then(
                         // Exclude thumb from gesture area only when needed
                         if (isThumbVisible && !isThumbDragged && !listState.isScrollInProgress) {
                             Modifier.systemGestureExclusion()
-                        } else Modifier,
+                        } else {
+                            Modifier
+                        },
                     )
                     .height(ThumbLength)
                     .padding(horizontal = 8.dp)
@@ -321,13 +325,17 @@ fun VerticalGridFastScroller(
                                     )
                                 },
                             )
-                        } else Modifier,
+                        } else {
+                            Modifier
+                        },
                     )
                     .then(
                         // Exclude thumb from gesture area only when needed
                         if (isThumbVisible && !isThumbDragged && !state.isScrollInProgress) {
                             Modifier.systemGestureExclusion()
-                        } else Modifier,
+                        } else {
+                            Modifier
+                        },
                     )
                     .height(ThumbLength)
                     .padding(horizontal = 8.dp)

+ 3 - 1
app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt

@@ -673,7 +673,9 @@ private fun LazyListScope.sharedChapterItems(
             },
             onDownloadClick = if (onDownloadChapter != null) {
                 { onDownloadChapter(listOf(chapterItem), it) }
-            } else null,
+            } else {
+                null
+            },
         )
     }
 }

+ 1 - 1
app/src/main/java/eu/kanade/presentation/manga/MangaScreenConstants.kt

@@ -6,7 +6,7 @@ enum class DownloadAction {
     NEXT_10_CHAPTERS,
     CUSTOM,
     UNREAD_CHAPTERS,
-    ALL_CHAPTERS
+    ALL_CHAPTERS,
 }
 
 enum class EditCoverAction {

+ 18 - 12
app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt

@@ -316,10 +316,12 @@ private fun MangaAndSourceTitlesLarge(
                 .padding(top = 2.dp)
                 .clickableNoIndication(
                     onLongClick = {
-                        if (!author.isNullOrBlank()) context.copyToClipboard(
-                            author,
-                            author,
-                        )
+                        if (!author.isNullOrBlank()) {
+                            context.copyToClipboard(
+                                author,
+                                author,
+                            )
+                        }
                     },
                     onClick = { if (!author.isNullOrBlank()) doSearch(author, true) },
                 ),
@@ -428,10 +430,12 @@ private fun MangaAndSourceTitlesSmall(
                 style = MaterialTheme.typography.titleLarge,
                 modifier = Modifier.clickableNoIndication(
                     onLongClick = {
-                        if (title.isNotBlank()) context.copyToClipboard(
-                            title,
-                            title,
-                        )
+                        if (title.isNotBlank()) {
+                            context.copyToClipboard(
+                                title,
+                                title,
+                            )
+                        }
                     },
                     onClick = { if (title.isNotBlank()) doSearch(title, true) },
                 ),
@@ -446,10 +450,12 @@ private fun MangaAndSourceTitlesSmall(
                     .padding(top = 2.dp)
                     .clickableNoIndication(
                         onLongClick = {
-                            if (!author.isNullOrBlank()) context.copyToClipboard(
-                                author,
-                                author,
-                            )
+                            if (!author.isNullOrBlank()) {
+                                context.copyToClipboard(
+                                    author,
+                                    author,
+                                )
+                            }
                         },
                         onClick = { if (!author.isNullOrBlank()) doSearch(author, true) },
                     ),

+ 13 - 7
app/src/main/java/eu/kanade/presentation/util/Scrollbar.kt

@@ -103,12 +103,16 @@ private fun Modifier.drawScrollbar(
     val estimatedItemSize = if (items.isEmpty()) 0f else itemsSize.toFloat() / items.size
     val totalSize = estimatedItemSize * layoutInfo.totalItemsCount
     val thumbSize = viewportSize / totalSize * viewportSize
-    val startOffset = if (items.isEmpty()) 0f else items
-        .first()
-        .run {
-            val startPadding = if (reverseDirection) layoutInfo.afterContentPadding else layoutInfo.beforeContentPadding
-            startPadding + ((estimatedItemSize * index - offset) / totalSize * viewportSize)
-        }
+    val startOffset = if (items.isEmpty()) {
+        0f
+    } else {
+        items
+            .first()
+            .run {
+                val startPadding = if (reverseDirection) layoutInfo.afterContentPadding else layoutInfo.beforeContentPadding
+                startPadding + ((estimatedItemSize * index - offset) / totalSize * viewportSize)
+            }
+    }
     val drawScrollbar = onDrawScrollbar(
         orientation, reverseDirection, atEnd, showScrollbar,
         thickness, color, alpha, thumbSize, startOffset, positionOffset,
@@ -202,7 +206,9 @@ private fun Modifier.drawScrollbar(
     val isLtr = LocalLayoutDirection.current == LayoutDirection.Ltr
     val reverseDirection = if (orientation == Orientation.Horizontal) {
         if (isLtr) reverseScrolling else !reverseScrolling
-    } else reverseScrolling
+    } else {
+        reverseScrolling
+    }
     val atEnd = if (orientation == Orientation.Vertical) isLtr else true
 
     val context = LocalContext.current

+ 5 - 2
app/src/main/java/eu/kanade/tachiyomi/Migrations.kt

@@ -111,8 +111,11 @@ object Migrations {
                 // Migrate library filters to tri-state versions
                 fun convertBooleanPrefToTriState(key: String): Int {
                     val oldPrefValue = prefs.getBoolean(key, false)
-                    return if (oldPrefValue) ExtendedNavigationView.Item.TriStateGroup.State.INCLUDE.value
-                    else ExtendedNavigationView.Item.TriStateGroup.State.IGNORE.value
+                    return if (oldPrefValue) {
+                        ExtendedNavigationView.Item.TriStateGroup.State.INCLUDE.value
+                    } else {
+                        ExtendedNavigationView.Item.TriStateGroup.State.IGNORE.value
+                    }
                 }
                 prefs.edit {
                     putInt(PreferenceKeys.filterDownloaded, convertBooleanPrefToTriState("pref_filter_downloaded_key"))

+ 5 - 2
app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupFileValidator.kt

@@ -44,8 +44,11 @@ class BackupFileValidator(
             .filter { sourceManager.get(it.key) == null }
             .values.map {
                 val id = it.toLongOrNull()
-                if (id == null) it
-                else sourceManager.getOrStub(id).toString()
+                if (id == null) {
+                    it
+                } else {
+                    sourceManager.getOrStub(id).toString()
+                }
             }
             .distinct()
             .sorted()

+ 2 - 1
app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupTracking.kt

@@ -11,7 +11,8 @@ data class BackupTracking(
     @ProtoNumber(1) var syncId: Int,
     // LibraryId is not null in 1.x
     @ProtoNumber(2) var libraryId: Long,
-    @Deprecated("Use mediaId instead", level = DeprecationLevel.WARNING) @ProtoNumber(3)
+    @Deprecated("Use mediaId instead", level = DeprecationLevel.WARNING)
+    @ProtoNumber(3)
     var mediaIdInt: Int = 0,
     // trackingUrl is called mediaUrl in 1.x
     @ProtoNumber(4) var trackingUrl: String = "",

+ 26 - 18
app/src/main/java/eu/kanade/tachiyomi/data/track/bangumi/BangumiInterceptor.kt

@@ -30,29 +30,37 @@ class BangumiInterceptor(val bangumi: Bangumi) : Interceptor {
             }
         }
 
-        val authRequest = if (originalRequest.method == "GET") originalRequest.newBuilder()
-            .header("User-Agent", "Tachiyomi")
-            .url(
-                originalRequest.url.newBuilder()
-                    .addQueryParameter("access_token", currAuth.access_token).build(),
-            )
-            .build() else originalRequest.newBuilder()
-            .post(addToken(currAuth.access_token, originalRequest.body as FormBody))
-            .header("User-Agent", "Tachiyomi")
-            .build()
+        val authRequest = if (originalRequest.method == "GET") {
+            originalRequest.newBuilder()
+                .header("User-Agent", "Tachiyomi")
+                .url(
+                    originalRequest.url.newBuilder()
+                        .addQueryParameter("access_token", currAuth.access_token).build(),
+                )
+                .build()
+        } else {
+            originalRequest.newBuilder()
+                .post(addToken(currAuth.access_token, originalRequest.body as FormBody))
+                .header("User-Agent", "Tachiyomi")
+                .build()
+        }
 
         return chain.proceed(authRequest)
     }
 
     fun newAuth(oauth: OAuth?) {
-        this.oauth = if (oauth == null) null else OAuth(
-            oauth.access_token,
-            oauth.token_type,
-            System.currentTimeMillis() / 1000,
-            oauth.expires_in,
-            oauth.refresh_token,
-            this.oauth?.user_id,
-        )
+        this.oauth = if (oauth == null) {
+            null
+        } else {
+            OAuth(
+                oauth.access_token,
+                oauth.token_type,
+                System.currentTimeMillis() / 1000,
+                oauth.expires_in,
+                oauth.refresh_token,
+                this.oauth?.user_id,
+            )
+        }
 
         bangumi.saveToken(oauth)
     }

+ 5 - 2
app/src/main/java/eu/kanade/tachiyomi/data/track/komga/KomgaApi.kt

@@ -41,8 +41,11 @@ class KomgaApi(private val client: OkHttpClient) {
                 val progress = client
                     .newCall(GET("${url.replace("/api/v1/series/", "/api/v2/series/")}/read-progress/tachiyomi"))
                     .await().let {
-                        if (url.contains("/api/v1/series/")) it.parseAs<ReadProgressV2Dto>()
-                        else it.parseAs<ReadProgressDto>().toV2()
+                        if (url.contains("/api/v1/series/")) {
+                            it.parseAs<ReadProgressV2Dto>()
+                        } else {
+                            it.parseAs<ReadProgressDto>().toV2()
+                        }
                     }
 
                 track.apply {

+ 11 - 7
app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt

@@ -29,14 +29,18 @@ internal class ExtensionGithubApi {
 
     suspend fun findExtensions(): List<Extension.Available> {
         return withIOContext {
-            val githubResponse = if (requiresFallbackSource) null else try {
-                networkService.client
-                    .newCall(GET("${REPO_URL_PREFIX}index.min.json"))
-                    .await()
-            } catch (e: Throwable) {
-                logcat(LogPriority.ERROR, e) { "Failed to get extensions from GitHub" }
-                requiresFallbackSource = true
+            val githubResponse = if (requiresFallbackSource) {
                 null
+            } else {
+                try {
+                    networkService.client
+                        .newCall(GET("${REPO_URL_PREFIX}index.min.json"))
+                        .await()
+                } catch (e: Throwable) {
+                    logcat(LogPriority.ERROR, e) { "Failed to get extensions from GitHub" }
+                    requiresFallbackSource = true
+                    null
+                }
             }
 
             val response = githubResponse ?: run {

+ 7 - 5
app/src/main/java/eu/kanade/tachiyomi/extension/util/ExtensionInstallReceiver.kt

@@ -50,11 +50,13 @@ internal class ExtensionInstallReceiver(private val listener: Listener) :
 
         when (intent.action) {
             Intent.ACTION_PACKAGE_ADDED -> {
-                if (!isReplacing(intent)) launchNow {
-                    when (val result = getExtensionFromIntent(context, intent)) {
-                        is LoadResult.Success -> listener.onExtensionInstalled(result.extension)
-                        is LoadResult.Untrusted -> listener.onExtensionUntrusted(result.extension)
-                        else -> {}
+                if (!isReplacing(intent)) {
+                    launchNow {
+                        when (val result = getExtensionFromIntent(context, intent)) {
+                            is LoadResult.Success -> listener.onExtensionInstalled(result.extension)
+                            is LoadResult.Untrusted -> listener.onExtensionUntrusted(result.extension)
+                            else -> {}
+                        }
                     }
                 }
             }

+ 3 - 1
app/src/main/java/eu/kanade/tachiyomi/glance/UpdatesGridGlanceWidget.kt

@@ -238,7 +238,9 @@ class UpdatesGridGlanceWidget : GlanceAppWidget() {
                     .let {
                         if (Build.VERSION.SDK_INT < Build.VERSION_CODES.S) {
                             it.transformations(RoundedCornersTransformation(roundPx))
-                        } else it // Handled by system
+                        } else {
+                            it // Handled by system
+                        }
                     }
                     .build()
                 Pair(updatesView.mangaId, app.imageLoader.executeBlocking(request).drawable?.toBitmap())

+ 6 - 4
app/src/main/java/eu/kanade/tachiyomi/network/interceptor/RateLimitInterceptor.kt

@@ -74,10 +74,12 @@ internal class RateLimitInterceptor(
                         throw IOException("Canceled")
                     } else if (hasRemovedExpired) {
                         break
-                    } else try { // wait for the first entry to expire, or notified by cached response
-                        (requestQueue as Object).wait(requestQueue.first - periodStart)
-                    } catch (_: InterruptedException) {
-                        continue
+                    } else {
+                        try { // wait for the first entry to expire, or notified by cached response
+                            (requestQueue as Object).wait(requestQueue.first - periodStart)
+                        } catch (_: InterruptedException) {
+                            continue
+                        }
                     }
                 }
 

+ 1 - 1
app/src/main/java/eu/kanade/tachiyomi/ui/base/delegate/SecureActivityDelegate.kt

@@ -50,7 +50,7 @@ private var lockState = LockState.INACTIVE
 private enum class LockState {
     INACTIVE,
     PENDING,
-    ACTIVE
+    ACTIVE,
 }
 
 class SecureActivityDelegateImpl : SecureActivityDelegate, DefaultLifecycleObserver {

+ 5 - 2
app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt

@@ -167,8 +167,11 @@ class SearchPresenter(
                 val service = enhancedServices
                     .firstOrNull { it.isTrackFrom(updatedTrack, prevManga, prevSource) }
 
-                if (service != null) service.migrateTrack(updatedTrack, manga, source)
-                else updatedTrack
+                if (service != null) {
+                    service.migrateTrack(updatedTrack, manga, source)
+                } else {
+                    updatedTrack
+                }
             }
             insertTrack.awaitAll(tracks)
         }

+ 20 - 8
app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt

@@ -190,32 +190,44 @@ class LibraryPresenter(
                 else -> downloadManager.getDownloadCount(item.manga.toDomainManga()!!) > 0
             }
 
-            return@downloaded if (downloadedOnly || filterDownloaded == State.INCLUDE.value) isDownloaded
-            else !isDownloaded
+            return@downloaded if (downloadedOnly || filterDownloaded == State.INCLUDE.value) {
+                isDownloaded
+            } else {
+                !isDownloaded
+            }
         }
 
         val filterFnUnread: (LibraryItem) -> Boolean = unread@{ item ->
             if (filterUnread == State.IGNORE.value) return@unread true
             val isUnread = item.manga.unreadCount != 0
 
-            return@unread if (filterUnread == State.INCLUDE.value) isUnread
-            else !isUnread
+            return@unread if (filterUnread == State.INCLUDE.value) {
+                isUnread
+            } else {
+                !isUnread
+            }
         }
 
         val filterFnStarted: (LibraryItem) -> Boolean = started@{ item ->
             if (filterStarted == State.IGNORE.value) return@started true
             val hasStarted = item.manga.hasStarted
 
-            return@started if (filterStarted == State.INCLUDE.value) hasStarted
-            else !hasStarted
+            return@started if (filterStarted == State.INCLUDE.value) {
+                hasStarted
+            } else {
+                !hasStarted
+            }
         }
 
         val filterFnCompleted: (LibraryItem) -> Boolean = completed@{ item ->
             if (filterCompleted == State.IGNORE.value) return@completed true
             val isCompleted = item.manga.status == SManga.COMPLETED
 
-            return@completed if (filterCompleted == State.INCLUDE.value) isCompleted
-            else !isCompleted
+            return@completed if (filterCompleted == State.INCLUDE.value) {
+                isCompleted
+            } else {
+                !isCompleted
+            }
         }
 
         val filterFnTracking: (LibraryItem) -> Boolean = tracking@{ item ->

+ 2 - 1
app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt

@@ -305,7 +305,8 @@ class MangaController : FullComposeController<MangaPresenter> {
                 previousController.search(query)
             }
             is UpdatesController,
-            is HistoryController, -> {
+            is HistoryController,
+            -> {
                 // Manually navigate to LibraryController
                 router.handleBack()
                 (router.activity as MainActivity).setSelectedNavItem(R.id.nav_library)

+ 3 - 1
app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/HttpPageLoader.kt

@@ -151,7 +151,9 @@ class HttpPageLoader(
             .mapNotNull {
                 if (it.status == Page.QUEUE) {
                     PriorityPage(it, 0).apply { queue.offer(this) }
-                } else null
+                } else {
+                    null
+                }
             }
     }
 

+ 2 - 1
app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/OrientationType.kt

@@ -12,7 +12,8 @@ enum class OrientationType(val prefValue: Int, val flag: Int, @StringRes val str
     REVERSE_PORTRAIT(6, ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT, R.string.rotation_reverse_portrait, R.drawable.ic_stay_current_portrait_24dp, 0x00000030),
     LANDSCAPE(3, ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE, R.string.rotation_landscape, R.drawable.ic_stay_current_landscape_24dp, 0x00000018),
     LOCKED_PORTRAIT(4, ActivityInfo.SCREEN_ORIENTATION_PORTRAIT, R.string.rotation_force_portrait, R.drawable.ic_screen_lock_portrait_24dp, 0x00000020),
-    LOCKED_LANDSCAPE(5, ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE, R.string.rotation_force_landscape, R.drawable.ic_screen_lock_landscape_24dp, 0x00000028);
+    LOCKED_LANDSCAPE(5, ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE, R.string.rotation_force_landscape, R.drawable.ic_screen_lock_landscape_24dp, 0x00000028),
+    ;
 
     companion object {
         const val MASK = 0x00000038

+ 2 - 1
app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerViewerAdapter.kt

@@ -171,7 +171,8 @@ class PagerViewerAdapter(private val viewer: PagerViewer) : ViewPagerAdapter() {
 
         val placeAtIndex = when (viewer) {
             is L2RPagerViewer,
-            is VerticalPagerViewer, -> currentIndex + 1
+            is VerticalPagerViewer,
+            -> currentIndex + 1
             else -> currentIndex
         }
 

+ 7 - 5
app/src/main/java/eu/kanade/tachiyomi/util/lang/RxCoroutineBridge.kt

@@ -33,11 +33,13 @@ private suspend fun <T> Observable<T>.awaitOne(): T = suspendCancellableCoroutin
                 }
 
                 override fun onCompleted() {
-                    if (cont.isActive) cont.resumeWithException(
-                        IllegalStateException(
-                            "Should have invoked onNext",
-                        ),
-                    )
+                    if (cont.isActive) {
+                        cont.resumeWithException(
+                            IllegalStateException(
+                                "Should have invoked onNext",
+                            ),
+                        )
+                    }
                 }
 
                 override fun onError(e: Throwable) {

+ 1 - 1
app/src/main/java/eu/kanade/tachiyomi/widget/ExtendedNavigationView.kt

@@ -117,7 +117,7 @@ open class ExtendedNavigationView @JvmOverloads constructor(
             enum class State(val value: Int) {
                 IGNORE(0),
                 INCLUDE(1),
-                EXCLUDE(2)
+                EXCLUDE(2),
             }
 
             override fun getStateDrawable(context: Context): Drawable? {

+ 3 - 1
app/src/main/java/eu/kanade/tachiyomi/widget/MaterialFastScroll.kt

@@ -46,7 +46,9 @@ class MaterialFastScroll @JvmOverloads constructor(context: Context, attrs: Attr
                     } else {
                         event.x > handle.width + ViewCompat.getPaddingStart(handle)
                     }
-                ) return false
+                ) {
+                    return false
+                }
                 // end
 
                 if (ignoreTouchesOutsideHandle &&

+ 3 - 1
app/src/main/java/eu/kanade/tachiyomi/widget/TachiyomiChangeHandlerFrameLayout.kt

@@ -39,7 +39,9 @@ class TachiyomiChangeHandlerFrameLayout(
             behavior.apply {
                 shouldHeaderOverlap = overlapHeader
             }
-        } else null
+        } else {
+            null
+        }
         if (!enable) {
             // The behavior doesn't reset translationY when shouldHeaderOverlap is false
             translationY = 0F

+ 3 - 1
app/src/main/java/eu/kanade/tachiyomi/widget/TachiyomiSearchView.kt

@@ -48,7 +48,9 @@ class TachiyomiSearchView @JvmOverloads constructor(
                 clearFocus()
                 listener?.onQueryTextSubmit(query.toString())
                 true
-            } else false
+            } else {
+                false
+            }
         }
     }
 

+ 2 - 2
gradle/androidx.versions.toml

@@ -4,11 +4,11 @@ lifecycle_version = "2.5.1"
 
 [libraries]
 annotation = "androidx.annotation:annotation:1.4.0"
-appcompat = "androidx.appcompat:appcompat:1.6.0-beta01"
+appcompat = "androidx.appcompat:appcompat:1.6.0-rc01"
 biometricktx = "androidx.biometric:biometric-ktx:1.2.0-alpha04"
 constraintlayout = "androidx.constraintlayout:constraintlayout:2.1.4"
 coordinatorlayout = "androidx.coordinatorlayout:coordinatorlayout:1.2.0"
-corektx = "androidx.core:core-ktx:1.8.0"
+corektx = "androidx.core:core-ktx:1.9.0"
 splashscreen = "androidx.core:core-splashscreen:1.0.0-alpha02"
 recyclerview = "androidx.recyclerview:recyclerview:1.3.0-beta02"
 viewpager = "androidx.viewpager:viewpager:1.1.0-alpha01"

+ 1 - 1
gradle/compose.versions.toml

@@ -1,5 +1,5 @@
 [versions]
-compiler = "1.3.0-rc02"
+compiler = "1.3.1"
 compose = "1.2.1"
 accompanist = "0.25.1"
 material3 = "1.0.0-beta01"

+ 1 - 1
gradle/libs.versions.toml

@@ -103,5 +103,5 @@ conductor = ["conductor-core", "conductor-support-preference"]
 shizuku = ["shizuku-api", "shizuku-provider"]
 
 [plugins]
-kotlinter = { id = "org.jmailen.kotlinter", version = "3.11.1" }
+kotlinter = { id = "org.jmailen.kotlinter", version = "3.12.0" }
 versionsx = { id = "com.github.ben-manes.versions", version = "0.42.0" }