Fix macOS accumulated mouse scroll events.
This commit is contained in:
parent
9b5c6f539b
commit
37f0a6d99a
1 changed files with 6 additions and 1 deletions
|
@ -1096,6 +1096,7 @@ static int remapKey(unsigned int key) {
|
|||
inline void sendScrollEvent(int button, double factor, int modifierFlags) {
|
||||
|
||||
unsigned int mask = 1 << (button - 1);
|
||||
Vector2 mouse_pos = Vector2(mouse_x, mouse_y);
|
||||
|
||||
Ref<InputEventMouseButton> sc;
|
||||
sc.instance();
|
||||
|
@ -1104,14 +1105,18 @@ inline void sendScrollEvent(int button, double factor, int modifierFlags) {
|
|||
sc->set_button_index(button);
|
||||
sc->set_factor(factor);
|
||||
sc->set_pressed(true);
|
||||
Vector2 mouse_pos = Vector2(mouse_x, mouse_y);
|
||||
sc->set_position(mouse_pos);
|
||||
sc->set_global_position(mouse_pos);
|
||||
button_mask |= mask;
|
||||
sc->set_button_mask(button_mask);
|
||||
OS_OSX::singleton->push_input(sc);
|
||||
|
||||
sc.instance();
|
||||
sc->set_button_index(button);
|
||||
sc->set_factor(factor);
|
||||
sc->set_pressed(false);
|
||||
sc->set_position(mouse_pos);
|
||||
sc->set_global_position(mouse_pos);
|
||||
button_mask &= ~mask;
|
||||
sc->set_button_mask(button_mask);
|
||||
OS_OSX::singleton->push_input(sc);
|
||||
|
|
Loading…
Reference in a new issue