2014-11-13 13:30 GMT+02:00 Daniel Stone <[email protected]>: > Hi, > > On Thursday, November 13, 2014, Giulio Camuffo <[email protected]> > wrote: >> >> 2014-11-13 12:06 GMT+02:00 Daniel Stone <[email protected]>: >> > But this is just a client issue, and nothing in sending the full keys >> > array >> > precludes this working. >> > >> > If Alt+X is a modifier (i.e. any time Alt+X is held, pressing Y triggers >> > the >> > shortcut), then the client can use the keys array to notice this, and >> > ensure >> > the shortcut is fired. >> > >> > If Alt+(X+Y) is a cumulative shortcut, then the client knows from seeing >> > X >> > in the enter array but not a key event, that it must wait for a release >> > on X >> > before it arms the shortcut for Y. >> >> But no, because, when the focus isn't switched, there is no enter >> event and no keys array. The client has no idea X was pressed, so it >> can't possibly trigger the binding. >> So without the patch this is not consistent. Depending on whether the >> compositor binding switches the focus, the client binding works or it >> doesn't work. > > > A problem we can solve by switching the focus. ;) I agree that it's annoying > to always do this for every hotkey, so we could introduce a new > wl_keyboard::leave_temporary which would inform the client that it's about > to get another enter event very shortly, but shouldn't redraw itself > insensitive or anything. > > Alternately, we could bump the wl_keyboard version to just allow for > consecutive enter events and never send a leave in these temporal cases.
Do we really need to bump the version? The description of wl_keyboard.leave says " Notification that this seat's keyboard focus is on a certain surface.", it doesn't say the leave and enter events always go in pair, so it seems to me we can just send the new enters without changing anything. -- Giulio > > For older clients, we can just send leave/enter and they can suck it up. > > Either way, it makes things more predictable and allows clients to work out > what's best. > > Cheers, > Daniel _______________________________________________ wayland-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/wayland-devel
