From 3067d323dee58302f01f8d8eeccf58e414dc223e Mon Sep 17 00:00:00 2001 From: huangyuhui Date: Mon, 26 Feb 2018 20:16:14 +0800 Subject: [PATCH] Fixed NullPointerException when switched profile --- .../main/java/org/jackhuang/hmcl/setting/Settings.java | 4 ++-- HMCL/src/main/java/org/jackhuang/hmcl/ui/MainPage.java | 10 ---------- 2 files changed, 2 insertions(+), 12 deletions(-) diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.java b/HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.java index fa834ff1c..93f8d2cc2 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.java @@ -530,8 +530,8 @@ public class Settings { } private void onProfileChanged() { - getSelectedProfile().getRepository().refreshVersionsAsync().start(); - EventBus.EVENT_BUS.fireEvent(new ProfileChangedEvent(SETTINGS, getSelectedProfile())); + getSelectedProfile().getRepository().refreshVersionsAsync().subscribe(() -> + EventBus.EVENT_BUS.fireEvent(new ProfileChangedEvent(SETTINGS, getSelectedProfile()))); } private void profileNameChanged(ObservableValue observableValue, String oldValue, String newValue) { diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/MainPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/MainPage.java index 4e7311f8b..c2f24ab1b 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/MainPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/MainPage.java @@ -80,8 +80,6 @@ public final class MainPage extends StackPane implements DecoratorPage { FXUtils.loadFXML(this, "/assets/fxml/main.fxml"); EventBus.EVENT_BUS.channel(RefreshedVersionsEvent.class).register(() -> Platform.runLater(this::loadVersions)); - EventBus.EVENT_BUS.channel(ProfileLoadingEvent.class).register(this::onProfilesLoading); - EventBus.EVENT_BUS.channel(ProfileChangedEvent.class).register(this::onProfileChanged); versionPopup = new JFXPopup(versionList); getChildren().remove(versionList); @@ -178,14 +176,6 @@ public final class MainPage extends StackPane implements DecoratorPage { return item; } - public void onProfilesLoading() { - // TODO: Profiles - } - - public void onProfileChanged(ProfileChangedEvent event) { - Platform.runLater(() -> loadVersions(event.getProfile())); - } - private void loadVersions() { loadVersions(Settings.INSTANCE.getSelectedProfile()); }