Fix: login button

Fix: windows fullscreen on and off
This commit is contained in:
2026-06-02 19:41:21 +02:00
parent 11f21fcf78
commit a3cac111ad
2 changed files with 14 additions and 26 deletions
@@ -9,6 +9,7 @@ import javafx.application.Platform;
import javafx.fxml.FXMLLoader;
import javafx.geometry.Rectangle2D;
import javafx.scene.Scene;
import javafx.scene.input.KeyCombination;
import javafx.stage.Screen;
import javafx.stage.Stage;
@@ -62,9 +63,9 @@ public class GUI extends Application implements IView {
leaderboardScene = new Scene(loaderLeaderboard.load());
controllerLeaderboard = loaderLeaderboard.getController();
controllerLeaderboard.setController(controller, () -> {
controllerLogin.updateLoginButton(true);
primaryStage.setScene(loginScene);
controllerLogin.showError("");
primaryStage.setFullScreen(true);
}, loginScene);
@@ -72,13 +73,18 @@ public class GUI extends Application implements IView {
primaryStage.setScene(loginScene);
primaryStage.setFullScreen(true);
Rectangle2D tmp = Screen.getPrimary().getVisualBounds();
primaryStage.setWidth(tmp.getWidth());
primaryStage.setHeight(tmp.getHeight());
primaryStage.setX(tmp.getMinX());
primaryStage.setY(tmp.getMinY());
primaryStage.setResizable(false);
primaryStage.setFullScreenExitHint("");
primaryStage.setFullScreenExitKeyCombination(KeyCombination.NO_MATCH);
primaryStage.fullScreenProperty().addListener((obs, was, isNow) -> {
if (!isNow) Platform.runLater(() -> primaryStage.setFullScreen(true));
});
primaryStage.setTitle("Mesos");
primaryStage.setOnCloseRequest(e -> {
@@ -86,6 +92,7 @@ public class GUI extends Application implements IView {
System.exit(0);
});
primaryStage.show();
Platform.runLater(() -> primaryStage.setFullScreen(true));
}
@@ -100,37 +107,19 @@ public class GUI extends Application implements IView {
public void render() {
Platform.runLater(() -> {
boolean toFull=false;
synchronized (miniModel) {
if (controller.miniModel.currentState.getGameStage() == TOTEM_CHOICE) {
if (primaryStage.getScene()!=leaderboardScene) {
toFull=true;
}
controllerTotem.render();
primaryStage.setScene(totemScene);
} else if (controller.miniModel.currentState.getGameStage() == ENDED) {
if (primaryStage.getScene()!=leaderboardScene) {
toFull=true;
}
controllerLeaderboard.render();
primaryStage.setScene(leaderboardScene);
} else {
if (primaryStage.getScene()!=mainScene) {
toFull=true;
}
//double w = primaryStage.getWidth();
//double h = primaryStage.getHeight();
primaryStage.setScene(mainScene);
controllerMain.render();
}
if (toFull) {
primaryStage.setFullScreen(true);
}
}
});
}
@Override
public void showMessage(String message) {
@@ -143,7 +132,6 @@ public class GUI extends Application implements IView {
if (error == ErrorType.SERVER_CRASHED) {
primaryStage.setScene(loginScene);
controllerLogin.showError(error);
primaryStage.setFullScreen(true);
} else {
synchronized (miniModel) {
controllerMain.isError = true;
@@ -112,7 +112,7 @@ public class LoginFXMLController {
}).start();
}
private void updateLoginButton(boolean enabled) {
public void updateLoginButton(boolean enabled) {
btnAccedi.setDisable(!enabled);
btnAccedi.setStyle(
"-fx-font-family: 'Cinzel'; -fx-font-size: 12; -fx-font-weight: bold;" +