From 916a288461244531b7de474d9be0ad9da56c5855 Mon Sep 17 00:00:00 2001 From: QcMrHyde Date: Mon, 19 May 2025 00:14:26 -0400 Subject: [PATCH] -Fixes CSS when changing theme --- .../sparrow/joinstr/JoinstrController.java | 38 ++++++++++++++----- .../com/sparrowwallet/sparrow/darktheme.css | 6 +++ .../sparrowwallet/sparrow/joinstr/joinstr.css | 12 +++++- .../sparrow/joinstr/joinstr.fxml | 12 +++--- 4 files changed, 51 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/sparrowwallet/sparrow/joinstr/JoinstrController.java b/src/main/java/com/sparrowwallet/sparrow/joinstr/JoinstrController.java index 908ddbd5..9d475e25 100644 --- a/src/main/java/com/sparrowwallet/sparrow/joinstr/JoinstrController.java +++ b/src/main/java/com/sparrowwallet/sparrow/joinstr/JoinstrController.java @@ -1,6 +1,7 @@ package com.sparrowwallet.sparrow.joinstr; - import com.sparrowwallet.sparrow.AppServices; +import com.sparrowwallet.sparrow.Theme; +import com.sparrowwallet.sparrow.io.Config; import java.io.IOException; import java.net.URL; @@ -30,6 +31,9 @@ public class JoinstrController extends JoinstrFormController { @FXML private ToggleGroup joinstrMenu; + public JoinstrController() { + + } public void initializeView() { joinstrMenu.selectedToggleProperty().addListener((observable, oldValue, selectedToggle) -> { @@ -51,7 +55,6 @@ public class JoinstrController extends JoinstrFormController { } try { - if(!existing) { URL url = AppServices.class.getResource("joinstr/" + display.toString().toLowerCase(Locale.ROOT) + ".fxml"); if(url == null) { throw new IllegalStateException("Cannot find joinstr/" + display.toString().toLowerCase(Locale.ROOT) + ".fxml"); @@ -60,15 +63,22 @@ public class JoinstrController extends JoinstrFormController { FXMLLoader displayLoader = new FXMLLoader(url); Node joinstrDisplay = displayLoader.load(); - joinstrDisplay.setUserData(display); - joinstrDisplay.setViewOrder(1); + if(!existing) { - JoinstrFormController controller = displayLoader.getController(); - JoinstrForm joinstrForm = getJoinstrForm(); - controller.setJoinstrForm(joinstrForm); + joinstrDisplay.setUserData(display); + joinstrDisplay.setViewOrder(1); - joinstrPane.getChildren().add(joinstrDisplay); - } + JoinstrFormController controller = displayLoader.getController(); + JoinstrForm joinstrForm = getJoinstrForm(); + controller.setJoinstrForm(joinstrForm); + controller.initializeView(); + + joinstrPane.getChildren().add(joinstrDisplay); + } + else { + JoinstrFormController controller = displayLoader.getController(); + controller.initializeView(); + } } catch (IOException e) { throw new IllegalStateException("Can't find pane", e); } @@ -83,6 +93,16 @@ public class JoinstrController extends JoinstrFormController { joinstrMenuBox.managedProperty().bind(joinstrMenuBox.visibleProperty()); joinstrMenuBox.visibleProperty().bind(getJoinstrForm().lockedProperty().not()); + // Set theme CSS + String darkCss = getClass().getResource("../darktheme.css").toExternalForm(); + if(Config.get().getTheme() == Theme.DARK) { + if(!stage.getScene().getStylesheets().contains(darkCss)) { + stage.getScene().getStylesheets().add(darkCss); + } + } else { + stage.getScene().getStylesheets().remove(darkCss); + } + } public void setStage(Stage stage) { diff --git a/src/main/resources/com/sparrowwallet/sparrow/darktheme.css b/src/main/resources/com/sparrowwallet/sparrow/darktheme.css index bc8b8fa6..eedcdc96 100644 --- a/src/main/resources/com/sparrowwallet/sparrow/darktheme.css +++ b/src/main/resources/com/sparrowwallet/sparrow/darktheme.css @@ -105,6 +105,12 @@ HorizontalHeaderColumn > TableColumnHeader.column-header.table-column{ -fx-background-color: rgb(159, 142, 0); } +.joinstr-balance-container { + -fx-padding:30, 0, 30, 0; + -fx-background-color: #164768; + -fx-text-alignment: center; +} + .status-bar { -fx-background-color: derive(-fx-color,-15%), -fx-body-color; } diff --git a/src/main/resources/com/sparrowwallet/sparrow/joinstr/joinstr.css b/src/main/resources/com/sparrowwallet/sparrow/joinstr/joinstr.css index bb3953fe..fc645387 100644 --- a/src/main/resources/com/sparrowwallet/sparrow/joinstr/joinstr.css +++ b/src/main/resources/com/sparrowwallet/sparrow/joinstr/joinstr.css @@ -7,9 +7,17 @@ -fx-padding:25, 0, 0, 0; } -.balance-container { +.joinstr-balance-label { + -fx-text-fill: white; +} + +.joinstr-balance-label Glyph { + -fx-text-fill: white; +} + +.joinstr-balance-container { -fx-padding:30, 0, 30, 0; - -fx-background-color: #164768; + -fx-background-color: #1A6BA2; -fx-text-alignment: center; } diff --git a/src/main/resources/com/sparrowwallet/sparrow/joinstr/joinstr.fxml b/src/main/resources/com/sparrowwallet/sparrow/joinstr/joinstr.fxml index d8f8d219..00c28f62 100644 --- a/src/main/resources/com/sparrowwallet/sparrow/joinstr/joinstr.fxml +++ b/src/main/resources/com/sparrowwallet/sparrow/joinstr/joinstr.fxml @@ -8,8 +8,8 @@ - + @@ -39,11 +39,11 @@ - - - +