24 lines
671 B
Diff
24 lines
671 B
Diff
|
diff --git a/client/gtk2/ibusimcontext.c b/client/gtk2/ibusimcontext.c
|
||
|
index eef062c..d644d69 100644
|
||
|
--- a/client/gtk2/ibusimcontext.c
|
||
|
+++ b/client/gtk2/ibusimcontext.c
|
||
|
@@ -845,6 +845,18 @@ ibus_im_context_focus_in (GtkIMContext *context)
|
||
|
return;
|
||
|
|
||
|
/* don't set focus on password entry */
|
||
|
+#if GTK_CHECK_VERSION (3, 6, 0)
|
||
|
+ {
|
||
|
+ GtkInputPurpose purpose;
|
||
|
+
|
||
|
+ g_object_get (G_OBJECT (context),
|
||
|
+ "input-purpose", &purpose,
|
||
|
+ NULL);
|
||
|
+
|
||
|
+ if (purpose == GTK_INPUT_PURPOSE_PASSWORD)
|
||
|
+ return;
|
||
|
+ }
|
||
|
+#endif
|
||
|
if (ibusimcontext->client_window != NULL) {
|
||
|
GtkWidget *widget;
|
||
|
|