From 4219e2d16f0f5dc8d5e6bc3e0c7d3fbbb5b1f18c Mon Sep 17 00:00:00 2001 From: jeffrey-signal Date: Thu, 20 Nov 2025 14:48:04 -0500 Subject: [PATCH] Simplify redundant split-pane window size class checks. --- app/src/main/java/org/thoughtcrime/securesms/MainActivity.kt | 3 +-- .../main/java/org/thoughtcrime/securesms/window/AppScaffold.kt | 3 +-- .../thoughtcrime/securesms/window/WindowSizeClassExtensions.kt | 2 +- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/MainActivity.kt b/app/src/main/java/org/thoughtcrime/securesms/MainActivity.kt index 9b02d34db2..e36e4e1bf9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/MainActivity.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/MainActivity.kt @@ -72,7 +72,6 @@ import androidx.lifecycle.lifecycleScope import androidx.lifecycle.repeatOnLifecycle import androidx.recyclerview.widget.RecyclerView import androidx.window.core.layout.WindowSizeClass -import androidx.window.core.layout.WindowWidthSizeClass import com.google.android.material.dialog.MaterialAlertDialogBuilder import io.reactivex.rxjava3.subjects.PublishSubject import io.reactivex.rxjava3.subjects.Subject @@ -555,7 +554,7 @@ class MainActivity : PassphraseRequiredActivity(), VoiceNoteMediaControllerOwner } }, secondaryContent = { - val listContainerColor = if (windowSizeClass.isSplitPane() && windowSizeClass.windowWidthSizeClass == WindowWidthSizeClass.MEDIUM) { + val listContainerColor = if (windowSizeClass.isSplitPane()) { SignalTheme.colors.colorSurface1 } else { MaterialTheme.colorScheme.surface diff --git a/app/src/main/java/org/thoughtcrime/securesms/window/AppScaffold.kt b/app/src/main/java/org/thoughtcrime/securesms/window/AppScaffold.kt index dc3eded448..801aefbfb4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/window/AppScaffold.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/window/AppScaffold.kt @@ -42,7 +42,6 @@ import androidx.compose.ui.platform.LocalInspectionMode import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import androidx.compose.ui.zIndex -import androidx.window.core.layout.WindowHeightSizeClass import org.signal.core.ui.compose.AllDevicePreviews import org.signal.core.ui.compose.Previews import org.thoughtcrime.securesms.main.MainFloatingActionButtonsCallback @@ -61,7 +60,7 @@ enum class NavigationType { val windowSizeClass = currentWindowAdaptiveInfo().windowSizeClass return remember(windowSizeClass) { - if (windowSizeClass.isSplitPane() && windowSizeClass.windowHeightSizeClass.isAtLeast(WindowHeightSizeClass.MEDIUM)) { + if (windowSizeClass.isSplitPane()) { RAIL } else { BAR diff --git a/app/src/main/java/org/thoughtcrime/securesms/window/WindowSizeClassExtensions.kt b/app/src/main/java/org/thoughtcrime/securesms/window/WindowSizeClassExtensions.kt index 174c3ead83..6829746001 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/window/WindowSizeClassExtensions.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/window/WindowSizeClassExtensions.kt @@ -40,7 +40,7 @@ fun Resources.getWindowSizeClass(): WindowSizeClass { } /** - * Split Pane is enabled as long as the width size class is MEDIUM or greater + * Determines whether the UI should display in split-pane mode based on available screen space. */ @JvmOverloads fun WindowSizeClass.isSplitPane(