summaryrefslogtreecommitdiff
path: root/gtk/gtkwindow-decorate.c
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2002-10-03 20:53:30 +0000
committerOwen Taylor <otaylor@src.gnome.org>2002-10-03 20:53:30 +0000
commitef33adff83617e2c937052316b9fb925d4972252 (patch)
treec6badff88c8dca205f9013043ab12c7f68db5903 /gtk/gtkwindow-decorate.c
parent6cb79658c2a64d01f6e488f065eb2d265be97414 (diff)
downloadgtk+-ef33adff83617e2c937052316b9fb925d4972252.tar.gz
Add a 'type' parameter, make public.
Thu Oct 3 14:13:33 2002 Owen Taylor <otaylor@redhat.com> * gdk/gdkevents.c (gdk_event_new): Add a 'type' parameter, make public. * gdk/gdkevents.c (gdk_event_copy): Copy the screen. * gdk/gdkevents.c gdk/linux-fb/gdkmain-fb.c gdk/x11/gdkevents-x11.c gdk/win32/gdkevents-win32.c: _gdk_event_new() => gdk_event_new(). * gdk/win32/gdkevents-win32.c (real_window_procedure): Fix event_private->screen breakage that results from evil encapsulation breakage here. * gtk/gtkclist.c gtk/gtkcombo.c gtk/gtkcontainer.c gtk/gtkdialog.c gtk/gtkdnd.c gtk/gtkdrawingarea.c gtk/gtkimcontextsimple.c gtk/gtklist.c gtk/gtkmenu.c gtk/gtknotebook.c gtk/gtkplug.c gtk/gtkselection.c gtk/gtktext.c gtk/gtktreeitem.c gtk/gtktreeview.c gtk/gtkviewport.c gtk/gtkwindow-decorate.c gtk/gtkwindow.c tests/testgtk.c: Remove most usage of stack-allocated GdkEvent structures. * gtk/gtktreeview.c: Use a cut-and-paste of the full send_focus_event() from gtkwindow.c that does the necessary notification of the ::has-focus property and setting of the HAS_FOCUS flag.x * gtk/gtkdnd.c: Clean up some mess/duplicated code; removing an extraneous use of a GdkEvent.
Diffstat (limited to 'gtk/gtkwindow-decorate.c')
-rw-r--r--gtk/gtkwindow-decorate.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/gtk/gtkwindow-decorate.c b/gtk/gtkwindow-decorate.c
index d65da6680f..68a23d00fc 100644
--- a/gtk/gtkwindow-decorate.c
+++ b/gtk/gtkwindow-decorate.c
@@ -481,18 +481,14 @@ gtk_decorated_window_button_release (GtkWidget *widget,
type = gtk_decorated_window_region_type (window, event->x, event->y);
if (type == GTK_WINDOW_REGION_CLOSE)
{
- GdkEventAny event;
+ GdkEvent *event = gdk_event_new (GDK_DELETE);
- event.type = GDK_DELETE;
- event.window = widget->window;
- event.send_event = TRUE;
+ event->any.type = GDK_DELETE;
+ event->any.window = g_object_ref (widget->window);
+ event->any.send_event = TRUE;
- /* Synthesize delete_event */
- g_object_ref (event.window);
-
- gtk_main_do_event ((GdkEvent *) &event);
-
- g_object_unref (event.window);
+ gtk_main_do_event (event);
+ gdk_event_free (event);
}
}