|
@@ -542,6 +542,17 @@ void WindowManager::tell_wms_super_space_key_pressed()
|
|
|
});
|
|
|
}
|
|
|
|
|
|
+void WindowManager::tell_wms_super_d_key_pressed()
|
|
|
+{
|
|
|
+ for_each_window_manager([](WMConnectionFromClient& conn) {
|
|
|
+ if (conn.window_id() < 0)
|
|
|
+ return IterationDecision::Continue;
|
|
|
+
|
|
|
+ conn.async_super_d_key_pressed(conn.window_id());
|
|
|
+ return IterationDecision::Continue;
|
|
|
+ });
|
|
|
+}
|
|
|
+
|
|
|
void WindowManager::tell_wms_super_digit_key_pressed(u8 digit)
|
|
|
{
|
|
|
for_each_window_manager([digit](WMConnectionFromClient& conn) {
|
|
@@ -1605,6 +1616,11 @@ void WindowManager::process_key_event(KeyEvent& event)
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
+ if (event.type() == Event::KeyDown && event.key() == Key_D) {
|
|
|
+ tell_wms_super_d_key_pressed();
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
if (event.type() == Event::KeyDown && event.key() >= Key_0 && event.key() <= Key_9) {
|
|
|
auto digit = event.key() - Key_0;
|
|
|
tell_wms_super_digit_key_pressed(digit);
|