windowinsets.info

Galaxy S20 Ultra Window Insets

Metrics

MarkdownJSON

Dimensions

Logical Size
411.43 × 914.29 dp
Resolution
1440 × 3200 px
Aspect Ratio
5:11
sw600dp
No
Captured Window
1080 × 2400 px
Physical Density
509 ppi
Android Density
420 dpi
Scale
2.63×
What does sw600dp mean?

“sw” means smallest width. Android's sw600dp resource qualifier applies when the app's smallest available width is at least 600 dp. The Yes/No value here compares the selected display's shorter measured logical dimension with 600 dp; exactly 600 dp counts as Yes.

Safe Area Insets

Top
28.19 dp
Bottom
48 dp
Left
0 dp
Right
0 dp

With the keyboard hidden, Compose's WindowInsets.safeDrawing and a View's systemBars() or displayCutout() insets resolve to these values.Compose · Views guide →

Corner Radii · Portrait

Top Left
24 dp
Top Right
24 dp
Bottom Right
24 dp
Bottom Left
24 dp
Use in development Preview spec, size class, AVD, adb

Compose Preview

Kotlin
// Galaxy S20 Ultra · 3-button · ROTATION_0 (captured 2026-09-25)
@Preview(device = "spec:width=1080px,height=2400px,dpi=420,cutout=punch_hole,navigation=buttons")
@Composable
fun S20UltraPreview() {
    // Your screen here
}

Size and density match this capture exactly. Compose Preview draws its own generic system bars and cutout, not One UI's: check layouts against the measured insets above.

Window Size Class

Window
411.43 × 914.29 dp
Width / Height
Compact / Expanded
  • ROTATION_0Compact / Expanded
    411.43 × 914.29 dp
  • ROTATION_90Expanded / Compact
    914.29 × 411.43 dp
  • ROTATION_270Expanded / Compact
    914.29 × 411.43 dp

From WindowMetrics' maximum window in each capture (breakpoints: width 600 / 840 dp, height 480 / 900 dp; Large ≥ 1200 dp). Rotations without a capture are never derived by swapping width and height.

Emulator

Screen from this capture and the official diagonal; other hardware entries are emulator defaults. Import in Device Manager › Create Virtual Device › Import Hardware Profiles.

Shell
# Galaxy S20 Ultra · 3-button · ROTATION_0 (captured 2026-09-25)
adb shell wm size 1080x2400
adb shell wm density 420
adb shell cmd overlay enable-exclusive --category com.android.internal.systemui.navbar.threebutton
adb shell cmd overlay enable-exclusive --category com.android.internal.display.cutout.emulation.hole
adb shell settings put system accelerometer_rotation 0
adb shell settings put system user_rotation 0

# Restore the emulator's defaults
adb shell wm size reset
adb shell wm density reset
adb shell cmd overlay enable-exclusive --category com.android.internal.systemui.navbar.gestural
adb shell cmd overlay disable com.android.internal.display.cutout.emulation.hole
adb shell settings put system user_rotation 0
adb shell settings put system accelerometer_rotation 1

Runs your app at this capture's window size and density in the selected navigation mode and rotation; open your app first, since a portrait-locked launcher keeps the display upright. The cutout is AOSP's generic punch hole and the system bars stay the emulator's own, so the measured insets above are not reproduced.

Official Samsung emulator skins ↗
Android details & sources All insets, test fixture, captures
Reservable on RTL ↗

A live Samsung RTL reservation was opened successfully. Measurement coverage is shown separately for each screen and navigation mode.

Checked 2026-09-25 · Measured selection

System Bars · 3-button

Top
28.19 dp
Bottom
48 dp
Left
0 dp
Right
0 dp

Display Cutout Insets

Top
28.19 dp
Bottom
0 dp
Left
0 dp
Right
0 dp

Status Bars

Top
28.19 dp
Bottom
0 dp
Left
0 dp
Right
0 dp

Navigation Bars

Top
0 dp
Bottom
48 dp
Left
0 dp
Right
0 dp

System Gestures

Top
40.38 dp
Bottom
48 dp
Left
0 dp
Right
0 dp

Mandatory System Gestures

Top
40.38 dp
Bottom
48 dp
Left
0 dp
Right
0 dp

Tappable Element

Top
28.19 dp
Bottom
48 dp
Left
0 dp
Right
0 dp
Test fixture · WindowInsetsCompat

Exact px of this capture for JVM UI tests (Robolectric, Paparazzi, Roborazzi).

Measured On

One UI
5.1
Android
13

Galaxy S20 Ultra · Main · Captured portrait.

Samsung RTL, SM-G988B, build TP1A.220624.014.G988BXXSNHYB1. Portrait rotation 0, 1080×2400 px active window, 420 dpi, font scale 1. Android navigation setting and InsetsProbe classification agree. The 1080×2400 px active window is FHD+ on the 1440×3200 physical panel. The raw cutout bounds are centered near x=720 despite a 1080 px active window, so only the safe inset is rendered; no cutout shape is inferred.

How these values are measured →
SAFE AREA411.43 × 838.1Top left radius, Top right radius, Bottom left radius, Bottom right radius: R 24 dp. Copy recorded measurement.R 24Top inset: 28.19 dp. Copy recorded measurement.28.19Bottom inset: 48 dp. Copy recorded measurement.48Display width: 411.43 dp. Copy recorded measurement.411.43Display height: 914.29 dp. Copy recorded measurement.914.29

Scroll or drag to pan · Pinch to zoom · + / − to zoom · 0 to fit · ? for shortcuts

Keyboard shortcuts

Switch navigation mode
n
Rotate clockwise
r
Rotate counterclockwise
R
Switch dp / px
u
Show frame
f
Show regions
g
Show dimensions
d
Search devices (Enter opens the first match)
⌘K / Ctrl K, /
Zoom in / out
+ / −
Fit to canvas
0
Show this help
?

They never fire while typing. Turn them off if they conflict with a screen reader or speech input.