aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDamon Chaplin <damon@helixcode.com>2000-05-03 06:26:16 +0800
committerDamon Chaplin <damon@src.gnome.org>2000-05-03 06:26:16 +0800
commit848cacc4905bc5a0423db986119fc708a4ec4ef1 (patch)
tree1dc70676cda3618ed28f3909b95915fd0b9c3235
parent38d9cc1278541b84202c4b3e1555b6d2e36beaca (diff)
downloadgsoc2013-evolution-848cacc4905bc5a0423db986119fc708a4ec4ef1.tar.gz
gsoc2013-evolution-848cacc4905bc5a0423db986119fc708a4ec4ef1.tar.zst
gsoc2013-evolution-848cacc4905bc5a0423db986119fc708a4ec4ef1.zip
set and reset the GTK_HAS_FOCUS flag. We now get focus_out events
2000-05-02 Damon Chaplin <damon@helixcode.com> * e-canvas.c (e_canvas_focus_in): (e_canvas_focus_out): set and reset the GTK_HAS_FOCUS flag. We now get focus_out events correctly. svn path=/trunk/; revision=2758
-rw-r--r--e-util/ChangeLog6
-rw-r--r--e-util/e-canvas.c4
-rw-r--r--widgets/misc/e-canvas.c4
3 files changed, 14 insertions, 0 deletions
diff --git a/e-util/ChangeLog b/e-util/ChangeLog
index f70ca5ec1c..e01604b3b7 100644
--- a/e-util/ChangeLog
+++ b/e-util/ChangeLog
@@ -1,3 +1,9 @@
+2000-05-02 Damon Chaplin <damon@helixcode.com>
+
+ * e-canvas.c (e_canvas_focus_in):
+ (e_canvas_focus_out): set and reset the GTK_HAS_FOCUS flag. We now get
+ focus_out events correctly.
+
2000-05-02 NotZed <NotZed@HelixCode.com>
* e-sexp.c (e_sexp_finalise): Free the parse tree if we have one.
diff --git a/e-util/e-canvas.c b/e-util/e-canvas.c
index ad0819e3dd..8ca7d0f9b1 100644
--- a/e-util/e-canvas.c
+++ b/e-util/e-canvas.c
@@ -313,6 +313,8 @@ e_canvas_focus_in (GtkWidget *widget, GdkEventFocus *event)
canvas = GNOME_CANVAS (widget);
+ GTK_WIDGET_SET_FLAGS (widget, GTK_HAS_FOCUS);
+
if (canvas->focused_item)
return emit_event (canvas, (GdkEvent *) event);
else
@@ -327,6 +329,8 @@ e_canvas_focus_out (GtkWidget *widget, GdkEventFocus *event)
canvas = GNOME_CANVAS (widget);
+ GTK_WIDGET_UNSET_FLAGS (widget, GTK_HAS_FOCUS);
+
if (canvas->focused_item)
return emit_event (canvas, (GdkEvent *) event);
else
diff --git a/widgets/misc/e-canvas.c b/widgets/misc/e-canvas.c
index ad0819e3dd..8ca7d0f9b1 100644
--- a/widgets/misc/e-canvas.c
+++ b/widgets/misc/e-canvas.c
@@ -313,6 +313,8 @@ e_canvas_focus_in (GtkWidget *widget, GdkEventFocus *event)
canvas = GNOME_CANVAS (widget);
+ GTK_WIDGET_SET_FLAGS (widget, GTK_HAS_FOCUS);
+
if (canvas->focused_item)
return emit_event (canvas, (GdkEvent *) event);
else
@@ -327,6 +329,8 @@ e_canvas_focus_out (GtkWidget *widget, GdkEventFocus *event)
canvas = GNOME_CANVAS (widget);
+ GTK_WIDGET_UNSET_FLAGS (widget, GTK_HAS_FOCUS);
+
if (canvas->focused_item)
return emit_event (canvas, (GdkEvent *) event);
else