[mutter/wip/carlosg/im-update-preedit-with-mode: 13/16] clutter: Handle touch down and button press events in ClutterInputFocus




commit 9c20b4144ac2230724979b17d26362ec06e232b5
Author: Carlos Garnacho <carlosg gnome org>
Date:   Tue Jul 27 16:45:14 2021 +0200

    clutter: Handle touch down and button press events in ClutterInputFocus
    
    In line with GTK, the input method context should be reset when clicks
    are handled by the ClutterInputFocus user. The reset action can then
    either clear or commit the preedit text, as configured by the IM module.
    
    Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1940>

 clutter/clutter/clutter-input-focus.c | 8 ++++++++
 1 file changed, 8 insertions(+)
---
diff --git a/clutter/clutter/clutter-input-focus.c b/clutter/clutter/clutter-input-focus.c
index 2aea51e24d..b54e64aa30 100644
--- a/clutter/clutter/clutter-input-focus.c
+++ b/clutter/clutter/clutter-input-focus.c
@@ -179,6 +179,14 @@ clutter_input_focus_filter_event (ClutterInputFocus  *focus,
                                             event->im.offset);
       return TRUE;
     }
+  else if (event->type == CLUTTER_TOUCH_BEGIN ||
+          (event->type == CLUTTER_BUTTON_PRESS &&
+           event->button.button == CLUTTER_BUTTON_PRIMARY))
+    {
+      clutter_input_focus_reset (focus);
+      /* pointing events are not consumed by IMs */
+      return FALSE;
+    }
 
   return FALSE;
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]