{"push_id":1890323637,"size":6,"distinct_size":6,"ref":"refs/heads/gsw-native-events","head":"a7ac611387991058fee851c6c5ce0489aa7375d4","before":"09ccfd1bf8403bdb56bbd28bf86e782b12e2944c","commits":[{"sha":"567f33abe5fe34c4de23c2d6027f1828b5a7cbf4","author":{"name":"Mikkel Krautz","email":"738ea419d51c9403875a663da576cbd0bce396ba@krautz.dk"},"message":"GlobalShortcutWin: add comment about button indexes in HookMouse().\n\nDocument that the button indexes in HookMouse() are DirectInput button\nindexes.\n\nThe reason we use those, is that Mumble originally only used DirectInput\nfor global shortcuts on Windows. Later on, we added support for keyboard\nand mouse hooks to get global keypresses and mouse clicks.\n\nWhen these keyboard and mouse hooks are used, we actually get the same\nevent from *both* sources: First, we get it from the global hook. In\nthere, we have the option to suppress the event, so it doesn't get passed\non to us (or anyt other application). If we don't suppress it, it will\ncontinue on further down the chain, and eventually we will receive the\nsame event via DirectInput. This means that in practice, we get *two*\nevents for all shortcut presses. Luckily, the underlying GlobalShortcutEngine\nwill treat them as one event because they arrive so close to one another.\nHowever, for that mechanism to work, the internal decription of the events\nwill have to match. We chose to use DirectInput's representation as our\nformat. Because of that, we convert the incoming keyboard and mouse events\nvia our Windows hooks into the representation used by DirectInput.","distinct":true,"url":"https://api.github.com/repos/mkrautz/mumble/commits/567f33abe5fe34c4de23c2d6027f1828b5a7cbf4"},{"sha":"007c5b0e8201a4365823220d8c007250ba0e4d16","author":{"name":"Mikkel Krautz","email":"738ea419d51c9403875a663da576cbd0bce396ba@krautz.dk"},"message":"GlobalShortcutWin: refactor HookKeyboard and HookMouse callbacks into functions.\n\nWe are going to implement a feature where native Windows keyboard and\nmouse events are injected into GlobalShortuctWin. This is the first step\nof that.","distinct":true,"url":"https://api.github.com/repos/mkrautz/mumble/commits/007c5b0e8201a4365823220d8c007250ba0e4d16"},{"sha":"8b7d54d87ca029b1c37a317cde5197e0bb023e51","author":{"name":"Mikkel Krautz","email":"738ea419d51c9403875a663da576cbd0bce396ba@krautz.dk"},"message":"GlobalShortcutWin: implement InjectKeyboardMessageEvent and InjectMouseMessageEvent QEvents.\n\nThese events will be used to serialize native Windows keyboard events\nfor transporting them from the main thread to GlobalShortcutWin's event\nloop.","distinct":true,"url":"https://api.github.com/repos/mkrautz/mumble/commits/8b7d54d87ca029b1c37a317cde5197e0bb023e51"},{"sha":"a596590ab2743591d64aee94349d4f5144f69235","author":{"name":"Mikkel Krautz","email":"738ea419d51c9403875a663da576cbd0bce396ba@krautz.dk"},"message":"GlobalShortcutWin: handle incoming InjectKeyboardMessageEvent and InjectMouseMessageEvent events.","distinct":true,"url":"https://api.github.com/repos/mkrautz/mumble/commits/a596590ab2743591d64aee94349d4f5144f69235"},{"sha":"5253777f8bb47d6597dc6c1bde06813dc4d97508","author":{"name":"Mikkel Krautz","email":"738ea419d51c9403875a663da576cbd0bce396ba@krautz.dk"},"message":"GlobalShortcutWin: implement public API for injecting native Windows keyboard/mouse events.\n\nThis commit implements two new public methods for GlobalShortcutWin:\ninjectKeyboardMessage and injectMouseMessage.\n\nThese can be used for injecting native Windows keyboard/mouse messages\nfrom the program's main thread into GlobalShortcutWin's event stream.","distinct":true,"url":"https://api.github.com/repos/mkrautz/mumble/commits/5253777f8bb47d6597dc6c1bde06813dc4d97508"},{"sha":"a7ac611387991058fee851c6c5ce0489aa7375d4","author":{"name":"Mikkel Krautz","email":"738ea419d51c9403875a663da576cbd0bce396ba@krautz.dk"},"message":"MumbleApplication: forward native Windows mouse/keyboard events from nativeEventFilter/winEventFilter into GlobalShortcutWin.","distinct":true,"url":"https://api.github.com/repos/mkrautz/mumble/commits/a7ac611387991058fee851c6c5ce0489aa7375d4"}]}
{"actor":{"display_login":"mkrautz"}}