Removed NativeHook From being used in Linux Versions

This commit is contained in:
ChococookieOS 2019-10-20 17:14:52 +02:00
parent fc768ab36f
commit 026832e3f7
14 changed files with 88 additions and 119 deletions

View File

@ -1,18 +1,3 @@
/HelveticaNeue-UltraLight.otf
/LiberationSerif-Regular.ttf
/back.png
/basics/
/edit.png
/guis/
/icon.ico
/icon.png
/lock.png
/main/
/manager/
/mod_quicklaunch/
/plus.png
/save.png
/scenes/
/trash.png
/unsaved.png
/update/
/guis/

View File

@ -17,6 +17,7 @@ import javafx.stage.WindowEvent;
import main.KeyChecker;
import main.ModLoader;
import main.Start;
import manager.OperatingSystem;
import manager.SettingManager;
import scenes.MainScene;
import update.Updater;
@ -36,6 +37,12 @@ public class BasicGuiApp extends Application{
ml.addMods();
ml.initMods();
if(SettingManager.getOperatingSystem() == OperatingSystem.WINDOWS) {
registerNativeHoook();
}
}
private void registerNativeHoook() {
try {
GlobalScreen.registerNativeHook();
} catch (NativeHookException e) {
@ -49,7 +56,6 @@ public class BasicGuiApp extends Application{
GlobalScreen.addNativeKeyListener(listener);
}
public void start(Stage primaryStage) throws Exception {
mainStage = primaryStage;

View File

@ -1,6 +1,5 @@
package guis;
import org.jnativehook.GlobalScreen;
import basics.BasicGuiApp;
@ -11,15 +10,15 @@ import javafx.scene.control.CheckBox;
import javafx.scene.layout.AnchorPane;
import javafx.scene.text.Text;
import main.ShortcutKeyChecker;
import manager.OperatingSystem;
import manager.ResourceManager;
import manager.SettingManager;
public class SettingGui extends AnchorPane{
public class SettingGui extends AnchorPane {
AnchorPane settingPane;
public SettingGui(){
public SettingGui() {
this.setPrefWidth(300);
this.setPrefHeight(185);
this.setStyle("-fx-background-color: rgba(240, 240, 240, 1);");
@ -56,6 +55,7 @@ public class SettingGui extends AnchorPane{
setting3Box.setSelected(SettingManager.isCheckUptdateOnBoot());
/////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////
if (SettingManager.getOperatingSystem() == OperatingSystem.WINDOWS) {
Text setting4 = new Text("QuickLaunch shortcut:");
setting4.setFont(ResourceManager.getFontSmall());
setting4.setLayoutX(10);
@ -64,8 +64,8 @@ public class SettingGui extends AnchorPane{
setting4.prefHeight(30);
final Button setting4button1 = new Button("key1");
if(!(SettingManager.getKey1() == -1)){
setting4button1.setText(SettingManager.getKey1()+"");
if (!(SettingManager.getKey1() == -1)) {
setting4button1.setText(SettingManager.getKey1() + "");
}
setting4button1.setFont(ResourceManager.getFontSmall());
setting4button1.setLayoutX(10);
@ -74,12 +74,11 @@ public class SettingGui extends AnchorPane{
setting4button1.prefHeight(24);
setting4button1.setOnAction(new EventHandler<ActionEvent>() {
public void handle(ActionEvent event) {
ShortcutKeyChecker skc = new ShortcutKeyChecker();
GlobalScreen.removeNativeKeyListener(BasicGuiApp.listener);
GlobalScreen.addNativeKeyListener(skc);
while(skc.lastKey == -1){
while (skc.lastKey == -1) {
try {
Thread.sleep(100);
@ -87,7 +86,7 @@ public class SettingGui extends AnchorPane{
e1.printStackTrace();
}
}
setting4button1.setText(skc.lastKey+"");
setting4button1.setText(skc.lastKey + "");
SettingManager.setKey1(skc.lastKey);
GlobalScreen.removeNativeKeyListener(skc);
GlobalScreen.addNativeKeyListener(BasicGuiApp.listener);
@ -96,8 +95,8 @@ public class SettingGui extends AnchorPane{
});
final Button setting4button2 = new Button("key2");
if(!(SettingManager.getKey2() == -1)){
setting4button2.setText(SettingManager.getKey2()+"");
if (!(SettingManager.getKey2() == -1)) {
setting4button2.setText(SettingManager.getKey2() + "");
}
setting4button2.setFont(ResourceManager.getFontSmall());
setting4button2.setLayoutX(95);
@ -106,24 +105,27 @@ public class SettingGui extends AnchorPane{
setting4button2.prefHeight(24);
setting4button2.setOnAction(new EventHandler<ActionEvent>() {
public void handle(ActionEvent event) {
ShortcutKeyChecker skc = new ShortcutKeyChecker();
GlobalScreen.removeNativeKeyListener(BasicGuiApp.listener);
GlobalScreen.addNativeKeyListener(skc);
while(skc.lastKey == -1){
while (skc.lastKey == -1) {
try {
Thread.sleep(100);
} catch (InterruptedException e1) {
e1.printStackTrace();
}
}
setting4button2.setText(skc.lastKey+"");
setting4button2.setText(skc.lastKey + "");
SettingManager.setKey2(skc.lastKey);
GlobalScreen.removeNativeKeyListener(skc);
GlobalScreen.addNativeKeyListener(BasicGuiApp.listener);
}
});
this.getChildren().add(setting4);
this.getChildren().add(setting4button1);
this.getChildren().add(setting4button2);
}
/////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
@ -135,7 +137,6 @@ public class SettingGui extends AnchorPane{
exit.prefHeight(24);
exit.setOnAction(new EventHandler<ActionEvent>() {
public void handle(ActionEvent event) {
SettingManager.setLoadFileOnBoot(setting1Box.isSelected());
SettingManager.setCheckUptdateOnBoot(setting3Box.isSelected());
@ -145,14 +146,11 @@ public class SettingGui extends AnchorPane{
}
});
this.getChildren().add(setting1);
this.getChildren().add(setting1Box);
this.getChildren().add(setting3);
this.getChildren().add(setting3Box);
this.getChildren().add(setting4);
this.getChildren().add(setting4button1);
this.getChildren().add(setting4button2);
this.getChildren().add(exit);
}

View File

@ -7,7 +7,6 @@ import org.jnativehook.keyboard.NativeKeyListener;
import basics.BasicGuiApp;
import guis.MainGui;
import javafx.application.Platform;
import manager.OperatingSystem;
import manager.SettingManager;
public class KeyChecker implements NativeKeyListener{
@ -31,15 +30,6 @@ public class KeyChecker implements NativeKeyListener{
Platform.runLater(new Runnable() {
public void run() {
if(SettingManager.getOperatingSystem() == OperatingSystem.LINUX) {
BasicGuiApp.mainStage.setIconified(true);
BasicGuiApp.mainStage.setIconified(false);
BasicGuiApp.mainStage.toFront();
BasicGuiApp.mainStage.requestFocus();
MainGui.inputField.requestFocus();
}
else if(SettingManager.getOperatingSystem() == OperatingSystem.WINDOWS) {
BasicGuiApp.mainStage.setAlwaysOnTop(true);
BasicGuiApp.mainStage.setAlwaysOnTop(false);
BasicGuiApp.mainStage.requestFocus();
@ -47,16 +37,6 @@ public class KeyChecker implements NativeKeyListener{
BasicGuiApp.mainStage.setIconified(true);
BasicGuiApp.mainStage.setIconified(false);
}
else if(SettingManager.getOperatingSystem() == OperatingSystem.OSX) {
BasicGuiApp.mainStage.setIconified(true);
BasicGuiApp.mainStage.setIconified(false);
BasicGuiApp.mainStage.toFront();
BasicGuiApp.mainStage.requestFocus();
MainGui.inputField.requestFocus();
}
}
});
}