diff --git a/runelite-client/src/main/java/net/runelite/client/config/Keybind.java b/runelite-client/src/main/java/net/runelite/client/config/Keybind.java index 9148ce40d9..b165aae863 100644 --- a/runelite-client/src/main/java/net/runelite/client/config/Keybind.java +++ b/runelite-client/src/main/java/net/runelite/client/config/Keybind.java @@ -131,7 +131,7 @@ public class Keybind String mod = ""; if (modifiers != 0) { - mod = InputEvent.getModifiersExText(modifiers); + mod = getModifiersExText(modifiers); } if (mod.isEmpty() && key.isEmpty()) @@ -148,4 +148,31 @@ public class Keybind } return mod; } + + public static String getModifiersExText(int modifiers) + { + StringBuilder buf = new StringBuilder(); + if ((modifiers & InputEvent.META_DOWN_MASK) != 0) + { + buf.append("Meta+"); + } + if ((modifiers & InputEvent.CTRL_DOWN_MASK) != 0) + { + buf.append("Ctrl+"); + } + if ((modifiers & InputEvent.ALT_DOWN_MASK) != 0) + { + buf.append("Alt+"); + } + if ((modifiers & InputEvent.SHIFT_DOWN_MASK) != 0) + { + buf.append("Shift+"); + } + + if (buf.length() > 0) + { + buf.setLength(buf.length() - 1); // remove trailing '+' + } + return buf.toString(); + } }