TextInputV2: Don't drop or convert modifiers for keysym events

This commit is contained in:
Rodney Dawes 2021-09-30 17:03:05 -04:00
parent 25942d6fcb
commit b58cc08a36
3 changed files with 12 additions and 13 deletions

View file

@ -191,27 +191,27 @@ void TextInputV2InterfacePrivate::commitString(const QString &text)
}
}
void TextInputV2InterfacePrivate::keysymPressed(quint32 keysym, Qt::KeyboardModifiers modifiers)
void TextInputV2InterfacePrivate::keysymPressed(quint32 keysym, quint32 modifiers)
{
if (!surface) {
return;
}
Q_UNUSED(modifiers)
const QList<Resource *> textInputs = textInputsForClient(surface->client());
for (auto resource : textInputs) {
send_keysym(resource->handle, seat ? seat->timestamp() : 0, keysym, WL_KEYBOARD_KEY_STATE_PRESSED, 0);
send_keysym(resource->handle, seat ? seat->timestamp() : 0, keysym, WL_KEYBOARD_KEY_STATE_PRESSED, modifiers);
}
}
void TextInputV2InterfacePrivate::keysymReleased(quint32 keysym, Qt::KeyboardModifiers modifiers)
void TextInputV2InterfacePrivate::keysymReleased(quint32 keysym, quint32 modifiers)
{
if (!surface) {
return;
}
Q_UNUSED(modifiers)
const QList<Resource *> textInputs = textInputsForClient(surface->client());
for (auto resource : textInputs) {
send_keysym(resource->handle, seat ? seat->timestamp() : 0, keysym, WL_KEYBOARD_KEY_STATE_RELEASED, 0);
send_keysym(resource->handle, seat ? seat->timestamp() : 0, keysym, WL_KEYBOARD_KEY_STATE_RELEASED, modifiers);
}
}
@ -438,13 +438,12 @@ void TextInputV2Interface::commitString(const QString &text)
d->commitString(text);
}
void TextInputV2Interface::keysymPressed(quint32 keysym, Qt::KeyboardModifiers modifiers)
void TextInputV2Interface::keysymPressed(quint32 keysym, quint32 modifiers)
{
Q_UNUSED(modifiers)
d->keysymPressed(keysym, modifiers);
}
void TextInputV2Interface::keysymReleased(quint32 keysym, Qt::KeyboardModifiers modifiers)
void TextInputV2Interface::keysymReleased(quint32 keysym, quint32 modifiers)
{
d->keysymReleased(keysym, modifiers);
}

View file

@ -192,8 +192,8 @@ public:
*/
void setTextDirection(Qt::LayoutDirection direction);
void keysymPressed(quint32 keysym, Qt::KeyboardModifiers modifiers = Qt::NoModifier);
void keysymReleased(quint32 keysym, Qt::KeyboardModifiers modifiers = Qt::NoModifier);
void keysymPressed(quint32 keysym, quint32 modifiers = 0);
void keysymReleased(quint32 keysym, quint32 modifiers = 0);
/**
* Informs the client about changes in the visibility of the input panel (virtual keyboard).

View file

@ -42,8 +42,8 @@ public:
void setTextDirection(Qt::LayoutDirection direction);
void setPreEditCursor(qint32 index);
void setCursorPosition(qint32 index, qint32 anchor);
void keysymPressed(quint32 keysym, Qt::KeyboardModifiers modifiers);
void keysymReleased(quint32 keysym, Qt::KeyboardModifiers modifiers);
void keysymPressed(quint32 keysym, quint32 modifiers);
void keysymReleased(quint32 keysym, quint32 modifiers);
void sendInputPanelState();
void sendLanguage();