Affects 1.21.5
Unless there is a specific reason for AbstractWindCharge#push(double, double, double) to have an empty body, removing it fixes the issue.
Affects 1.21.5-rc2
In 1.21.3, ServerExplosion#hurtEntities directly used Entity#setDeltaMovement(Vec3) to move entities. In 1.21.4, the wrapper method Entity#push(Vec3) is used instead. The issue is that AbstractWindCharge overrides Entity#push(double, double, double) but does not do anything with it, so wind charges are not propelled by explosions.
I guess that would be useful but it's kind of weird to half-fix a bug. Personally just rather have this fixed before this bug becomes the norm and this issue becomes a gray area, because I did actually use this mechanic and is why I reported this issue.
Not sure how Mojang sets the priority of issues but this one affects gameplay, specifically with wind charge tech, and was surprised it got thrown to low priority and forgotten before I bumped it.
I have found that this issue is first introduced in 24w44a and still persists in 1.21.5-rc1
This seems more like an intentional change that was added to improve keyboard navigation, specifically when transitioning from mouse to keyboard input. I’ve used it personally in newer versions, most notably when changing the GUI scale which displaces the button from the mouse. Simply making buttons not take focus anymore would result in a regression with that.
Mojang even had a chance to “fix” this in 1.21.9 when they added
GuiEventListener#shouldTakeFocusAfterInteraction(which still exists as of 26.3), but they deliberately made it returntrueby default.My proposed solution would be to differentiate hovered and focused states, where the focused state is visible only on keyboard navigation, similar to how its done in most websites.