summaryrefslogtreecommitdiff
path: root/Userland/Services/WindowServer/WindowManager.cpp
diff options
context:
space:
mode:
authorSahan Fernando <sahan.h.fernando@gmail.com>2021-06-24 22:04:07 +1000
committerAndreas Kling <kling@serenityos.org>2021-06-25 19:26:30 +0200
commitbab6fb76b7e17ea7e8d9438f638c0de9da7aa61c (patch)
tree98b99e1a8a930c453549ffc86defd3f4cbb0068b /Userland/Services/WindowServer/WindowManager.cpp
parentae5d961d9747106c3935f0c368e684244dca4acb (diff)
downloadserenity-bab6fb76b7e17ea7e8d9438f638c0de9da7aa61c.zip
WindowServer: Redraw screen when switching back from tty
Diffstat (limited to 'Userland/Services/WindowServer/WindowManager.cpp')
-rw-r--r--Userland/Services/WindowServer/WindowManager.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/Userland/Services/WindowServer/WindowManager.cpp b/Userland/Services/WindowServer/WindowManager.cpp
index 2544551709..1df6316a58 100644
--- a/Userland/Services/WindowServer/WindowManager.cpp
+++ b/Userland/Services/WindowServer/WindowManager.cpp
@@ -1186,6 +1186,12 @@ void WindowManager::process_key_event(KeyEvent& event)
return;
}
+ // FIXME: This is fragile, the kernel should send a signal when we switch back to the WindowManager's framebuffer
+ if (event.type() == Event::KeyDown && (event.modifiers() & Mod_Alt) && (event.key() == Key_ExclamationPoint || event.key() == Key_1)) {
+ Compositor::the().invalidate_screen();
+ return;
+ }
+
if (event.type() == Event::KeyDown && (event.modifiers() == (Mod_Ctrl | Mod_Super | Mod_Shift) && event.key() == Key_I)) {
reload_icon_bitmaps_after_scale_change();
Compositor::the().invalidate_screen();