diff options
| -rw-r--r-- | packages/SystemUI/compose/core/src/com/android/compose/windowsizeclass/WindowSizeClass.kt | 7 | 
1 files changed, 2 insertions, 5 deletions
| diff --git a/packages/SystemUI/compose/core/src/com/android/compose/windowsizeclass/WindowSizeClass.kt b/packages/SystemUI/compose/core/src/com/android/compose/windowsizeclass/WindowSizeClass.kt index 7468650e88d3..4674d6e5f25a 100644 --- a/packages/SystemUI/compose/core/src/com/android/compose/windowsizeclass/WindowSizeClass.kt +++ b/packages/SystemUI/compose/core/src/com/android/compose/windowsizeclass/WindowSizeClass.kt @@ -16,16 +16,15 @@  package com.android.compose.windowsizeclass -import android.view.WindowManager  import androidx.compose.material3.windowsizeclass.ExperimentalMaterial3WindowSizeClassApi  import androidx.compose.material3.windowsizeclass.WindowSizeClass  import androidx.compose.runtime.Composable -import androidx.compose.runtime.remember  import androidx.compose.runtime.staticCompositionLocalOf  import androidx.compose.ui.graphics.toComposeRect  import androidx.compose.ui.platform.LocalConfiguration  import androidx.compose.ui.platform.LocalContext  import androidx.compose.ui.platform.LocalDensity +import androidx.window.layout.WindowMetricsCalculator  val LocalWindowSizeClass =      staticCompositionLocalOf<WindowSizeClass> { @@ -42,9 +41,7 @@ fun calculateWindowSizeClass(): WindowSizeClass {      LocalConfiguration.current      val density = LocalDensity.current      val context = LocalContext.current -    val metrics = -        remember(context) { context.getSystemService(WindowManager::class.java)!! } -            .currentWindowMetrics +    val metrics = WindowMetricsCalculator.getOrCreate().computeCurrentWindowMetrics(context)      val size = with(density) { metrics.bounds.toComposeRect().size.toDpSize() }      return WindowSizeClass.calculateFromSize(size)  } |