GTK 2.0 is VERY picky about the realize/map/set_parent order.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@17413 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -310,11 +310,11 @@ gtk_pizza_put (GtkPizza *pizza,
|
|||||||
|
|
||||||
pizza->children = g_list_append (pizza->children, child_info);
|
pizza->children = g_list_append (pizza->children, child_info);
|
||||||
|
|
||||||
gtk_widget_set_parent (widget, GTK_WIDGET (pizza));
|
|
||||||
|
|
||||||
if (GTK_WIDGET_REALIZED (pizza))
|
if (GTK_WIDGET_REALIZED (pizza))
|
||||||
gtk_widget_set_parent_window (widget, pizza->bin_window);
|
gtk_widget_set_parent_window (widget, pizza->bin_window);
|
||||||
|
|
||||||
|
gtk_widget_set_parent (widget, GTK_WIDGET (pizza));
|
||||||
|
|
||||||
#ifndef __WXGTK20__ /* FIXME? */
|
#ifndef __WXGTK20__ /* FIXME? */
|
||||||
if (!IS_ONSCREEN (x, y))
|
if (!IS_ONSCREEN (x, y))
|
||||||
GTK_PRIVATE_SET_FLAG (widget, GTK_IS_OFFSCREEN);
|
GTK_PRIVATE_SET_FLAG (widget, GTK_IS_OFFSCREEN);
|
||||||
|
@@ -522,6 +522,7 @@ static int gtk_window_expose_callback( GtkWidget *widget,
|
|||||||
|
|
||||||
win->GtkSendPaintEvents();
|
win->GtkSendPaintEvents();
|
||||||
|
|
||||||
|
|
||||||
// Let parent window draw window less widgets
|
// Let parent window draw window less widgets
|
||||||
(* GTK_WIDGET_CLASS (pizza_parent_class)->expose_event) (widget, gdk_event);
|
(* GTK_WIDGET_CLASS (pizza_parent_class)->expose_event) (widget, gdk_event);
|
||||||
#else
|
#else
|
||||||
@@ -2617,7 +2618,7 @@ void wxWindowGTK::PostCreation()
|
|||||||
GTK_SIGNAL_FUNC(gtk_window_event_event_callback), (gpointer)this );
|
GTK_SIGNAL_FUNC(gtk_window_event_event_callback), (gpointer)this );
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
gtk_widget_set_redraw_on_allocate( GTK_WIDGET(m_wxwindow), HasFlag( wxNO_FULL_REPAINT_ON_RESIZE ) );
|
// gtk_widget_set_redraw_on_allocate( GTK_WIDGET(m_wxwindow), HasFlag( wxNO_FULL_REPAINT_ON_RESIZE ) );
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -310,11 +310,11 @@ gtk_pizza_put (GtkPizza *pizza,
|
|||||||
|
|
||||||
pizza->children = g_list_append (pizza->children, child_info);
|
pizza->children = g_list_append (pizza->children, child_info);
|
||||||
|
|
||||||
gtk_widget_set_parent (widget, GTK_WIDGET (pizza));
|
|
||||||
|
|
||||||
if (GTK_WIDGET_REALIZED (pizza))
|
if (GTK_WIDGET_REALIZED (pizza))
|
||||||
gtk_widget_set_parent_window (widget, pizza->bin_window);
|
gtk_widget_set_parent_window (widget, pizza->bin_window);
|
||||||
|
|
||||||
|
gtk_widget_set_parent (widget, GTK_WIDGET (pizza));
|
||||||
|
|
||||||
#ifndef __WXGTK20__ /* FIXME? */
|
#ifndef __WXGTK20__ /* FIXME? */
|
||||||
if (!IS_ONSCREEN (x, y))
|
if (!IS_ONSCREEN (x, y))
|
||||||
GTK_PRIVATE_SET_FLAG (widget, GTK_IS_OFFSCREEN);
|
GTK_PRIVATE_SET_FLAG (widget, GTK_IS_OFFSCREEN);
|
||||||
|
@@ -522,6 +522,7 @@ static int gtk_window_expose_callback( GtkWidget *widget,
|
|||||||
|
|
||||||
win->GtkSendPaintEvents();
|
win->GtkSendPaintEvents();
|
||||||
|
|
||||||
|
|
||||||
// Let parent window draw window less widgets
|
// Let parent window draw window less widgets
|
||||||
(* GTK_WIDGET_CLASS (pizza_parent_class)->expose_event) (widget, gdk_event);
|
(* GTK_WIDGET_CLASS (pizza_parent_class)->expose_event) (widget, gdk_event);
|
||||||
#else
|
#else
|
||||||
@@ -2617,7 +2618,7 @@ void wxWindowGTK::PostCreation()
|
|||||||
GTK_SIGNAL_FUNC(gtk_window_event_event_callback), (gpointer)this );
|
GTK_SIGNAL_FUNC(gtk_window_event_event_callback), (gpointer)this );
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
gtk_widget_set_redraw_on_allocate( GTK_WIDGET(m_wxwindow), HasFlag( wxNO_FULL_REPAINT_ON_RESIZE ) );
|
// gtk_widget_set_redraw_on_allocate( GTK_WIDGET(m_wxwindow), HasFlag( wxNO_FULL_REPAINT_ON_RESIZE ) );
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user