From 02f7b01c888f2ad9ee106acaee30e226bff04532 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Wed, 13 Apr 2022 00:35:18 +0200 Subject: Fix flickering issue caused by visibility change spam --- src/main.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/main.cpp') diff --git a/src/main.cpp b/src/main.cpp index e822c80..a183976 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1094,8 +1094,12 @@ bool CMainApplication::HandleInput() window_resize_time = SDL_GetTicks(); window_resized = false; - XSelectInput(x_display, src_window_id, StructureNotifyMask|VisibilityChangeMask|KeyPressMask|KeyReleaseMask); - XFixesSelectCursorInput(x_display, src_window_id, XFixesDisplayCursorNotifyMask); + if(focused_window_changed) { + XSelectInput(x_display, src_window_id, StructureNotifyMask|VisibilityChangeMask|KeyPressMask|KeyReleaseMask); + XFixesSelectCursorInput(x_display, src_window_id, XFixesDisplayCursorNotifyMask); + XFlush(x_display); + XSync(x_display, False); + } focused_window_changed = false; window_resized = false; -- cgit v1.2.3