summaryrefslogtreecommitdiff
path: root/src/devices/VirtualKeyboard.cpp
diff options
context:
space:
mode:
authoroutfoxxed <outfoxxed@outfoxxed.me>2025-07-08 09:56:40 -0700
committerGitHub <noreply@github.com>2025-07-08 18:56:40 +0200
commit78e9eddfb6bfbc6b103fc60c9831b23ef252886b (patch)
tree4daf06580d89dec717a282c4ec8729285241c8e8 /src/devices/VirtualKeyboard.cpp
parent2f34ef141b0728857d2a6f777c608dfe4c207733 (diff)
core: use new typed signals from hu (#10853)
Diffstat (limited to 'src/devices/VirtualKeyboard.cpp')
-rw-r--r--src/devices/VirtualKeyboard.cpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/devices/VirtualKeyboard.cpp b/src/devices/VirtualKeyboard.cpp
index 9952847a..ea21a22b 100644
--- a/src/devices/VirtualKeyboard.cpp
+++ b/src/devices/VirtualKeyboard.cpp
@@ -14,15 +14,14 @@ CVirtualKeyboard::CVirtualKeyboard(SP<CVirtualKeyboardV1Resource> keeb_) : m_key
if (!keeb_)
return;
- m_listeners.destroy = keeb_->m_events.destroy.registerListener([this](std::any d) {
+ m_listeners.destroy = keeb_->m_events.destroy.listen([this] {
m_keyboard.reset();
m_events.destroy.emit();
});
- m_listeners.key = keeb_->m_events.key.registerListener([this](std::any d) { m_keyboardEvents.key.emit(d); });
- m_listeners.modifiers = keeb_->m_events.modifiers.registerListener([this](std::any d) {
- auto E = std::any_cast<SModifiersEvent>(d);
- updateModifiers(E.depressed, E.latched, E.locked, E.group);
+ m_listeners.key = keeb_->m_events.key.listen([this](const auto& event) { m_keyboardEvents.key.emit(event); });
+ m_listeners.modifiers = keeb_->m_events.modifiers.listen([this](const SModifiersEvent& event) {
+ updateModifiers(event.depressed, event.latched, event.locked, event.group);
m_keyboardEvents.modifiers.emit(SModifiersEvent{
.depressed = m_modifiersState.depressed,
.latched = m_modifiersState.latched,
@@ -30,15 +29,14 @@ CVirtualKeyboard::CVirtualKeyboard(SP<CVirtualKeyboardV1Resource> keeb_) : m_key
.group = m_modifiersState.group,
});
});
- m_listeners.keymap = keeb_->m_events.keymap.registerListener([this](std::any d) {
- auto E = std::any_cast<SKeymapEvent>(d);
+ m_listeners.keymap = keeb_->m_events.keymap.listen([this](const SKeymapEvent& event) {
if (m_xkbKeymap)
xkb_keymap_unref(m_xkbKeymap);
- m_xkbKeymap = xkb_keymap_ref(E.keymap);
+ m_xkbKeymap = xkb_keymap_ref(event.keymap);
m_keymapOverridden = true;
updateXKBTranslationState(m_xkbKeymap);
updateKeymapFD();
- m_keyboardEvents.keymap.emit(d);
+ m_keyboardEvents.keymap.emit(event);
});
m_deviceName = keeb_->m_name;