Skip to content

Commit 5024b1a

Browse files
committed
Updated to Jetpack WindowManager 1.5 and added demo for new WindowSize Classes
1 parent 44b83d9 commit 5024b1a

File tree

4 files changed

+15
-23
lines changed

4 files changed

+15
-23
lines changed

app/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ android {
2727

2828
defaultConfig {
2929
applicationId = "com.example.platform"
30-
minSdk = 23
30+
minSdk = 24
3131
targetSdk = 36
3232
versionCode = 1
3333
versionName = "1.0"

gradle/libs.versions.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ play-services-location = "21.1.0"
3636
accompanist = "0.32.0"
3737
androidx-datastore = "1.0.0"
3838
androidx-navigation = "2.7.7"
39-
androidx-window = "1.4.0-rc01"
39+
androidx-window = "1.5.0"
4040
casa = "0.5.1"
4141
gradleDownloadTask = "4.1.2"
4242
ksp = "1.9.22-1.0.17"

samples/user-interface/windowmanager/build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ android {
2424
compileSdk = 36
2525

2626
defaultConfig {
27-
minSdk = 21
28-
targetSdk = 35
27+
minSdk = 24
28+
testOptions.targetSdk = 36
2929
}
3030
kotlinOptions {
3131
jvmTarget = "1.8"

samples/user-interface/windowmanager/src/main/java/com/example/platform/ui/windowmanager/WindowMetricsActivity.kt

Lines changed: 11 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ import androidx.window.core.layout.WindowSizeClass
2525
import androidx.window.core.layout.WindowSizeClass.Companion.HEIGHT_DP_EXPANDED_LOWER_BOUND
2626
import androidx.window.core.layout.WindowSizeClass.Companion.HEIGHT_DP_MEDIUM_LOWER_BOUND
2727
import androidx.window.core.layout.WindowSizeClass.Companion.WIDTH_DP_EXPANDED_LOWER_BOUND
28+
import androidx.window.core.layout.WindowSizeClass.Companion.WIDTH_DP_EXTRA_LARGE_LOWER_BOUND
29+
import androidx.window.core.layout.WindowSizeClass.Companion.WIDTH_DP_LARGE_LOWER_BOUND
2830
import androidx.window.core.layout.WindowSizeClass.Companion.WIDTH_DP_MEDIUM_LOWER_BOUND
2931
import androidx.window.core.layout.computeWindowSizeClass
3032

@@ -53,7 +55,7 @@ class WindowMetricsActivity : AppCompatActivity() {
5355
val width = windowMetrics.bounds.width()
5456
val height = windowMetrics.bounds.height()
5557
val density = resources.displayMetrics.density
56-
val windowSizeClass = WindowSizeClass.BREAKPOINTS_V1.computeWindowSizeClass(width/density, height/density)
58+
val windowSizeClass = WindowSizeClass.BREAKPOINTS_V2.computeWindowSizeClass(width/density, height/density)
5759

5860
adapter.append("WindowMetrics update", "width: $width, height: $height")
5961
adapter.append("WindowSize Class", "Height: " + getHeightSizeClass(windowSizeClass) + "\nWidth: " + getWidthSizeClass(windowSizeClass))
@@ -62,29 +64,19 @@ class WindowMetricsActivity : AppCompatActivity() {
6264

6365
private fun getWidthSizeClass(sizeClass: WindowSizeClass): String {
6466
return when {
65-
sizeClass.isWidthAtLeastBreakpoint(WIDTH_DP_EXPANDED_LOWER_BOUND) -> {
66-
"EXPANDED"
67-
}
68-
sizeClass.isWidthAtLeastBreakpoint(WIDTH_DP_MEDIUM_LOWER_BOUND) -> {
69-
"MEDIUM"
70-
}
71-
else -> {
72-
"COMPACT"
73-
}
67+
sizeClass.isWidthAtLeastBreakpoint(WIDTH_DP_EXTRA_LARGE_LOWER_BOUND) -> "EXTRA-LARGE"
68+
sizeClass.isWidthAtLeastBreakpoint(WIDTH_DP_LARGE_LOWER_BOUND) -> "LARGE"
69+
sizeClass.isWidthAtLeastBreakpoint(WIDTH_DP_EXPANDED_LOWER_BOUND) -> "EXPANDED"
70+
sizeClass.isWidthAtLeastBreakpoint(WIDTH_DP_MEDIUM_LOWER_BOUND) -> "MEDIUM"
71+
else -> "COMPACT"
7472
}
7573
}
7674

7775
private fun getHeightSizeClass(sizeClass: WindowSizeClass): String {
7876
return when {
79-
sizeClass.isHeightAtLeastBreakpoint(HEIGHT_DP_EXPANDED_LOWER_BOUND) -> {
80-
"EXPANDED"
81-
}
82-
sizeClass.isHeightAtLeastBreakpoint(HEIGHT_DP_MEDIUM_LOWER_BOUND) -> {
83-
"MEDIUM"
84-
}
85-
else -> {
86-
"COMPACT"
87-
}
77+
sizeClass.isHeightAtLeastBreakpoint(HEIGHT_DP_EXPANDED_LOWER_BOUND) -> "EXPANDED"
78+
sizeClass.isHeightAtLeastBreakpoint(HEIGHT_DP_MEDIUM_LOWER_BOUND) -> "MEDIUM"
79+
else -> "COMPACT"
8880
}
8981
}
9082
}

0 commit comments

Comments
 (0)