From f9be3948ced49d7575fe41a4564be06e683b8a38 Mon Sep 17 00:00:00 2001
From: tobias <thinkdifferent055@gmail.com>
Date: Sat, 9 Feb 2019 21:30:22 +0100
Subject: [PATCH] Style notification bar, update close button touch mode

---
 .../touch/TouchMenuToolbarViewController.java    |  5 +++++
 .../viewcontroller/main/MainViewController.java  |  2 --
 .../style/components/notification-pane.css       | 16 ++++++++++++++++
 .../resources/style/components/radiobutton.css   |  2 +-
 PlayWall/src/main/resources/style/touch.css      | 10 ++++++++++
 .../main/resources/view/main/touch/Header.fxml   |  2 +-
 .../design/ModernGlobalDesignHandlerImpl.scala   |  1 +
 7 files changed, 34 insertions(+), 4 deletions(-)
 create mode 100644 PlayWall/src/main/resources/style/components/notification-pane.css

diff --git a/PlayWall/src/main/java/de/tobias/playpad/layout/touch/TouchMenuToolbarViewController.java b/PlayWall/src/main/java/de/tobias/playpad/layout/touch/TouchMenuToolbarViewController.java
index 8e7b9c45..443713d7 100644
--- a/PlayWall/src/main/java/de/tobias/playpad/layout/touch/TouchMenuToolbarViewController.java
+++ b/PlayWall/src/main/java/de/tobias/playpad/layout/touch/TouchMenuToolbarViewController.java
@@ -22,6 +22,7 @@ import javafx.scene.control.Button;
 import javafx.scene.control.Label;
 import javafx.scene.control.MenuItem;
 import javafx.scene.control.Slider;
+import javafx.scene.layout.StackPane;
 
 public class TouchMenuToolbarViewController extends BasicMenuToolbarViewController {
 
@@ -48,6 +49,10 @@ public class TouchMenuToolbarViewController extends BasicMenuToolbarViewControll
 	public void init() {
 		super.init();
 		volumeSlider.focusedProperty().addListener(i -> mainViewController.getParent().requestFocus());
+
+		StackPane graphic = new StackPane();
+		graphic.getStyleClass().setAll("graphic");
+		closeButton.setGraphic(graphic);
 	}
 
 	@Override
diff --git a/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/main/MainViewController.java b/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/main/MainViewController.java
index 1dc3ef95..b95f7114 100644
--- a/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/main/MainViewController.java
+++ b/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/main/MainViewController.java
@@ -151,8 +151,6 @@ public class MainViewController extends NVC implements IMainViewController, Noti
 		padGridPane.getStyleClass().add("pad-grid");
 
 		notificationPane = new NotificationPane(padGridPane);
-		notificationPane.getStyleClass().add(org.controlsfx.control.NotificationPane.STYLE_CLASS_DARK);
-
 		gridContainer.getChildren().add(notificationPane);
 		setAnchor(notificationPane, 0, 0, 0, 0);
 
diff --git a/PlayWall/src/main/resources/style/components/notification-pane.css b/PlayWall/src/main/resources/style/components/notification-pane.css
new file mode 100644
index 00000000..dc2c70e7
--- /dev/null
+++ b/PlayWall/src/main/resources/style/components/notification-pane.css
@@ -0,0 +1,16 @@
+.notification-pane {
+	-fx-background-color: #282828;
+}
+
+.notification-pane.top .notification-bar > .pane {
+	-fx-effect: none;
+}
+
+.notification-pane .notification-bar > .pane .label {
+	-fx-text-fill: #CCCCCC;
+}
+
+.notification-pane .notification-bar > .pane .close-button:hover {
+	-fx-background-color: #878787;
+	-fx-text-fill: #EEEEEE !important;
+}
\ No newline at end of file
diff --git a/PlayWall/src/main/resources/style/components/radiobutton.css b/PlayWall/src/main/resources/style/components/radiobutton.css
index 57bbbfe5..ab9218e9 100644
--- a/PlayWall/src/main/resources/style/components/radiobutton.css
+++ b/PlayWall/src/main/resources/style/components/radiobutton.css
@@ -10,7 +10,7 @@
 	-fx-background-color: transparent;
 	-fx-background-insets: 0 0 0 0 0, 0;
 	-fx-padding: 0.333333em;
-	-fx-shape: "M-1,0a1,1 0 1,0 2,0a1,1 0 1,0 -2,0";
+	-fx-shape: "M-1,0a1,1 0 1,0 2,0a1,1 0 1,0 -2,0"; /* http://complexdan.com/svg-circleellipse-to-path-converter/ */
 	-fx-scale-x: 1.5;
 	-fx-scale-y: 1.5;
 }
diff --git a/PlayWall/src/main/resources/style/touch.css b/PlayWall/src/main/resources/style/touch.css
index d4bb73ef..2a745726 100644
--- a/PlayWall/src/main/resources/style/touch.css
+++ b/PlayWall/src/main/resources/style/touch.css
@@ -18,4 +18,14 @@
 .slider .thumb {
 	-fx-pref-height: 25px;
 	-fx-pref-width: 25px;
+}
+
+.close-button > .graphic {
+	-fx-background-color: white;
+	-fx-scale-shape: false;
+	-fx-padding: 1;
+
+	-fx-scale-x: 1.8;
+	-fx-scale-y: 1.8;
+	-fx-shape: "M395.992,296.758l1.794-1.794l7.292,7.292l-1.795,1.794 L395.992,296.758z M403.256,294.992l1.794,1.794l-7.292,7.292l-1.794-1.795 L403.256,294.992z";
 }
\ No newline at end of file
diff --git a/PlayWall/src/main/resources/view/main/touch/Header.fxml b/PlayWall/src/main/resources/view/main/touch/Header.fxml
index 09fadd1e..2c9b346a 100644
--- a/PlayWall/src/main/resources/view/main/touch/Header.fxml
+++ b/PlayWall/src/main/resources/view/main/touch/Header.fxml
@@ -35,6 +35,6 @@
                 </Label>
             </children>
         </HBox>
-          <Button fx:id="closeButton" focusTraversable="false" mnemonicParsing="false" onAction="#closeMenuItemHandler" text="X" />
+          <Button fx:id="closeButton" styleClass="close-button" focusTraversable="false" mnemonicParsing="false" onAction="#closeMenuItemHandler" minWidth="60" />
     </children>
 </HBox>
diff --git a/PlayWall/src/main/scala/de/tobias/playpad/design/ModernGlobalDesignHandlerImpl.scala b/PlayWall/src/main/scala/de/tobias/playpad/design/ModernGlobalDesignHandlerImpl.scala
index f9b280df..474a16aa 100644
--- a/PlayWall/src/main/scala/de/tobias/playpad/design/ModernGlobalDesignHandlerImpl.scala
+++ b/PlayWall/src/main/scala/de/tobias/playpad/design/ModernGlobalDesignHandlerImpl.scala
@@ -35,6 +35,7 @@ class ModernGlobalDesignHandlerImpl extends ModernGlobalDesignHandler with Color
 		"style/components/radiobutton.css",
 		"style/components/slider.css",
 		"style/components/tabs.css",
+		"style/components/notification-pane.css",
 		"style/components/menu.css",
 		"style/components/toggle-button.css",
 		"style/components/list.css",
-- 
GitLab