From 4bf0bd930f75c65f80f1c1a061655ed213d4204e Mon Sep 17 00:00:00 2001 From: Adam Date: Fri, 2 Mar 2018 20:57:04 -0500 Subject: [PATCH] input: don't allow duplicate input handlers --- .../java/net/runelite/client/input/KeyManager.java | 5 ++++- .../java/net/runelite/client/input/MouseManager.java | 10 ++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/input/KeyManager.java b/runelite-client/src/main/java/net/runelite/client/input/KeyManager.java index d4bfb6a8db..d8e5c81a11 100644 --- a/runelite-client/src/main/java/net/runelite/client/input/KeyManager.java +++ b/runelite-client/src/main/java/net/runelite/client/input/KeyManager.java @@ -36,7 +36,10 @@ public class KeyManager public void registerKeyListener(KeyListener keyListener) { - keyListeners.add(keyListener); + if (!keyListeners.contains(keyListener)) + { + keyListeners.add(keyListener); + } } public void unregisterKeyListener(KeyListener keyListener) diff --git a/runelite-client/src/main/java/net/runelite/client/input/MouseManager.java b/runelite-client/src/main/java/net/runelite/client/input/MouseManager.java index 41656664f0..dbb8bd3695 100644 --- a/runelite-client/src/main/java/net/runelite/client/input/MouseManager.java +++ b/runelite-client/src/main/java/net/runelite/client/input/MouseManager.java @@ -38,7 +38,10 @@ public class MouseManager public void registerMouseListener(MouseListener mouseListener) { - mouseListeners.add(mouseListener); + if (!mouseListeners.contains(mouseListener)) + { + mouseListeners.add(mouseListener); + } } public void unregisterMouseListener(MouseListener mouseListener) @@ -48,7 +51,10 @@ public class MouseManager public void registerMouseWheelListener(MouseWheelListener mouseWheelListener) { - mouseWheelListeners.add(mouseWheelListener); + if (!mouseWheelListeners.contains(mouseWheelListener)) + { + mouseWheelListeners.add(mouseWheelListener); + } } public void unregisterMouseWheelListener(MouseWheelListener mouseWheelListener)