From 7f4c5fc4a090bb480f7d9d8acb676b880c30f056 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BE=9E=E5=BA=90?= <109708109+CiiLu@users.noreply.github.com> Date: Sun, 28 Sep 2025 00:01:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B8=85=E7=90=86=E4=BB=A3=E7=A0=81=20(#4519)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hmcl/game/HMCLModpackProvider.java | 2 +- .../java/org/jackhuang/hmcl/ui/FXUtils.java | 1 - .../org/jackhuang/hmcl/ui/ListPageSkin.java | 4 +--- .../hmcl/ui/construct/RipplerContainer.java | 2 +- .../jackhuang/hmcl/ui/construct/TabHeader.java | 10 +++++----- .../hmcl/ui/download/ModpackPage.java | 3 +-- .../jackhuang/hmcl/ui/main/SettingsView.java | 6 ++---- .../jackhuang/hmcl/ui/nbt/NBTEditorPage.java | 9 +++------ .../hmcl/ui/versions/VersionSettingsPage.java | 6 ++---- .../java/org/jackhuang/hmcl/auth/OAuth.java | 8 ++++---- .../hmcl/auth/microsoft/MicrosoftService.java | 18 +++++++++--------- .../hmcl/auth/yggdrasil/YggdrasilService.java | 4 ++-- .../cleanroom/CleanroomVersionList.java | 2 +- config/checkstyle/checkstyle.xml | 2 +- 14 files changed, 33 insertions(+), 44 deletions(-) diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/game/HMCLModpackProvider.java b/HMCL/src/main/java/org/jackhuang/hmcl/game/HMCLModpackProvider.java index 9a6d0007f..cec33afcc 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/game/HMCLModpackProvider.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/game/HMCLModpackProvider.java @@ -77,7 +77,7 @@ public final class HMCLModpackProvider implements ModpackProvider { return manifest; } - private static class HMCLModpack extends Modpack { + private final static class HMCLModpack extends Modpack { @Override public Task getInstallTask(DefaultDependencyManager dependencyManager, Path zipFile, String name) { return new HMCLModpackInstallTask(((HMCLGameRepository) dependencyManager.getGameRepository()).getProfile(), zipFile, this, name); diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/FXUtils.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/FXUtils.java index 019e403be..84cfaf1b7 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/FXUtils.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/FXUtils.java @@ -1215,7 +1215,6 @@ public final class FXUtils { public static JFXButton newBorderButton(String text) { JFXButton button = new JFXButton(text); button.getStyleClass().add("jfx-button-border"); - button.setButtonType(JFXButton.ButtonType.RAISED); return button; } diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/ListPageSkin.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/ListPageSkin.java index 5daa81c67..1927b3172 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/ListPageSkin.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/ListPageSkin.java @@ -64,11 +64,9 @@ public class ListPageSkin extends SkinBase> { vBox.setAlignment(Pos.BOTTOM_RIGHT); vBox.setPickOnBounds(false); - JFXButton btnAdd = new JFXButton(); + JFXButton btnAdd = FXUtils.newRaisedButton(""); FXUtils.setLimitWidth(btnAdd, 40); FXUtils.setLimitHeight(btnAdd, 40); - btnAdd.getStyleClass().add("jfx-button-raised-round"); - btnAdd.setButtonType(JFXButton.ButtonType.RAISED); btnAdd.setGraphic(SVG.ADD.createIcon(Theme.whiteFill(), -1)); btnAdd.setOnAction(e -> skinnable.add()); diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/construct/RipplerContainer.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/construct/RipplerContainer.java index 6fc7f78ad..940fea3ac 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/construct/RipplerContainer.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/construct/RipplerContainer.java @@ -191,7 +191,7 @@ public class RipplerContainer extends StackPane { return StyleableProperties.FACTORY.getCssMetaData(); } - private static class StyleableProperties { + private final static class StyleableProperties { private static final StyleablePropertyFactory FACTORY = new StyleablePropertyFactory<>(StackPane.getClassCssMetaData()); private static final CssMetaData RIPPLER_FILL = FACTORY.createPaintCssMetaData("-jfx-rippler-fill", s -> s.ripplerFill, Color.rgb(0, 200, 255)); diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/construct/TabHeader.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/construct/TabHeader.java index c91ac1c82..365d787fc 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/construct/TabHeader.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/construct/TabHeader.java @@ -225,7 +225,7 @@ public class TabHeader extends Control implements TabControl, PageAware { } } - private class HeadersRegion extends StackPane { + private final class HeadersRegion extends StackPane { private SideAction action; private final ObjectProperty side = new SimpleObjectProperty() { @Override @@ -379,7 +379,7 @@ public class TabHeader extends Control implements TabControl, PageAware { } } - private class Top extends Horizontal { + private final class Top extends Horizontal { @Override public void layoutChildren() { super.layoutChildren(); @@ -404,7 +404,7 @@ public class TabHeader extends Control implements TabControl, PageAware { } } - private class Bottom extends Horizontal { + private final class Bottom extends Horizontal { @Override public void layoutChildren() { super.layoutChildren(); @@ -519,7 +519,7 @@ public class TabHeader extends Control implements TabControl, PageAware { } } - private class Left extends Vertical { + private final class Left extends Vertical { @Override public void layoutChildren() { super.layoutChildren(); @@ -543,7 +543,7 @@ public class TabHeader extends Control implements TabControl, PageAware { } } - private class Right extends Vertical { + private final class Right extends Vertical { @Override public void layoutChildren() { super.layoutChildren(); diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/ModpackPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/ModpackPage.java index c69db9f6c..192e6bc83 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/ModpackPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/ModpackPage.java @@ -82,8 +82,7 @@ public abstract class ModpackPage extends SpinnerPane implements WizardPage { BorderPane descriptionPane = new BorderPane(); { - btnDescription = new JFXButton(i18n("modpack.description")); - btnDescription.getStyleClass().add("jfx-button-border"); + btnDescription = FXUtils.newBorderButton(i18n("modpack.description")); btnDescription.setOnAction(e -> onDescribe()); descriptionPane.setLeft(btnDescription); diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/SettingsView.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/SettingsView.java index eaf3e1900..d64abed46 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/SettingsView.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/SettingsView.java @@ -162,9 +162,8 @@ public abstract class SettingsView extends StackPane { )); { - JFXButton cleanButton = new JFXButton(i18n("launcher.cache_directory.clean")); + JFXButton cleanButton = FXUtils.newBorderButton(i18n("launcher.cache_directory.clean")); cleanButton.setOnAction(e -> clearCacheDirectory()); - cleanButton.getStyleClass().add("jfx-button-border"); fileCommonLocationSublist.setHeaderRight(cleanButton); } @@ -216,9 +215,8 @@ public abstract class SettingsView extends StackPane { if (LOG.getLogFile() == null) openLogFolderButton.setDisable(true); - JFXButton logButton = new JFXButton(i18n("settings.launcher.launcher_log.export")); + JFXButton logButton = FXUtils.newBorderButton(i18n("settings.launcher.launcher_log.export")); logButton.setOnAction(e -> onExportLogs()); - logButton.getStyleClass().add("jfx-button-border"); HBox buttonBox = new HBox(); buttonBox.setSpacing(10); diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/nbt/NBTEditorPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/nbt/NBTEditorPage.java index c44a75c4e..3632aa741 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/nbt/NBTEditorPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/nbt/NBTEditorPage.java @@ -27,6 +27,7 @@ import javafx.scene.layout.HBox; import org.jackhuang.hmcl.task.Schedulers; import org.jackhuang.hmcl.task.Task; import org.jackhuang.hmcl.ui.Controllers; +import org.jackhuang.hmcl.ui.FXUtils; import org.jackhuang.hmcl.ui.construct.MessageDialogPane; import org.jackhuang.hmcl.ui.construct.PageCloseEvent; import org.jackhuang.hmcl.ui.construct.SpinnerPane; @@ -68,9 +69,7 @@ public final class NBTEditorPage extends SpinnerPane implements DecoratorPage { actions.setPadding(new Insets(8)); actions.setAlignment(Pos.CENTER_RIGHT); - JFXButton saveButton = new JFXButton(i18n("button.save")); - saveButton.getStyleClass().add("jfx-button-raised"); - saveButton.setButtonType(JFXButton.ButtonType.RAISED); + JFXButton saveButton = FXUtils.newRaisedButton(i18n("button.save")); saveButton.setOnAction(e -> { try { save(); @@ -80,9 +79,7 @@ public final class NBTEditorPage extends SpinnerPane implements DecoratorPage { } }); - JFXButton cancelButton = new JFXButton(i18n("button.cancel")); - cancelButton.getStyleClass().add("jfx-button-raised"); - cancelButton.setButtonType(JFXButton.ButtonType.RAISED); + JFXButton cancelButton = FXUtils.newRaisedButton(i18n("button.cancel")); cancelButton.setOnAction(e -> fireEvent(new PageCloseEvent())); onEscPressed(this, cancelButton::fire); diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionSettingsPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionSettingsPage.java index ff86e1fe1..bcb9aac5e 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionSettingsPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionSettingsPage.java @@ -198,7 +198,7 @@ public final class VersionSettingsPage extends StackPane implements DecoratorPag copyGlobalPane.setLeft(label); BorderPane.setAlignment(label, Pos.CENTER_LEFT); - JFXButton copyAll = new JFXButton(i18n("settings.game.copy_global.copy_all")); + JFXButton copyAll = FXUtils.newBorderButton(i18n("settings.game.copy_global.copy_all")); copyAll.disableProperty().bind(modpack); copyGlobalPane.setRight(copyAll); copyAll.setOnAction(e -> Controllers.confirm(i18n("settings.game.copy_global.copy_all.confirm"), null, () -> { @@ -209,7 +209,6 @@ public final class VersionSettingsPage extends StackPane implements DecoratorPag PropertyUtils.copyProperties(profile.getGlobal(), lastVersionSetting, name -> !ignored.contains(name)); }, null)); - copyAll.getStyleClass().add("jfx-button-border"); BorderPane.setAlignment(copyAll, Pos.CENTER_RIGHT); } @@ -456,7 +455,7 @@ public final class VersionSettingsPage extends StackPane implements DecoratorPag showAdvancedSettingPane.setLeft(label); BorderPane.setAlignment(label, Pos.CENTER_LEFT); - JFXButton button = new JFXButton(i18n("settings.advanced.modify")); + JFXButton button = FXUtils.newBorderButton(i18n("settings.advanced.modify")); button.setOnAction(e -> { if (lastVersionSetting != null) { if (advancedVersionSettingPage == null) @@ -465,7 +464,6 @@ public final class VersionSettingsPage extends StackPane implements DecoratorPag Controllers.navigate(advancedVersionSettingPage); } }); - button.getStyleClass().add("jfx-button-border"); showAdvancedSettingPane.setRight(button); } diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/OAuth.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/OAuth.java index c71b02216..9614de6f5 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/OAuth.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/OAuth.java @@ -271,7 +271,7 @@ public class OAuth { } } - private static class DeviceTokenResponse extends ErrorResponse { + private final static class DeviceTokenResponse extends ErrorResponse { @SerializedName("user_code") public String userCode; @@ -291,7 +291,7 @@ public class OAuth { public int interval; } - private static class TokenResponse extends ErrorResponse { + private final static class TokenResponse extends ErrorResponse { @SerializedName("token_type") public String tokenType; @@ -329,7 +329,7 @@ public class OAuth { * redirect URI used to obtain the authorization * code.","correlation_id":"??????"} */ - public static class AuthorizationResponse extends ErrorResponse { + public final static class AuthorizationResponse extends ErrorResponse { @SerializedName("token_type") public String tokenType; @@ -352,7 +352,7 @@ public class OAuth { public String foci; } - private static class RefreshResponse extends ErrorResponse { + private final static class RefreshResponse extends ErrorResponse { @SerializedName("expires_in") int expiresIn; diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/microsoft/MicrosoftService.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/microsoft/MicrosoftService.java index b2b4b5148..54b5fe765 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/microsoft/MicrosoftService.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/microsoft/MicrosoftService.java @@ -321,16 +321,16 @@ public class MicrosoftService { public static final long ADD_FAMILY = 2148916238L; } - public static class XBox400Exception extends AuthenticationException { + public final static class XBox400Exception extends AuthenticationException { } - public static class NoMinecraftJavaEditionProfileException extends AuthenticationException { + public final static class NoMinecraftJavaEditionProfileException extends AuthenticationException { } - public static class NoXuiException extends AuthenticationException { + public final static class NoXuiException extends AuthenticationException { } - private static class XBoxLiveAuthenticationResponseDisplayClaims { + private final static class XBoxLiveAuthenticationResponseDisplayClaims { List> xui; } @@ -356,7 +356,7 @@ public class MicrosoftService { * XErr Candidates: 2148916233 = missing XBox account 2148916238 = child account * not linked to a family */ - private static class XBoxLiveAuthenticationResponse extends MicrosoftErrorResponse { + private final static class XBoxLiveAuthenticationResponse extends MicrosoftErrorResponse { @SerializedName("IssueInstant") String issueInstant; @@ -370,7 +370,7 @@ public class MicrosoftService { XBoxLiveAuthenticationResponseDisplayClaims displayClaims; } - private static class MinecraftLoginWithXBoxResponse { + private final static class MinecraftLoginWithXBoxResponse { @SerializedName("username") String username; @@ -387,14 +387,14 @@ public class MicrosoftService { int expiresIn; } - private static class MinecraftStoreResponseItem { + private final static class MinecraftStoreResponseItem { @SerializedName("name") String name; @SerializedName("signature") String signature; } - private static class MinecraftStoreResponse extends MinecraftErrorResponse { + private final static class MinecraftStoreResponse extends MinecraftErrorResponse { @SerializedName("items") List items; @@ -405,7 +405,7 @@ public class MicrosoftService { String keyId; } - public static class MinecraftProfileResponseSkin implements Validation { + public final static class MinecraftProfileResponseSkin implements Validation { public String id; public String state; public String url; diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilService.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilService.java index 5e73f748c..edbad40a8 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilService.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilService.java @@ -246,11 +246,11 @@ public class YggdrasilService { } } - private static class TextureResponse { + private final static class TextureResponse { public Map textures; } - private static class AuthenticationResponse extends ErrorResponse { + private final static class AuthenticationResponse extends ErrorResponse { public String accessToken; public String clientToken; public GameProfile selectedProfile; diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/cleanroom/CleanroomVersionList.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/cleanroom/CleanroomVersionList.java index 34b2a62e3..cb5fc5c39 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/cleanroom/CleanroomVersionList.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/cleanroom/CleanroomVersionList.java @@ -62,7 +62,7 @@ public final class CleanroomVersionList extends VersionList - +