raster pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=502a03fd3edc0050a5194ed578b9031c53ba6788

commit 502a03fd3edc0050a5194ed578b9031c53ba6788
Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
Date:   Fri Apr 16 15:53:21 2021 +0100

    x input devices - have config apply when you hit apply not just on start
---
 src/bin/e_comp_x.c         | 4 ++--
 src/bin/e_comp_x_devices.c | 3 ++-
 src/bin/e_comp_x_devices.h | 2 +-
 src/bin/e_mouse.c          | 2 +-
 4 files changed, 6 insertions(+), 5 deletions(-)

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 <Ecore_X.h>
 #  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

-- 


Reply via email to