diff --git a/ChangeLog b/ChangeLog index a493c52d5e..c4bcd824b1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu May 30 07:12:02 2002 Soeren Sandmann + + * gtk/gtkmenu.c (gtk_menu_style_set): add + gtk_menu_style_set(). Fixes #79345. + 2002-05-30 Tor Lillqvist * gdk/win32/gdkmain-win32.c (gdk_screen_width_mm, diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index a493c52d5e..c4bcd824b1 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,8 @@ +Thu May 30 07:12:02 2002 Soeren Sandmann + + * gtk/gtkmenu.c (gtk_menu_style_set): add + gtk_menu_style_set(). Fixes #79345. + 2002-05-30 Tor Lillqvist * gdk/win32/gdkmain-win32.c (gdk_screen_width_mm, diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index a493c52d5e..c4bcd824b1 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,8 @@ +Thu May 30 07:12:02 2002 Soeren Sandmann + + * gtk/gtkmenu.c (gtk_menu_style_set): add + gtk_menu_style_set(). Fixes #79345. + 2002-05-30 Tor Lillqvist * gdk/win32/gdkmain-win32.c (gdk_screen_width_mm, diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index a493c52d5e..c4bcd824b1 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,8 @@ +Thu May 30 07:12:02 2002 Soeren Sandmann + + * gtk/gtkmenu.c (gtk_menu_style_set): add + gtk_menu_style_set(). Fixes #79345. + 2002-05-30 Tor Lillqvist * gdk/win32/gdkmain-win32.c (gdk_screen_width_mm, diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index a493c52d5e..c4bcd824b1 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,8 @@ +Thu May 30 07:12:02 2002 Soeren Sandmann + + * gtk/gtkmenu.c (gtk_menu_style_set): add + gtk_menu_style_set(). Fixes #79345. + 2002-05-30 Tor Lillqvist * gdk/win32/gdkmain-win32.c (gdk_screen_width_mm, diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index a493c52d5e..c4bcd824b1 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,8 @@ +Thu May 30 07:12:02 2002 Soeren Sandmann + + * gtk/gtkmenu.c (gtk_menu_style_set): add + gtk_menu_style_set(). Fixes #79345. + 2002-05-30 Tor Lillqvist * gdk/win32/gdkmain-win32.c (gdk_screen_width_mm, diff --git a/docs/reference/gdk/tmpl/windows.sgml b/docs/reference/gdk/tmpl/windows.sgml index fb5fad9f0d..287865b66f 100644 --- a/docs/reference/gdk/tmpl/windows.sgml +++ b/docs/reference/gdk/tmpl/windows.sgml @@ -245,7 +245,6 @@ the @window_at_pointer function in #GdkPointerHooks. It will be used when GDK gets multihead support. -@parent_instance: diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c index ac66759ec9..4606780185 100644 --- a/gdk/gdkwindow.c +++ b/gdk/gdkwindow.c @@ -2124,7 +2124,10 @@ gdk_window_process_all_updates (void) { GSList *old_update_windows = update_windows; GSList *tmp_list = update_windows; - + static GTimer *timer; + static double last_time; + double now; + if (update_idle) g_source_remove (update_idle); @@ -2142,7 +2145,19 @@ gdk_window_process_all_updates (void) g_slist_free (old_update_windows); - gdk_flush(); + if (!timer) + timer = g_timer_new (); + now = g_timer_elapsed (timer, NULL); + if (last_time != -1) + g_print ("approximate frame rate: %f\n", 1.0 / (now - last_time)); + last_time = now; + +#if 0 + XFlush (gdk_display); +#endif +#if 0 + gdk_flush (); +#endif } static gboolean diff --git a/gtk/gtkmenu.c b/gtk/gtkmenu.c index 6a6102d98d..7ff6e5a36c 100644 --- a/gtk/gtkmenu.c +++ b/gtk/gtkmenu.c @@ -113,6 +113,9 @@ static void gtk_menu_handle_scrolling (GtkMenu *menu, gboolean enter); static void gtk_menu_set_tearoff_hints (GtkMenu *menu, gint width); +static void gtk_menu_style_set (GtkWidget *widget, + GtkStyle *previous_style); + static void gtk_menu_stop_navigating_submenu (GtkMenu *menu); static gboolean gtk_menu_stop_navigating_submenu_cb (gpointer user_data); @@ -206,6 +209,7 @@ gtk_menu_class_init (GtkMenuClass *class) widget_class->hide_all = gtk_menu_hide_all; widget_class->enter_notify_event = gtk_menu_enter_notify; widget_class->leave_notify_event = gtk_menu_leave_notify; + widget_class->style_set = gtk_menu_style_set; container_class->remove = gtk_menu_remove; @@ -1241,6 +1245,20 @@ gtk_menu_reorder_child (GtkMenu *menu, } } +static void +gtk_menu_style_set (GtkWidget *widget, + GtkStyle *previous_style) +{ + if (GTK_WIDGET_REALIZED (widget)) + { + GtkMenu *menu = GTK_MENU (widget); + + gtk_style_set_background (widget->style, menu->bin_window, GTK_STATE_NORMAL); + gtk_style_set_background (widget->style, menu->view_window, GTK_STATE_NORMAL); + gtk_style_set_background (widget->style, widget->window, GTK_STATE_NORMAL); + } +} + static void gtk_menu_realize (GtkWidget *widget) {