Prevent number key usage in GPS-related GUIs#4297
Prevent number key usage in GPS-related GUIs#4297RaphaelFakhri wants to merge 4 commits intoSlimefun:masterfrom
Conversation
1. Added isNumberKey() method to ClickAction class to detect number key usage 2. Modified MenuListener to pass InventoryClickEvent to ClickAction constructor 3. Added special handlers to GPS Control Panel, Waypoint Panel, and GEO Scanner GUIs 4. These changes prevent users from using number keys in GPS GUIs which was causing items to be lost
|
Pro Tip!
If your changes do not fall into any of these categories, don't worry. You can just ignore this message in that case! 👀 |
There was a problem hiding this comment.
I had to lowercase this library or the project wouldn't build, but it's not related to issue #4260
Slimefun preview buildA Slimefun preview build is available for testing! https://preview-builds.walshy.dev/download/Slimefun/4297/c850d4e6
|
| public ClickAction(InventoryClickEvent e) { | ||
| this.right = e.isRightClick(); | ||
| this.shift = e.isShiftClick(); | ||
| this.numberKey = e.getClick().name().equals("NUMBER_KEY"); |
There was a problem hiding this comment.
why are you checking the name instead of just the enum itself?
There was a problem hiding this comment.
- Because comparing an enum to a string always returns false
- Because the bukkit API does not have a native isNumberKey() method, which I would have used
Another way of writing this would be this.numberKey = e.getClick() == ClickType.NUMBER_KEY;, I just thought that a string would be more simple
Description
Resolves #4260
Proposed changes
Related Issues (if applicable)
Resolves #4260
Checklist
NonnullandNullableannotations to my methods to indicate their behaviour for null values