workaround #15 (crash when using JFXTextFields)

This commit is contained in:
Bixilon 2021-05-08 23:27:02 +02:00
parent 5c8f5050f1
commit 13a44f4ff4
No known key found for this signature in database
GPG Key ID: 5CAD791931B09AC4
4 changed files with 17 additions and 20 deletions

View File

@ -14,8 +14,6 @@
package de.bixilon.minosoft.gui.main.dialogs.login; package de.bixilon.minosoft.gui.main.dialogs.login;
import com.jfoenix.controls.JFXButton; import com.jfoenix.controls.JFXButton;
import com.jfoenix.controls.JFXPasswordField;
import com.jfoenix.controls.JFXTextField;
import de.bixilon.minosoft.Minosoft; import de.bixilon.minosoft.Minosoft;
import de.bixilon.minosoft.data.accounts.Account; import de.bixilon.minosoft.data.accounts.Account;
import de.bixilon.minosoft.data.accounts.MojangAccount; import de.bixilon.minosoft.data.accounts.MojangAccount;
@ -29,6 +27,8 @@ import javafx.beans.value.ObservableValue;
import javafx.event.ActionEvent; import javafx.event.ActionEvent;
import javafx.fxml.Initializable; import javafx.fxml.Initializable;
import javafx.scene.control.Label; import javafx.scene.control.Label;
import javafx.scene.control.PasswordField;
import javafx.scene.control.TextField;
import javafx.scene.input.KeyCode; import javafx.scene.input.KeyCode;
import javafx.scene.layout.HBox; import javafx.scene.layout.HBox;
import javafx.stage.Stage; import javafx.stage.Stage;
@ -40,9 +40,9 @@ public class MojangLoginController implements Initializable {
public HBox hBox; public HBox hBox;
public Label header; public Label header;
public Label emailLabel; public Label emailLabel;
public JFXTextField email; public TextField email;
public Label passwordLabel; public Label passwordLabel;
public JFXPasswordField password; public PasswordField password;
public JFXButton loginButton; public JFXButton loginButton;
public Label errorMessage; public Label errorMessage;

View File

@ -14,7 +14,6 @@
package de.bixilon.minosoft.gui.main.dialogs.login; package de.bixilon.minosoft.gui.main.dialogs.login;
import com.jfoenix.controls.JFXButton; import com.jfoenix.controls.JFXButton;
import com.jfoenix.controls.JFXTextField;
import de.bixilon.minosoft.Minosoft; import de.bixilon.minosoft.Minosoft;
import de.bixilon.minosoft.data.accounts.OfflineAccount; import de.bixilon.minosoft.data.accounts.OfflineAccount;
import de.bixilon.minosoft.data.locale.LocaleManager; import de.bixilon.minosoft.data.locale.LocaleManager;
@ -28,6 +27,7 @@ import javafx.beans.value.ObservableValue;
import javafx.event.ActionEvent; import javafx.event.ActionEvent;
import javafx.fxml.Initializable; import javafx.fxml.Initializable;
import javafx.scene.control.Label; import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.input.KeyCode; import javafx.scene.input.KeyCode;
import javafx.scene.layout.HBox; import javafx.scene.layout.HBox;
import javafx.stage.Stage; import javafx.stage.Stage;
@ -39,9 +39,9 @@ public class OfflineLoginController implements Initializable {
public HBox hBox; public HBox hBox;
public Label header; public Label header;
public Label usernameLabel; public Label usernameLabel;
public JFXTextField username; public TextField username;
public Label uuidLabel; public Label uuidLabel;
public JFXTextField uuid; public TextField uuid;
public JFXButton addButton; public JFXButton addButton;
@Override @Override

View File

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<?import com.jfoenix.controls.JFXButton?> <?import com.jfoenix.controls.JFXButton?>
<?import com.jfoenix.controls.JFXPasswordField?>
<?import com.jfoenix.controls.JFXTextField?>
<?import javafx.geometry.*?> <?import javafx.geometry.*?>
<?import javafx.scene.control.Label?> <?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?> <?import javafx.scene.layout.*?>
<?import javafx.scene.text.Font?> <?import javafx.scene.text.Font?>
<HBox xmlns:fx="http://javafx.com/fxml/1" fx:id="hBox" minHeight="-Infinity" minWidth="-Infinity" prefHeight="300.0" prefWidth="500.0" xmlns="http://javafx.com/javafx/11.0.1" fx:controller="de.bixilon.minosoft.gui.main.dialogs.login.MojangLoginController"> <HBox xmlns:fx="http://javafx.com/fxml/1" fx:id="hBox" minHeight="-Infinity" minWidth="-Infinity" prefHeight="300.0" prefWidth="500.0" xmlns="http://javafx.com/javafx/11.0.1" fx:controller="de.bixilon.minosoft.gui.main.dialogs.login.MojangLoginController">
@ -43,21 +41,21 @@
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/> <Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/>
</GridPane.margin> </GridPane.margin>
</Label> </Label>
<JFXTextField fx:id="email" GridPane.columnIndex="1"> <TextField fx:id="email" GridPane.columnIndex="1">
<GridPane.margin> <GridPane.margin>
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/> <Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/>
</GridPane.margin> </GridPane.margin>
</JFXTextField> </TextField>
<Label fx:id="passwordLabel" text="PASSWORD" GridPane.rowIndex="1"> <Label fx:id="passwordLabel" text="PASSWORD" GridPane.rowIndex="1">
<GridPane.margin> <GridPane.margin>
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/> <Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/>
</GridPane.margin> </GridPane.margin>
</Label> </Label>
<JFXPasswordField fx:id="password" minWidth="-Infinity" GridPane.columnIndex="1" GridPane.hgrow="ALWAYS" GridPane.rowIndex="1" GridPane.vgrow="ALWAYS"> <PasswordField fx:id="password" minWidth="-Infinity" GridPane.columnIndex="1" GridPane.hgrow="ALWAYS" GridPane.rowIndex="1" GridPane.vgrow="ALWAYS">
<GridPane.margin> <GridPane.margin>
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/> <Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/>
</GridPane.margin> </GridPane.margin>
</JFXPasswordField> </PasswordField>
</GridPane> </GridPane>
<JFXButton fx:id="loginButton" disable="true" maxHeight="Infinity" maxWidth="Infinity" mnemonicParsing="false" text="LOGIN" GridPane.rowIndex="3" onAction="#login"> <JFXButton fx:id="loginButton" disable="true" maxHeight="Infinity" maxWidth="Infinity" mnemonicParsing="false" text="LOGIN" GridPane.rowIndex="3" onAction="#login">
<GridPane.margin> <GridPane.margin>

View File

@ -1,9 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<?import com.jfoenix.controls.JFXButton?> <?import com.jfoenix.controls.JFXButton?>
<?import com.jfoenix.controls.JFXTextField?>
<?import javafx.geometry.*?> <?import javafx.geometry.*?>
<?import javafx.scene.control.Label?> <?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?> <?import javafx.scene.layout.*?>
<?import javafx.scene.text.Font?> <?import javafx.scene.text.Font?>
<HBox xmlns:fx="http://javafx.com/fxml/1" fx:id="hBox" minHeight="-Infinity" minWidth="-Infinity" prefHeight="300.0" prefWidth="500.0" xmlns="http://javafx.com/javafx/11.0.1" fx:controller="de.bixilon.minosoft.gui.main.dialogs.login.OfflineLoginController"> <HBox xmlns:fx="http://javafx.com/fxml/1" fx:id="hBox" minHeight="-Infinity" minWidth="-Infinity" prefHeight="300.0" prefWidth="500.0" xmlns="http://javafx.com/javafx/11.0.1" fx:controller="de.bixilon.minosoft.gui.main.dialogs.login.OfflineLoginController">
@ -42,21 +41,21 @@
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/> <Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/>
</GridPane.margin> </GridPane.margin>
</Label> </Label>
<JFXTextField fx:id="username" GridPane.columnIndex="1"> <TextField fx:id="username" GridPane.columnIndex="1">
<GridPane.margin> <GridPane.margin>
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/> <Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/>
</GridPane.margin> </GridPane.margin>
</JFXTextField> </TextField>
<Label fx:id="uuidLabel" text="UUID" GridPane.rowIndex="1"> <Label fx:id="uuidLabel" text="UUID" GridPane.rowIndex="1">
<GridPane.margin> <GridPane.margin>
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/> <Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/>
</GridPane.margin> </GridPane.margin>
</Label> </Label>
<JFXTextField fx:id="uuid" minWidth="-Infinity" GridPane.columnIndex="1" GridPane.hgrow="ALWAYS" GridPane.rowIndex="1" GridPane.vgrow="ALWAYS"> <TextField fx:id="uuid" minWidth="-Infinity" GridPane.columnIndex="1" GridPane.hgrow="ALWAYS" GridPane.rowIndex="1" GridPane.vgrow="ALWAYS">
<GridPane.margin> <GridPane.margin>
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/> <Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/>
</GridPane.margin> </GridPane.margin>
</JFXTextField> </TextField>
</GridPane> </GridPane>
<JFXButton fx:id="addButton" disable="true" maxHeight="Infinity" maxWidth="Infinity" mnemonicParsing="false" text="ADD" GridPane.rowIndex="3" onAction="#add"> <JFXButton fx:id="addButton" disable="true" maxHeight="Infinity" maxWidth="Infinity" mnemonicParsing="false" text="ADD" GridPane.rowIndex="3" onAction="#add">
<GridPane.margin> <GridPane.margin>