aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/gtPlusPlus/core')
-rw-r--r--src/Java/gtPlusPlus/core/util/sys/KeyboardUtils.java34
1 files changed, 25 insertions, 9 deletions
diff --git a/src/Java/gtPlusPlus/core/util/sys/KeyboardUtils.java b/src/Java/gtPlusPlus/core/util/sys/KeyboardUtils.java
index ba834e345e..ea87677ee2 100644
--- a/src/Java/gtPlusPlus/core/util/sys/KeyboardUtils.java
+++ b/src/Java/gtPlusPlus/core/util/sys/KeyboardUtils.java
@@ -7,17 +7,33 @@ import net.minecraft.client.Minecraft;
public class KeyboardUtils {
public static boolean isCtrlKeyDown(){
- // prioritize CONTROL, but allow OPTION as well on Mac (note: GuiScreen's isCtrlKeyDown only checks for the OPTION key on Mac)
- boolean isCtrlKeyDown = Keyboard.isKeyDown(Keyboard.KEY_LCONTROL) || Keyboard.isKeyDown(Keyboard.KEY_RCONTROL);
- if (!isCtrlKeyDown && Minecraft.isRunningOnMac)
- isCtrlKeyDown = Keyboard.isKeyDown(Keyboard.KEY_LMETA) || Keyboard.isKeyDown(Keyboard.KEY_RMETA);
-
- return isCtrlKeyDown;
+ try {
+ if (!Keyboard.isCreated()) {
+ return false;
+ }
+ // prioritize CONTROL, but allow OPTION as well on Mac (note: GuiScreen's isCtrlKeyDown only checks for the OPTION key on Mac)
+ boolean isCtrlKeyDown = Keyboard.isKeyDown(Keyboard.KEY_LCONTROL) || Keyboard.isKeyDown(Keyboard.KEY_RCONTROL);
+ if (!isCtrlKeyDown && Minecraft.isRunningOnMac)
+ isCtrlKeyDown = Keyboard.isKeyDown(Keyboard.KEY_LMETA) || Keyboard.isKeyDown(Keyboard.KEY_RMETA);
+
+ return isCtrlKeyDown;
+ }
+ catch (Throwable t) {
+ return false;
+ }
}
public static boolean isShiftKeyDown(){
- return Keyboard.isKeyDown(Keyboard.KEY_LSHIFT) || Keyboard.isKeyDown(Keyboard.KEY_RSHIFT);
-
+ try {
+ if (!Keyboard.isCreated()) {
+ return false;
+ }
+ return Keyboard.isKeyDown(Keyboard.KEY_LSHIFT) || Keyboard.isKeyDown(Keyboard.KEY_RSHIFT);
+ }
+ catch (Throwable t) {
+ return false;
+ }
+
}
-
+
}