Issue
I have weird corners in Tab headers. This is my Java code:
public class JavaFxTest1 extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) {
var tabPane = new TabPane();
VBox.setVgrow(tabPane, Priority.ALWAYS);
primaryStage.setTitle("Hello World!");
Button button = new Button();
button.setText("NewTab");
button.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
Tab tab = new Tab("New tab");
var content = new VBox();
tab.setContent(content);
var splitPane = new SplitPane();
VBox.setVgrow(splitPane, Priority.ALWAYS);
content.getChildren().add(splitPane);
splitPane.getItems().addAll(new TextArea("One two three"), new TextArea("One two three"));
tabPane.getTabs().add(tab);
}
});
VBox root = new VBox();
root.getChildren().addAll(tabPane, button);
var css= this.getClass().getResource("test1.css").toExternalForm();
var scene = new Scene(root, 800, 600);
scene.getStylesheets().add(css);
primaryStage.setScene(scene);
primaryStage.show();
}
}
This is CSS code:
.tab-pane > .tab-header-area > .headers-region > .tab > .tab-container > .tab-label {
-fx-alignment: center;
-fx-text-fill: -fx-text-base-color;
-fx-padding:0 10 0 0;
-fx-font-size: 15px;
}
.tab-header-area .tab {
-fx-padding:4 10 5 10;
-fx-border-radius: 10 10 0 0;
-fx-background-radius: 10 10 0 0;
}
This is result in Linux (19-ea+3 for linux, JDK: openjdk version "14.0.2" 2020-07-1, OS: Ubuntu 20.04.3 LTS):
It also doesn't work in Windows (Win7, java 18, JavaFX: 19-ea+3):
Solution
This is a bug that was replicated by JavaFX team. Issue is here
Answered By - Pavel_K
Answer Checked By - Marie Seifert (JavaFixing Admin)