Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 24657 | Differences between
and this patch

Collapse All | Expand All

(-)gaim-0.64/src/gtkconv.c (+16 lines)
Lines 975-986 Link Here
975
	struct gaim_conversation *conv;
975
	struct gaim_conversation *conv;
976
	struct gaim_gtk_conversation *gtkconv;
976
	struct gaim_gtk_conversation *gtkconv;
977
	struct gaim_gtk_window *gtkwin;
977
	struct gaim_gtk_window *gtkwin;
978
	gboolean im_context_retval = FALSE;
979
	static guint32 last_event_time;
978
980
979
	conv    = (struct gaim_conversation *)data;
981
	conv    = (struct gaim_conversation *)data;
980
	gtkconv = GAIM_GTK_CONVERSATION(conv);
982
	gtkconv = GAIM_GTK_CONVERSATION(conv);
981
	win     = gaim_conversation_get_window(conv);
983
	win     = gaim_conversation_get_window(conv);
982
	gtkwin  = GAIM_GTK_WINDOW(win);
984
	gtkwin  = GAIM_GTK_WINDOW(win);
983
985
986
	/*
987
	 * Check if the input method handles this keyevent or we can use it.
988
	 * We need to check the event time, otherwise the gtk xim module gets into an event loop (bug?)
989
	 * Maybe this is not the best solution, but it works.
990
	 */
991
992
	if (last_event_time != event->time) {
993
	  im_context_retval = gtk_im_context_filter_keypress(GTK_TEXT_VIEW(gtkconv->entry)->im_context, event);
994
	}
995
	last_event_time = event->time;
996
	if (im_context_retval == TRUE) {
997
	  return TRUE;
998
	}
999
	
984
	if (event->keyval == GDK_Escape) {
1000
	if (event->keyval == GDK_Escape) {
985
		if (convo_options & OPT_CONVO_ESC_CAN_CLOSE) {
1001
		if (convo_options & OPT_CONVO_ESC_CAN_CLOSE) {
986
			g_signal_stop_emission_by_name(G_OBJECT(entry), "key_press_event");
1002
			g_signal_stop_emission_by_name(G_OBJECT(entry), "key_press_event");

Return to bug 24657