> Implementation of [viewport characteristics media > features](https://www.w3.org/TR/mediaqueries-5/#mf-viewport-characteristics): > * `width` > * `height` > * `aspect-ratio`: width / height > * `orientation`: `portrait`, `landscape` > * `display-mode`: `fullscreen`, `standalone` (note: `browser` and > `minimal-ui` are not supported in JavaFX) > > Here's a small example how the new media features can be used: > > @Override > public void start(Stage stage) { > var button = new Button("Toggle full-screen"); > button.setOnAction(_ -> stage.setFullScreen(!stage.isFullScreen())); > var label = new Label(); > var root = new BorderPane(button, null, null, label, null); > var scene = new Scene(root, 650, 200); > BorderPane.setAlignment(label, Pos.CENTER); > label.textProperty().bind(scene.widthProperty().map(v -> > String.format("Width: %.2f", v.doubleValue()))); > scene.getStylesheets().add("data:text/css;base64," + > Base64.getEncoder().encodeToString(""" > @media (max-width: 500) { > .button { > -fx-background-color: red; > } > } > > @media (600 < width <= 700) { > .button { > -fx-background-color: green; > } > } > > @media (min-width: 800) { > .button { > -fx-background-color: yellow; > } > } > > @media (display-mode: fullscreen) { > .button { > -fx-background-color: black !important; > } > } > """.getBytes(StandardCharsets.UTF_8))); > > stage.initStyle(StageStyle.DECORATED); > stage.setScene(scene); > stage.show(); > }
Michael Strauß has updated the pull request incrementally with one additional commit since the last revision: use CssParser.size() to parse sizes ------------- Changes: - all: https://git.openjdk.org/jfx/pull/1844/files - new: https://git.openjdk.org/jfx/pull/1844/files/98a014f5..0edf4392 Webrevs: - full: https://webrevs.openjdk.org/?repo=jfx&pr=1844&range=12 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=1844&range=11-12 Stats: 187 lines in 6 files changed: 100 ins; 46 del; 41 mod Patch: https://git.openjdk.org/jfx/pull/1844.diff Fetch: git fetch https://git.openjdk.org/jfx.git pull/1844/head:pull/1844 PR: https://git.openjdk.org/jfx/pull/1844
