(In reply to Alastor Wu [:alwu] from comment #4)
(In reply to Masayuki Nakano [:masayuki] (he/him)(JST, +0900)(Away: 9/21~9/29) from comment #2)
Although I don't understand the reason why you need to split bugs for each platform, we should be able to handle it with
dom::KeyboardEvent since there are a lot of defined multimedia/auto keys:
As when I implemented supporting media keys on Mac in bug1575995, I found that we didn't receive any media keys event in
EventStateManager, so I suppose that we have to have different implementations on each platform.
Yeah, macOS's SDK does not define any media keys. Therefore, we don't receive media key events from
NSTextInputClient protocol so that I was wondering how to do that. Looks like the patch does a complicated things...
Are we able to know if the media keys are pressing or not on our current firefox? If we would like to support those keys on Linux and Windows, do you any suggestion, of which we should be aware before implementing that?
I check on Win10 with Microsoft's keyboard and Logitech's keyboard. Then, I verified that those keys cause
keydown events for them as expected. Although
keyup events are fired only with Microsoft's keyboard.
I cannot check it on Linux for now since I don't have a drive to run Linux natively. On VMware on Win10, only
keyup events are fired with Microsoft keyboard, but only
keydown events are fired with Logitech's keyboard.
If media keys don't work properly on Firefox on Windows or macOS, the keyboard's utility or desktop itself handles the media key events before Gecko receives them. In such case, we need to contact the vendors or developers.