diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c index 6a8305438..fc740e7b5 100644 --- a/src/bin/e_comp_x.c +++ b/src/bin/e_comp_x.c @@ -5495,7 +5495,7 @@ _e_comp_x_devices_change_cb(void *data EINA_UNUSED, int t EINA_UNUSED, void *ev else #endif { - e_comp_x_devices_config_apply(); + e_comp_x_devices_config_apply(EINA_FALSE); } return ECORE_CALLBACK_RENEW; } @@ -6068,7 +6068,7 @@ e_comp_x_init(void) 0, e_config->screensaver_blanking, e_config->screensaver_expose); - e_comp_x_devices_config_apply(); + e_comp_x_devices_config_apply(EINA_FALSE); } else e_dnd_init(); diff --git a/src/bin/e_comp_x_devices.c b/src/bin/e_comp_x_devices.c index 149cb5d4f..38174d1da 100644 --- a/src/bin/e_comp_x_devices.c +++ b/src/bin/e_comp_x_devices.c @@ -389,7 +389,7 @@ _handle_dev_prop(int dev_slot, const char *dev, const char *prop, Device_Flags d } E_API void -e_comp_x_devices_config_apply(void) +e_comp_x_devices_config_apply(Eina_Bool force) { int num_devs, i; Eina_Bool driver_evdev = EINA_FALSE; @@ -413,6 +413,7 @@ e_comp_x_devices_config_apply(void) devstring = eina_strbuf_string_steal(sbuf); } eina_strbuf_free(sbuf); + changed |= force; printf("DEV: CHANGES ... have %i devices, changed=%i\n", num_devs, changed); if (!changed) return; for (i = 0; i < num_devs; i++) diff --git a/src/bin/e_comp_x_devices.h b/src/bin/e_comp_x_devices.h index 74e10b2b2..617f32c91 100644 --- a/src/bin/e_comp_x_devices.h +++ b/src/bin/e_comp_x_devices.h @@ -6,7 +6,7 @@ # include # include "e_atoms.h" -E_API void e_comp_x_devices_config_apply(void); +E_API void e_comp_x_devices_config_apply(Eina_Bool force); # endif #endif diff --git a/src/bin/e_mouse.c b/src/bin/e_mouse.c index 9138f092f..e20f74e65 100644 --- a/src/bin/e_mouse.c +++ b/src/bin/e_mouse.c @@ -8,7 +8,7 @@ e_mouse_update(void) { #ifndef HAVE_WAYLAND_ONLY if (e_comp->comp_type == E_PIXMAP_TYPE_X) - e_comp_x_devices_config_apply(); + e_comp_x_devices_config_apply(EINA_TRUE); #endif #ifdef USE_MODULE_WL_DRM