diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/RootPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/RootPage.java index 16c2f940d..169bea429 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/RootPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/main/RootPage.java @@ -177,7 +177,10 @@ public class RootPage extends DecoratorAnimatedPage implements DecoratorPage { downloadItem.setLeftGraphic(wrap(SVG.DOWNLOAD)); downloadItem.setActionButtonVisible(false); downloadItem.setTitle(i18n("download")); - downloadItem.setOnAction(e -> Controllers.navigate(Controllers.getDownloadPage())); + downloadItem.setOnAction(e -> { + Controllers.getDownloadPage().showGameDownloads(); + Controllers.navigate(Controllers.getDownloadPage()); + }); FXUtils.installFastTooltip(downloadItem, i18n("download.hint")); if (AnimationUtils.isAnimationEnabled()) { FXUtils.prepareOnMouseEnter(downloadItem, Controllers::prepareDownloadPage); @@ -188,7 +191,10 @@ public class RootPage extends DecoratorAnimatedPage implements DecoratorPage { launcherSettingsItem.setLeftGraphic(wrap(SVG.SETTINGS)); launcherSettingsItem.setActionButtonVisible(false); launcherSettingsItem.setTitle(i18n("settings")); - launcherSettingsItem.setOnAction(e -> Controllers.navigate(Controllers.getSettingsPage())); + launcherSettingsItem.setOnAction(e -> { + Controllers.getSettingsPage().showGameSettings(Profiles.getSelectedProfile()); + Controllers.navigate(Controllers.getSettingsPage()); + }); if (AnimationUtils.isAnimationEnabled()) { FXUtils.prepareOnMouseEnter(launcherSettingsItem, Controllers::prepareSettingsPage); } diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionPage.java index 7162cf6ab..276df89c5 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionPage.java @@ -105,6 +105,10 @@ public class VersionPage extends DecoratorAnimatedPage implements DecoratorPage }; } + public void showInstanceSettings() { + tab.select(versionSettingsTab, false); + } + public void setVersion(String version, Profile profile) { this.version.set(new Profile.ProfileVersion(profile, version)); } diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/Versions.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/Versions.java index 2f94cec84..50656aef2 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/Versions.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/Versions.java @@ -287,6 +287,7 @@ public final class Versions { public static void modifyGameSettings(Profile profile, String version) { Controllers.getVersionPage().setVersion(version, profile); + Controllers.getVersionPage().showInstanceSettings(); // VersionPage.loadVersion will be invoked after navigation Controllers.navigate(Controllers.getVersionPage()); }