diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/MainPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/MainPage.java index 05d3b69a9..d6687585f 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/MainPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/MainPage.java @@ -29,7 +29,6 @@ import javafx.collections.ObservableList; import javafx.event.EventHandler; import javafx.geometry.Insets; import javafx.geometry.Pos; -import javafx.scene.Cursor; import javafx.scene.Node; import javafx.scene.control.Label; import javafx.scene.image.ImageView; @@ -125,18 +124,16 @@ public final class MainPage extends StackPane implements DecoratorPage { titleBar.getStyleClass().add("title"); titleBar.setLeft(new Label(title)); - Node hideNode = SVG.CLOSE.createIcon(Theme.blackFill(), 20); - hideNode.setCursor(Cursor.HAND); - titleBar.setRight(hideNode); - FXUtils.onClicked(hideNode, () -> { - if (announcementPane != null) { - if (Metadata.isDev()) { - config().getShownTips().put(ANNOUNCEMENT, Metadata.VERSION); - } - - announcementPane.setContent(new StackPane(), ContainerAnimations.FADE); + JFXButton btnHide = new JFXButton(); + btnHide.setOnAction(e -> { + announcementPane.setContent(new StackPane(), ContainerAnimations.FADE); + if (Metadata.isDev()) { + config().getShownTips().put(ANNOUNCEMENT, Metadata.VERSION); } }); + btnHide.getStyleClass().add("announcement-close-button"); + btnHide.setGraphic(SVG.CLOSE.createIcon(Theme.blackFill(), 20)); + titleBar.setRight(btnHide); TextFlow body = FXUtils.segmentToTextFlow(content, Controllers::onHyperlinkAction); body.setLineSpacing(4); diff --git a/HMCL/src/main/resources/assets/css/root.css b/HMCL/src/main/resources/assets/css/root.css index e836437e5..31ca95887 100644 --- a/HMCL/src/main/resources/assets/css/root.css +++ b/HMCL/src/main/resources/assets/css/root.css @@ -1080,6 +1080,23 @@ -jfx-mask-type: CIRCLE; } +.announcement-close-button { + -fx-announcement-close-button-size: 20px; + -fx-pref-width: -fx-announcement-close-button-size; + -fx-max-width: -fx-announcement-close-button-size; + -fx-min-width: -fx-announcement-close-button-size; + -fx-pref-height: -fx-announcement-close-button-size; + -fx-max-height: -fx-announcement-close-button-size; + -fx-min-height: -fx-announcement-close-button-size; + -fx-background-radius: 50px; + -fx-background-color: transparent; +} + +.announcement-close-button .jfx-rippler { + -jfx-rippler-fill: -fx-base-check-color; + -jfx-mask-type: CIRCLE; +} + .transparent { -fx-background-color: null; }