X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a2d93e735a9f126b855a9353ca8ddeacaaf52817..28be2e8a170979d476a5ea4f585505b8a2f5af27:/src/gtk/frame.cpp?ds=sidebyside diff --git a/src/gtk/frame.cpp b/src/gtk/frame.cpp index bb7d68e74f..71d58cae4d 100644 --- a/src/gtk/frame.cpp +++ b/src/gtk/frame.cpp @@ -447,6 +447,7 @@ void wxFrame::Init() m_menuBarDetached = FALSE; m_toolBarDetached = FALSE; m_insertInClientArea = TRUE; + m_isFrame = TRUE; m_isIconized = FALSE; m_fsIsShowing = FALSE; m_themeEnabled = TRUE; @@ -454,12 +455,24 @@ void wxFrame::Init() bool wxFrame::Create( wxWindow *parent, wxWindowID id, - const wxString &title, - const wxPoint &pos, - const wxSize &size, + const wxString& title, + const wxPoint& pos, + const wxSize& sizeOrig, long style, const wxString &name ) { + // always create a frame of some reasonable, even if arbitrary, size (at + // least for MSW compatibility) + wxSize size = sizeOrig; + if ( size.x == -1 || size.y == -1 ) + { + wxSize sizeDpy = wxGetDisplaySize(); + if ( size.x == -1 ) + size.x = sizeDpy.x / 3; + if ( size.y == -1 ) + size.y = sizeDpy.y / 5; + } + wxTopLevelWindows.Append( this ); m_needParent = FALSE;