diff --git a/client_version b/client_version index f61b8a1..2d36404 100644 --- a/client_version +++ b/client_version @@ -1 +1 @@ -u8 \ No newline at end of file +u9 \ No newline at end of file diff --git a/sources/main/java/net/lax1dude/eaglercraft/v1_8/EaglercraftVersion.java b/sources/main/java/net/lax1dude/eaglercraft/v1_8/EaglercraftVersion.java index e9e2eed..280614f 100644 --- a/sources/main/java/net/lax1dude/eaglercraft/v1_8/EaglercraftVersion.java +++ b/sources/main/java/net/lax1dude/eaglercraft/v1_8/EaglercraftVersion.java @@ -8,7 +8,7 @@ public class EaglercraftVersion { /// Customize these to fit your fork: public static final String projectForkName = "EaglercraftX"; - public static final String projectForkVersion = "u8"; + public static final String projectForkVersion = "u9"; public static final String projectForkVendor = "lax1dude"; public static final String projectForkURL = "https://gitlab.com/lax1dude/eaglercraftx-1.8"; @@ -23,7 +23,7 @@ public class EaglercraftVersion { public static final String projectOriginName = "EaglercraftX"; public static final String projectOriginAuthor = "lax1dude"; public static final String projectOriginRevision = "1.8"; - public static final String projectOriginVersion = "u8"; + public static final String projectOriginVersion = "u9"; public static final String projectOriginURL = "https://gitlab.com/lax1dude/eaglercraftx-1.8"; diff --git a/sources/teavm/java/net/lax1dude/eaglercraft/v1_8/internal/PlatformInput.java b/sources/teavm/java/net/lax1dude/eaglercraft/v1_8/internal/PlatformInput.java index 6eaf900..ff88309 100644 --- a/sources/teavm/java/net/lax1dude/eaglercraft/v1_8/internal/PlatformInput.java +++ b/sources/teavm/java/net/lax1dude/eaglercraft/v1_8/internal/PlatformInput.java @@ -168,8 +168,8 @@ public class PlatformInput { evt.preventDefault(); evt.stopPropagation(); if(!enableRepeatEvents && evt.isRepeat()) return; - w = processFunctionKeys(w); - keyStates[KeyboardConstants.getEaglerKeyFromBrowser(w, evt.getLocation())] = true; + int ww = processFunctionKeys(w); + keyStates[KeyboardConstants.getEaglerKeyFromBrowser(ww, ww == w ? evt.getLocation() : 0)] = true; keyEvents.add(evt); } }); @@ -180,8 +180,14 @@ public class PlatformInput { evt.preventDefault(); evt.stopPropagation(); if(!enableRepeatEvents && evt.isRepeat()) return; - w = processFunctionKeys(w); - keyStates[KeyboardConstants.getEaglerKeyFromBrowser(w, evt.getLocation())] = false; + int ww = processFunctionKeys(w); + int eagKey = KeyboardConstants.getEaglerKeyFromBrowser(ww, ww == w ? evt.getLocation() : 0); + keyStates[eagKey] = false; + if(eagKey == functionKeyModifier) { + for(int key = KeyboardConstants.KEY_F1; key <= KeyboardConstants.KEY_F10; ++key) { + keyStates[key] = false; + } + } keyEvents.add(evt); } });