From bb8874930bd93e4929852d67a517c7cc1d57e40a Mon Sep 17 00:00:00 2001 From: "Carsten Haitzler (Rasterman)" Date: Sat, 2 Apr 2022 11:01:01 +0100 Subject: [PATCH] fix more unfullscreen clicker/toggle when window is small... another codepath for the fullscreen flicker bug via the job handler @fix --- src/bin/e_comp_x.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c index 55303b860..ed00d553b 100644 --- a/src/bin/e_comp_x.c +++ b/src/bin/e_comp_x.c @@ -2602,8 +2602,20 @@ _e_comp_x_powersave(void *data EINA_UNUSED, int type EINA_UNUSED, void *event) static void _e_comp_x_mouse_in_job(void *d EINA_UNUSED) { + E_Client *ecf = e_client_focused_get(); + + // if we're fullscreen and see a mout out within a short time of having + // set this client ot fullscreen - it's a "false flag" that is a bi-product + // of things moving around while becoming fullscreen, so ignore it + if ((ecf) && (ecf != mouse_client)) + { + if ((ecf->fullscreen) && + (ecore_time_get() - ecf->fullscreen_time) < 0.2) // 0.2sec enough + goto done; + } if (mouse_client) e_client_mouse_in(mouse_client, e_comp_canvas_x_root_adjust(mouse_in_coords.x), e_comp_canvas_y_root_adjust(mouse_in_coords.y)); +done: mouse_in_job = NULL; }