https://bugs.kde.org/show_bug.cgi?id=366625

Martin Gräßlin <mgraess...@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Version Fixed In|                            |5.27
      Latest Commit|                            |http://commits.kde.org/kway
                   |                            |land/98628f9387ff9628b3c7c3
                   |                            |fa66b0db4b01ef67c8
         Resolution|---                         |FIXED
             Status|UNCONFIRMED                 |RESOLVED

--- Comment #7 from Martin Gräßlin <mgraess...@kde.org> ---
Git commit 98628f9387ff9628b3c7c3fa66b0db4b01ef67c8 by Martin Gräßlin.
Committed on 15/09/2016 at 07:35.
Pushed by graesslin into branch 'master'.

[server] Don't send key release for not pressed keys and no double key press

Summary:
This change makes use of the internal key state in better way. If a
key is not considered pressed, no key release is sent. This can happen
for example if the compositor grabs a key press (global shortcut) but not
the release. The Wayland client cannot do anything with the release as it
never got the press. Thus it doesn't make sense to send the release.

Similar if a key is already pressed, it doesn't make sense to send
another press event. This ensures that if the server sends in repeating
key presses they are filtered out. Key repeat is handled on client side.
Also if several physical keys send the same key code, pressing them at
the same time won't send double press/release event.

This change might cause regressions in KWin in case KWin does not handle
the situation correctly. But that would be a bug in KWin which needs to
be fixed there. If it causes regressions the bug might have shown in
other situations as well.
FIXED-IN: 5.27

Reviewers: #plasma_on_wayland, #kwin

Subscribers: plasma-devel, kwin

Tags: #plasma_on_wayland, #kwin

Differential Revision: https://phabricator.kde.org/D2786

M  +15   -0    autotests/client/test_wayland_seat.cpp
M  +12   -4    src/server/seat_interface.cpp
M  +1    -1    src/server/seat_interface_p.h

http://commits.kde.org/kwayland/98628f9387ff9628b3c7c3fa66b0db4b01ef67c8

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to