MouseTweaks
14 merged pull requests.
New Features
- #4 Backported configuration options from newer MouseTweaks versions: ScrollItemScaling (proportional vs. single-item transfer) and WheelScrollDirection (direction inversion and position-aware transfer) via expanded build.gradle and Main.java. - @unilock
- Added: ScrollItemScaling config option (PROPORTIONAL, ALWAYS_ONE), WheelScrollDirection config option (direction control and position-awareness)
Changes
- #12 Main class now checks NEI config state and disables MouseTweaks wheel transfer when NEI's is enabled to avoid conflicts. - @Alexdoru
- Added: NEI compatibility check
- Fixed: Double item transfer when both NEI and MouseTweaks wheel transfers are enabled
- #5 Replaced the hand-written Properties config with the annotated MTConfig class (GTNHLib @Config) plus MTGuiConfig and MTGuiConfigFactory. Config now detects the old config and imports its values into MTConfig. Main loses its config fields and the read/save methods. Adds a GTNHLib 0.2.0 dependency. - @Caedis
- Added: in-game config screen, old config import
Bug Fixes
- #18 ClickHandler.reset is replaced by updateScreen, which resets drag state on a screen change and sets waitingForButtonRelease. handleSlotChangeAndButtons returns early until buttons 0 and 1 are up. Runtime calls updateScreen in both onUpdateInGame and onUpdateInGui. - @Pxx500
- Fixed: unintended shift-click when returning from NEI recipes
- #16 ClickHandler.handleLMBTweak now checks the GuiContainer dragSplitting field (field_147007_t) and skips the merge-click branch while it is true. - @0hwx
- Fixed: Mouse Tweaks left click tweak interfering with drag splitting
- #13 Changes the MTConfig.RMBTweak default from false to true. - @wlhlm
- Fixed: RMBTweak default changed to false by an earlier PR
- #10 DeobfuscationLayer.areStacksCompatible now also requires ItemStack.areItemStackTagsEqual. - @Caedis
- Fixed: scroll wheel transfer swapping items with same metadata but different NBT
- #9 Main.onUpdateInGui calls Mouse.getDWheel() when a new container GUI opens and the wheel tweak is enabled for it, which discards the accumulated wheel delta. - @Caedis
- Fixed: random item loss from the Mouse Tweaks wheel tweak
- Closes GTNH#15374
- #8 Config.hasOldConfig and importOldConfig are replaced by a static handleOldConfig(File) that deletes the config file if no line contains "general". MouseTweaksForge.preinit calls it. - @Caedis
- Removed: import of old Mouse Tweaks config values
- Fixed: issues with importing old configs
- #7 Config.hasOldConfig now returns true when the properties lack a general key, including when reading fails with an IOException. Removed requiredMods, dependencies, dependants and useDependencyInformation from mcmod.info. - @Caedis
- Fixed: old config detection on read failure
- #3 MouseTweaksForge.init only calls Main.initialise and registers the event bus on the client, and the mod now sets acceptableRemoteVersions to "*". Reflection.getField skips the error log for inventorySlots, the GRADLETOKEN mod name and id constants are hardcoded, the CI client-only flag is removed, and build.gradle is updated. - @eigenraven
- Fixed: dedicated server crash from Mouse Tweaks, Forestry field lookup error in the log
Chores
- #14 Bumped GTNHLib to 0.9.27 and NEI to 2.8.70-GTNH, updated the settings convention plugin and gradle wrapper, and raised the required-after gtnhlib version in MouseTweaksForge. Split Main into Runtime and handlers such as ClickHandler, and reworked Config to read the old config file through a try-with-resources stream and log a warning when deleting it fails. - @Caedis
- #11 Bumps the GTNHLib dependency to 0.2.9 and drops the ConfigurationManager.registerBus() call in MouseTweaksForge.preinit. - @Caedis
- #2 Added Constants.DEV_ENV, read from the fml.deobfuscatedEnvironment launch blackboard value, and wrapped the debug logging in Main.onUpdateInGui in it. The CI workflow is now set to client-only. - @miozune
- Fixed: debug log spam outside dev environment
Contributors
Everyone who authored, reviewed or co-authored a change on this page, with how many of them:
@Caedis (9), @eigenraven (4), @Dream-Master (2), @0hwx (1), @Alexdoru (1), @bombcar (1), @boubou19 (1), @glektarssza (1), @glowredman (1), @LazyFlesh (1), @miozune (1), @mitchej123 (1), @Pxx500 (1), @unilock (1), @wlhlm (1)