diff --git a/PlayWall/assets/de/tobias/playpad/assets/lang/ui_de.properties b/PlayWall/assets/de/tobias/playpad/assets/lang/ui_de.properties index 43587b86cfd54a3da7381c623befbe127bc3045c..d573391ffafc231652c9d9de90b2d7842c4546a6 100644 --- a/PlayWall/assets/de/tobias/playpad/assets/lang/ui_de.properties +++ b/PlayWall/assets/de/tobias/playpad/assets/lang/ui_de.properties @@ -26,7 +26,8 @@ main.menuitem.projectSettings=Projekteinstellungen... main.menuitem.profileSettings=Profileinstellungen... main.menuitem.globalSettings=Globale Einstellungen... main.menuitem.about=\u00DCber Play Wall... -main.menuitem.website=Webseite besuchen... +main.menuitem.changelog=Changelog anzeigen... +main.menuitem.website=Webseite anzeigen... main.menuitem.senderror=Fehler senden... main.menuitem.fullScreen=Vollbild main.menuitem.searchPad=Kachel suchen... diff --git a/PlayWall/assets/de/tobias/playpad/assets/view/main/desktop/header.fxml b/PlayWall/assets/de/tobias/playpad/assets/view/main/desktop/header.fxml index d80d50eb1cb08fc1ca50320c4ec9d8af4d072b84..d850bd408cf7973973d44e069ca3194f817a4e2b 100644 --- a/PlayWall/assets/de/tobias/playpad/assets/view/main/desktop/header.fxml +++ b/PlayWall/assets/de/tobias/playpad/assets/view/main/desktop/header.fxml @@ -1,12 +1,19 @@ <?xml version="1.0" encoding="UTF-8"?> -<?import java.lang.*?> -<?import javafx.scene.control.*?> -<?import javafx.scene.layout.*?> -<?import javafx.scene.input.*?> -<?import javafx.scene.text.*?> +<?import javafx.scene.control.CheckMenuItem?> +<?import javafx.scene.control.Label?> +<?import javafx.scene.control.Menu?> +<?import javafx.scene.control.MenuBar?> +<?import javafx.scene.control.MenuItem?> +<?import javafx.scene.control.SeparatorMenuItem?> +<?import javafx.scene.control.Slider?> +<?import javafx.scene.control.ToolBar?> +<?import javafx.scene.input.KeyCodeCombination?> +<?import javafx.scene.layout.HBox?> +<?import javafx.scene.layout.VBox?> +<?import javafx.scene.text.Font?> -<VBox maxHeight="-Infinity" maxWidth="1.7976931348623157E308" minHeight="-Infinity" minWidth="-Infinity" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> +<VBox maxHeight="-Infinity" maxWidth="1.7976931348623157E308" minHeight="-Infinity" minWidth="-Infinity" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> <children> <MenuBar fx:id="menuBar" prefHeight="29.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <menus> @@ -101,6 +108,7 @@ <Menu fx:id="infoMenu" mnemonicParsing="false" text="%main.menu.info"> <items> <MenuItem mnemonicParsing="false" onAction="#aboutMenuHandler" text="%main.menuitem.about" /> + <MenuItem mnemonicParsing="false" onAction="#showChangelogMenuHandler" text="%main.menuitem.changelog" /> <MenuItem mnemonicParsing="false" onAction="#visiteWebsiteMenuHandler" text="%main.menuitem.website" /> <MenuItem mnemonicParsing="false" onAction="#sendErrorMenuItem" text="%main.menuitem.senderror" /> </items> diff --git a/PlayWall/src/application.yml b/PlayWall/src/application.yml index 613c4dfbce1d868b81c116072eddc870d657586a..79235732457a40036f66f1dd7a2d819945562d3c 100644 --- a/PlayWall/src/application.yml +++ b/PlayWall/src/application.yml @@ -13,5 +13,5 @@ userInfo: PluginsURL: Stable: http://tobisan.no-ip.org/files/PlayWall/stable/plugins.yml Beta: http://tobisan.no-ip.org/files/PlayWall/beta/plugins.yml - ChangelogURL: http://tobisan.no-ip.org/whatsnew-2.php?id=1 + ChangelogURL: http://s522730663.online.de/programmer/roadmap/php/index.php?id=1 UpdaterProgram: http://tobisan.no-ip.org/files/Updater/ diff --git a/PlayWall/src/de/tobias/playpad/PlayPadMain.java b/PlayWall/src/de/tobias/playpad/PlayPadMain.java index 74677209d33c79813f5381ee43c0c24fd488df3f..9bf18ed55936092dd52c8c8eff71104ce6334e1b 100644 --- a/PlayWall/src/de/tobias/playpad/PlayPadMain.java +++ b/PlayWall/src/de/tobias/playpad/PlayPadMain.java @@ -1,14 +1,5 @@ package de.tobias.playpad; -import java.io.IOException; -import java.net.MalformedURLException; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.Locale; -import java.util.Optional; -import java.util.ResourceBundle; -import java.util.UUID; - import de.tobias.playpad.profile.ref.ProfileReferences; import de.tobias.playpad.project.Project; import de.tobias.playpad.project.ref.ProjectReferences; @@ -17,7 +8,6 @@ import de.tobias.playpad.update.PlayPadUpdater; import de.tobias.playpad.update.Updates; import de.tobias.playpad.viewcontroller.LaunchDialog; import de.tobias.playpad.viewcontroller.dialog.AutoUpdateDialog; -import de.tobias.playpad.viewcontroller.dialog.ChangelogDialog; import de.tobias.updater.client.UpdateRegistery; import de.tobias.utils.application.App; import de.tobias.utils.application.ApplicationUtils; @@ -36,6 +26,15 @@ import javafx.scene.image.Image; import javafx.stage.Stage; import javafx.stage.Window; +import java.io.IOException; +import java.net.MalformedURLException; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Locale; +import java.util.Optional; +import java.util.ResourceBundle; +import java.util.UUID; + /* * TODOS */ @@ -143,9 +142,6 @@ public class PlayPadMain extends Application implements LocalizationDelegate { ProfileReferences.loadProfiles(); ProjectReferences.loadProjects(); - // Changelog nach Update anzeigen - ViewController.create(ChangelogDialog.class); - // Auto Open Project if (getParameters().getRaw().size() > 0) { if (getParameters().getNamed().containsKey("project")) { @@ -156,8 +152,8 @@ public class PlayPadMain extends Application implements LocalizationDelegate { } } - // Zeigt Launch Stage - ViewController.create(LaunchDialog.class, stage); + // Show Launch Stage + new LaunchDialog(stage); // Check Updates checkUpdates(impl.globalSettings, stage); diff --git a/PlayWall/src/de/tobias/playpad/layout/desktop/DesktopMenuToolbarViewController.java b/PlayWall/src/de/tobias/playpad/layout/desktop/DesktopMenuToolbarViewController.java index 3e30bf3c3b0c32d19a13bea2840d4f38580abbe1..aecc02ae441ccc9e753f69ff449e65f78076bed0 100644 --- a/PlayWall/src/de/tobias/playpad/layout/desktop/DesktopMenuToolbarViewController.java +++ b/PlayWall/src/de/tobias/playpad/layout/desktop/DesktopMenuToolbarViewController.java @@ -699,6 +699,16 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro } } + @FXML + void showChangelogMenuHandler(ActionEvent event) { + String website = ApplicationUtils.getApplication().getInfo().getUserInfo().getString(AppUserInfoStrings.CHANGELOG_URL); + try { + Desktop.getDesktop().browse(new URI(website)); + } catch (IOException | URISyntaxException e) { + e.printStackTrace(); + } + } + @FXML void visiteWebsiteMenuHandler(ActionEvent event) { String website = ApplicationUtils.getApplication().getInfo().getUserInfo().getString(AppUserInfoStrings.WEBSITE); diff --git a/PlayWall/src/de/tobias/playpad/viewcontroller/dialog/ChangelogDialog.java b/PlayWall/src/de/tobias/playpad/viewcontroller/dialog/ChangelogDialog.java deleted file mode 100644 index 742c07fd81d1ea48256bce922099c0a4502ece2a..0000000000000000000000000000000000000000 --- a/PlayWall/src/de/tobias/playpad/viewcontroller/dialog/ChangelogDialog.java +++ /dev/null @@ -1,66 +0,0 @@ -package de.tobias.playpad.viewcontroller.dialog; - -import de.tobias.playpad.AppUserInfoStrings; -import de.tobias.playpad.PlayPadMain; -import de.tobias.playpad.Strings; -import de.tobias.utils.application.ApplicationUtils; -import de.tobias.utils.ui.ViewController; -import de.tobias.utils.util.Localization; -import javafx.concurrent.Worker.State; -import javafx.fxml.FXML; -import javafx.scene.web.WebView; -import javafx.stage.Stage; -import netscape.javascript.JSObject; - -public class ChangelogDialog extends ViewController { - - @FXML private WebView contentView; - private JSBridge bridge; - - public ChangelogDialog() { - super("changelogDialog", "de/tobias/playpad/assets/dialog/", null, PlayPadMain.getUiResourceBundle()); - - if (ApplicationUtils.getApplication().isUpdated()) { - bridge = new JSBridge(); - - contentView.getEngine().getLoadWorker().stateProperty().addListener((ov, oldState, newState) -> - { - if (newState == State.SUCCEEDED) { - JSObject window = (JSObject) contentView.getEngine().executeScript("window"); - window.setMember("app", bridge); - getStage().show(); - } - }); - - String url = ApplicationUtils.getApplication().getInfo().getUserInfo().getString(AppUserInfoStrings.CHANGELOG_URL) + "&version=" - + ApplicationUtils.getApplication().getOldVersionNumber(); - contentView.getEngine().load(url); - getStage().show(); - } - } - - @Override - public void init() { - addCloseKeyShortcut(() -> getStage().close()); - } - - @Override - public void initStage(Stage stage) { - PlayPadMain.stageIcon.ifPresent(stage.getIcons()::add); - - stage.setWidth(500); - stage.setMinWidth(500); - stage.setMaxWidth(500); - - stage.setMinHeight(700); - stage.setTitle(Localization.getString(Strings.UI_Window_Changelog_Title)); - stage.setAlwaysOnTop(true); - } - - public class JSBridge { - - public void close() { - getStage().close(); - } - } -}