mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-27 05:10:36 +00:00
Fix sending pre-edit characters after hitting Enter. This mainly affects
CJK users. Submitted by: perky Obtained from: Gentoo Linux
This commit is contained in:
parent
9ac9016e7b
commit
5878fb898f
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=87706
@ -6,6 +6,7 @@
|
||||
|
||||
PORTNAME= gaim
|
||||
PORTVERSION= 0.67
|
||||
PORTREVISION= 1
|
||||
CATEGORIES?= net
|
||||
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
|
||||
MASTER_SITE_SUBDIR= ${PORTNAME}
|
||||
|
30
net-im/gaim/files/patch-src::gtkconv.c
Normal file
30
net-im/gaim/files/patch-src::gtkconv.c
Normal file
@ -0,0 +1,30 @@
|
||||
--- src/gtkconv.c.orig Thu Aug 14 07:40:41 2003
|
||||
+++ src/gtkconv.c Mon Aug 25 16:34:55 2003
|
||||
@@ -1138,11 +1138,27 @@
|
||||
GaimConversation *conv;
|
||||
GaimGtkConversation *gtkconv;
|
||||
GaimGtkWindow *gtkwin;
|
||||
+ gboolean im_context_retval = FALSE;
|
||||
+ static guint32 last_event_time;
|
||||
|
||||
conv = (GaimConversation *)data;
|
||||
gtkconv = GAIM_GTK_CONVERSATION(conv);
|
||||
win = gaim_conversation_get_window(conv);
|
||||
gtkwin = GAIM_GTK_WINDOW(win);
|
||||
+
|
||||
+ /*
|
||||
+ * Check if the input method handles this keyevent or we can use it.
|
||||
+ * We need to check the event time, otherwise the gtk xim module gets into an event loop (bug?)
|
||||
+ * Maybe this is not the best solution, but it works.
|
||||
+ */
|
||||
+
|
||||
+ if (last_event_time != event->time) {
|
||||
+ im_context_retval = gtk_im_context_filter_keypress(GTK_TEXT_VIEW(gtkconv->entry)->im_context, event);
|
||||
+ }
|
||||
+ last_event_time = event->time;
|
||||
+ if (im_context_retval == TRUE) {
|
||||
+ return TRUE;
|
||||
+ }
|
||||
|
||||
if (event->keyval == GDK_Page_Up) {
|
||||
g_signal_stop_emission_by_name(G_OBJECT(entry), "key_press_event");
|
@ -6,6 +6,7 @@
|
||||
|
||||
PORTNAME= gaim
|
||||
PORTVERSION= 0.67
|
||||
PORTREVISION= 1
|
||||
CATEGORIES?= net
|
||||
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
|
||||
MASTER_SITE_SUBDIR= ${PORTNAME}
|
||||
|
30
net/gaim/files/patch-src::gtkconv.c
Normal file
30
net/gaim/files/patch-src::gtkconv.c
Normal file
@ -0,0 +1,30 @@
|
||||
--- src/gtkconv.c.orig Thu Aug 14 07:40:41 2003
|
||||
+++ src/gtkconv.c Mon Aug 25 16:34:55 2003
|
||||
@@ -1138,11 +1138,27 @@
|
||||
GaimConversation *conv;
|
||||
GaimGtkConversation *gtkconv;
|
||||
GaimGtkWindow *gtkwin;
|
||||
+ gboolean im_context_retval = FALSE;
|
||||
+ static guint32 last_event_time;
|
||||
|
||||
conv = (GaimConversation *)data;
|
||||
gtkconv = GAIM_GTK_CONVERSATION(conv);
|
||||
win = gaim_conversation_get_window(conv);
|
||||
gtkwin = GAIM_GTK_WINDOW(win);
|
||||
+
|
||||
+ /*
|
||||
+ * Check if the input method handles this keyevent or we can use it.
|
||||
+ * We need to check the event time, otherwise the gtk xim module gets into an event loop (bug?)
|
||||
+ * Maybe this is not the best solution, but it works.
|
||||
+ */
|
||||
+
|
||||
+ if (last_event_time != event->time) {
|
||||
+ im_context_retval = gtk_im_context_filter_keypress(GTK_TEXT_VIEW(gtkconv->entry)->im_context, event);
|
||||
+ }
|
||||
+ last_event_time = event->time;
|
||||
+ if (im_context_retval == TRUE) {
|
||||
+ return TRUE;
|
||||
+ }
|
||||
|
||||
if (event->keyval == GDK_Page_Up) {
|
||||
g_signal_stop_emission_by_name(G_OBJECT(entry), "key_press_event");
|
Loading…
Reference in New Issue
Block a user