fixed wxGTK fullscreen mode, broken by my previous change to gtk/toplevel.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -85,7 +85,7 @@ public:
|
|||||||
bool m_insertInClientArea; /* not from within OnCreateXXX */
|
bool m_insertInClientArea; /* not from within OnCreateXXX */
|
||||||
|
|
||||||
bool m_fsIsShowing; /* full screen */
|
bool m_fsIsShowing; /* full screen */
|
||||||
long m_fsSaveStyle;
|
long m_fsSaveGdkFunc, m_fsSaveGdkDecor;
|
||||||
long m_fsSaveFlag;
|
long m_fsSaveFlag;
|
||||||
wxRect m_fsSaveFrame;
|
wxRect m_fsSaveFrame;
|
||||||
|
|
||||||
|
@@ -85,7 +85,7 @@ public:
|
|||||||
bool m_insertInClientArea; /* not from within OnCreateXXX */
|
bool m_insertInClientArea; /* not from within OnCreateXXX */
|
||||||
|
|
||||||
bool m_fsIsShowing; /* full screen */
|
bool m_fsIsShowing; /* full screen */
|
||||||
long m_fsSaveStyle;
|
long m_fsSaveGdkFunc, m_fsSaveGdkDecor;
|
||||||
long m_fsSaveFlag;
|
long m_fsSaveFlag;
|
||||||
wxRect m_fsSaveFrame;
|
wxRect m_fsSaveFrame;
|
||||||
|
|
||||||
|
@@ -304,10 +304,13 @@ static void wxInsertChildInTopLevelWindow( wxTopLevelWindowGTK* parent, wxWindow
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* these are inside the client area */
|
/* these are inside the client area */
|
||||||
|
int x = child->m_x, y = child->m_y;
|
||||||
|
child->AdjustForParentClientOrigin(x, y, 0);
|
||||||
|
|
||||||
gtk_pizza_put( GTK_PIZZA(parent->m_wxwindow),
|
gtk_pizza_put( GTK_PIZZA(parent->m_wxwindow),
|
||||||
GTK_WIDGET(child->m_widget),
|
GTK_WIDGET(child->m_widget),
|
||||||
child->m_x,
|
x,
|
||||||
child->m_y,
|
y,
|
||||||
child->m_width,
|
child->m_width,
|
||||||
child->m_height );
|
child->m_height );
|
||||||
}
|
}
|
||||||
@@ -524,7 +527,8 @@ bool wxTopLevelWindowGTK::ShowFullScreen(bool show, long style )
|
|||||||
|
|
||||||
if (show)
|
if (show)
|
||||||
{
|
{
|
||||||
m_fsSaveStyle = m_windowStyle;
|
m_fsSaveGdkFunc = m_gdkFunc;
|
||||||
|
m_fsSaveGdkDecor = m_gdkDecor;
|
||||||
m_fsSaveFlag = style;
|
m_fsSaveFlag = style;
|
||||||
GetPosition( &m_fsSaveFrame.x, &m_fsSaveFrame.y );
|
GetPosition( &m_fsSaveFrame.x, &m_fsSaveFrame.y );
|
||||||
GetSize( &m_fsSaveFrame.width, &m_fsSaveFrame.height );
|
GetSize( &m_fsSaveFrame.width, &m_fsSaveFrame.height );
|
||||||
@@ -532,7 +536,8 @@ bool wxTopLevelWindowGTK::ShowFullScreen(bool show, long style )
|
|||||||
gtk_widget_hide( m_widget );
|
gtk_widget_hide( m_widget );
|
||||||
gtk_widget_unrealize( m_widget );
|
gtk_widget_unrealize( m_widget );
|
||||||
|
|
||||||
m_windowStyle = wxSIMPLE_BORDER;
|
m_gdkDecor = (long) GDK_DECOR_BORDER;
|
||||||
|
m_gdkFunc = (long) GDK_FUNC_MOVE;
|
||||||
|
|
||||||
int x;
|
int x;
|
||||||
int y;
|
int y;
|
||||||
@@ -547,7 +552,8 @@ bool wxTopLevelWindowGTK::ShowFullScreen(bool show, long style )
|
|||||||
gtk_widget_hide( m_widget );
|
gtk_widget_hide( m_widget );
|
||||||
gtk_widget_unrealize( m_widget );
|
gtk_widget_unrealize( m_widget );
|
||||||
|
|
||||||
m_windowStyle = m_fsSaveStyle;
|
m_gdkFunc = m_fsSaveGdkFunc;
|
||||||
|
m_gdkDecor = m_fsSaveGdkDecor;
|
||||||
|
|
||||||
SetSize( m_fsSaveFrame.x, m_fsSaveFrame.y, m_fsSaveFrame.width, m_fsSaveFrame.height );
|
SetSize( m_fsSaveFrame.x, m_fsSaveFrame.y, m_fsSaveFrame.width, m_fsSaveFrame.height );
|
||||||
|
|
||||||
|
@@ -304,10 +304,13 @@ static void wxInsertChildInTopLevelWindow( wxTopLevelWindowGTK* parent, wxWindow
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* these are inside the client area */
|
/* these are inside the client area */
|
||||||
|
int x = child->m_x, y = child->m_y;
|
||||||
|
child->AdjustForParentClientOrigin(x, y, 0);
|
||||||
|
|
||||||
gtk_pizza_put( GTK_PIZZA(parent->m_wxwindow),
|
gtk_pizza_put( GTK_PIZZA(parent->m_wxwindow),
|
||||||
GTK_WIDGET(child->m_widget),
|
GTK_WIDGET(child->m_widget),
|
||||||
child->m_x,
|
x,
|
||||||
child->m_y,
|
y,
|
||||||
child->m_width,
|
child->m_width,
|
||||||
child->m_height );
|
child->m_height );
|
||||||
}
|
}
|
||||||
@@ -524,7 +527,8 @@ bool wxTopLevelWindowGTK::ShowFullScreen(bool show, long style )
|
|||||||
|
|
||||||
if (show)
|
if (show)
|
||||||
{
|
{
|
||||||
m_fsSaveStyle = m_windowStyle;
|
m_fsSaveGdkFunc = m_gdkFunc;
|
||||||
|
m_fsSaveGdkDecor = m_gdkDecor;
|
||||||
m_fsSaveFlag = style;
|
m_fsSaveFlag = style;
|
||||||
GetPosition( &m_fsSaveFrame.x, &m_fsSaveFrame.y );
|
GetPosition( &m_fsSaveFrame.x, &m_fsSaveFrame.y );
|
||||||
GetSize( &m_fsSaveFrame.width, &m_fsSaveFrame.height );
|
GetSize( &m_fsSaveFrame.width, &m_fsSaveFrame.height );
|
||||||
@@ -532,7 +536,8 @@ bool wxTopLevelWindowGTK::ShowFullScreen(bool show, long style )
|
|||||||
gtk_widget_hide( m_widget );
|
gtk_widget_hide( m_widget );
|
||||||
gtk_widget_unrealize( m_widget );
|
gtk_widget_unrealize( m_widget );
|
||||||
|
|
||||||
m_windowStyle = wxSIMPLE_BORDER;
|
m_gdkDecor = (long) GDK_DECOR_BORDER;
|
||||||
|
m_gdkFunc = (long) GDK_FUNC_MOVE;
|
||||||
|
|
||||||
int x;
|
int x;
|
||||||
int y;
|
int y;
|
||||||
@@ -547,7 +552,8 @@ bool wxTopLevelWindowGTK::ShowFullScreen(bool show, long style )
|
|||||||
gtk_widget_hide( m_widget );
|
gtk_widget_hide( m_widget );
|
||||||
gtk_widget_unrealize( m_widget );
|
gtk_widget_unrealize( m_widget );
|
||||||
|
|
||||||
m_windowStyle = m_fsSaveStyle;
|
m_gdkFunc = m_fsSaveGdkFunc;
|
||||||
|
m_gdkDecor = m_fsSaveGdkDecor;
|
||||||
|
|
||||||
SetSize( m_fsSaveFrame.x, m_fsSaveFrame.y, m_fsSaveFrame.width, m_fsSaveFrame.height );
|
SetSize( m_fsSaveFrame.x, m_fsSaveFrame.y, m_fsSaveFrame.width, m_fsSaveFrame.height );
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user