aboutsummaryrefslogtreecommitdiff
path: root/hildon
diff options
context:
space:
mode:
Diffstat (limited to 'hildon')
-rw-r--r--hildon/hildon-live-search.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/hildon/hildon-live-search.c b/hildon/hildon-live-search.c
index 959fc3a..e79c1f8 100644
--- a/hildon/hildon-live-search.c
+++ b/hildon/hildon-live-search.c
@@ -465,11 +465,15 @@ on_key_press_event (GtkWidget *widget,
if (GTK_WIDGET_VISIBLE (priv->kb_focus_widget)) {
/* If the live search is hidden, Ctrl+whatever is always
- * passed to the focus widget */
+ * passed to the focus widget, with the exception of
+ * Ctrl + Space, which is given to the entry, so that the input method
+ * is allowed to switch the keyboard layout. */
if (GTK_WIDGET_VISIBLE (live_search) ||
!(event->state & GDK_CONTROL_MASK ||
event->keyval == GDK_Control_L ||
- event->keyval == GDK_Control_R)) {
+ event->keyval == GDK_Control_R) ||
+ (event->state & GDK_CONTROL_MASK &&
+ event->keyval == GDK_space)) {
GdkEvent *new_event;
/* If the entry is realized and has focus, it is enough to catch events.