<div>graesslin created this revision.<br />
graesslin added a reviewer: Plasma.<br />
Restricted Application added a project: Plasma.<br />
Restricted Application added a subscriber: plasma-devel.</div><br /><div><strong>REVISION SUMMARY</strong><div><p>The signals emitted by LibInput::Connection carry the Device for which<br />
the input event was received. This Device is passed to the input handlers.</p>

<p>Custom event classes are added which extend QMouseEvent, QKeyEvent and<br />
QWheelEvent respectively and expose the Device. The Device is only passed<br />
around as a forward declared pointer, so even if compiled without libinput<br />
support, it should still compile.</p>

<p>Event handlers which need to get access to the Device can now just cast<br />
the event pointer to the custom class and access it. This can be used in<br />
future to handle device specific key codes, etc.</p>

<p>As we don't have a proper event classes for touch events the event<br />
handlers do not yet have access to the Device. Here the internal API<br />
needs to be adjusted in future.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>rKWIN KWin</div></div></div><br /><div><strong>BRANCH</strong><div><div>custom-input-events</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D1667" rel="noreferrer">https://phabricator.kde.org/D1667</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>CMakeLists.txt<br />
autotests/libinput/CMakeLists.txt<br />
autotests/libinput/input_event_test.cpp<br />
input.cpp<br />
input_event.cpp<br />
input_event.h<br />
keyboard_input.cpp<br />
keyboard_input.h<br />
libinput/connection.cpp<br />
libinput/connection.h<br />
pointer_input.cpp<br />
pointer_input.h<br />
tests/libinputtest.cpp<br />
touch_input.cpp<br />
touch_input.h</div></div></div><br /><div><strong>EMAIL PREFERENCES</strong><div><a href="https://phabricator.kde.org/settings/panel/emailpreferences/" rel="noreferrer">https://phabricator.kde.org/settings/panel/emailpreferences/</a></div></div><br /><div><strong>To: </strong>graesslin, Plasma<br /><strong>Cc: </strong>plasma-devel, sebas<br /></div>