don't assume size-allocate implies a widget is realized
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -3146,7 +3146,12 @@ void wxWindowGTK::DoClientToScreen( int *x, int *y ) const
|
||||
{
|
||||
wxCHECK_RET( (m_widget != NULL), wxT("invalid window") );
|
||||
|
||||
if (!m_isGtkPositionValid && !IsTopLevel() && m_parent)
|
||||
GtkWidget* widget = m_widget;
|
||||
if (m_wxwindow)
|
||||
widget = m_wxwindow;
|
||||
GdkWindow* source = gtk_widget_get_window(widget);
|
||||
|
||||
if ((!m_isGtkPositionValid || source == NULL) && !IsTopLevel() && m_parent)
|
||||
{
|
||||
m_parent->DoClientToScreen(x, y);
|
||||
int xx, yy;
|
||||
@@ -3178,12 +3183,6 @@ void wxWindowGTK::DoClientToScreen( int *x, int *y ) const
|
||||
return;
|
||||
}
|
||||
|
||||
GdkWindow *source = NULL;
|
||||
if (m_wxwindow)
|
||||
source = gtk_widget_get_window(m_wxwindow);
|
||||
else
|
||||
source = gtk_widget_get_window(m_widget);
|
||||
|
||||
wxCHECK_RET(source, "ClientToScreen failed on unrealized window");
|
||||
|
||||
int org_x = 0;
|
||||
@@ -3217,7 +3216,12 @@ void wxWindowGTK::DoScreenToClient( int *x, int *y ) const
|
||||
{
|
||||
wxCHECK_RET( (m_widget != NULL), wxT("invalid window") );
|
||||
|
||||
if (!m_isGtkPositionValid && !IsTopLevel() && m_parent)
|
||||
GtkWidget* widget = m_widget;
|
||||
if (m_wxwindow)
|
||||
widget = m_wxwindow;
|
||||
GdkWindow* source = gtk_widget_get_window(widget);
|
||||
|
||||
if ((!m_isGtkPositionValid || source == NULL) && !IsTopLevel() && m_parent)
|
||||
{
|
||||
m_parent->DoScreenToClient(x, y);
|
||||
int xx, yy;
|
||||
@@ -3249,12 +3253,6 @@ void wxWindowGTK::DoScreenToClient( int *x, int *y ) const
|
||||
return;
|
||||
}
|
||||
|
||||
GdkWindow *source = NULL;
|
||||
if (m_wxwindow)
|
||||
source = gtk_widget_get_window(m_wxwindow);
|
||||
else
|
||||
source = gtk_widget_get_window(m_widget);
|
||||
|
||||
wxCHECK_RET(source, "ScreenToClient failed on unrealized window");
|
||||
|
||||
int org_x = 0;
|
||||
|
Reference in New Issue
Block a user