X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ffd84c9476298154de52e55cd9dff3572c68ab18..6267c3ead97c886de97f4d6ce7831504ac3eb1a1:/src/x11/toplevel.cpp diff --git a/src/x11/toplevel.cpp b/src/x11/toplevel.cpp index eae804059d..9d16c98353 100644 --- a/src/x11/toplevel.cpp +++ b/src/x11/toplevel.cpp @@ -24,18 +24,19 @@ #pragma hdrstop #endif +#include "wx/toplevel.h" + #ifndef WX_PRECOMP #include "wx/app.h" - #include "wx/toplevel.h" #include "wx/string.h" #include "wx/log.h" #include "wx/intl.h" #include "wx/frame.h" #include "wx/menu.h" #include "wx/statusbr.h" + #include "wx/settings.h" #endif //WX_PRECOMP -#include "wx/settings.h" #include "wx/x11/private.h" #include "X11/Xutil.h" @@ -267,7 +268,7 @@ void wxTopLevelWindowX11::OnInternalIdle() { wxSizeEvent event( GetClientSize(), GetId() ); event.SetEventObject( this ); - GetEventHandler()->ProcessEvent( event ); + HandleWindowEvent( event ); m_needResizeInIdle = false; } @@ -284,7 +285,7 @@ bool wxTopLevelWindowX11::Show(bool show) wxSizeEvent event(GetSize(), GetId()); event.SetEventObject(this); - GetEventHandler()->ProcessEvent(event); + HandleWindowEvent(event); m_needResizeInIdle = false; } @@ -298,7 +299,7 @@ bool wxTopLevelWindowX11::Show(bool show) // wxTopLevelWindowX11 maximize/minimize // ---------------------------------------------------------------------------- -void wxTopLevelWindowX11::Maximize(bool maximize) +void wxTopLevelWindowX11::Maximize(bool WXUNUSED(maximize)) { // TODO } @@ -311,6 +312,12 @@ bool wxTopLevelWindowX11::IsMaximized() const void wxTopLevelWindowX11::Iconize(bool iconize) { + if ( !iconize ) + { + Restore(); + return; + } + if (!m_iconized && GetMainWindow()) { if (XIconifyWindow(wxGlobalDisplay(), @@ -372,8 +379,7 @@ void wxTopLevelWindowX11::DoSetIcon(const wxIcon& icon) { if (icon.Ok() && GetMainWindow()) { -#if wxUSE_NANOX -#else +#if !wxUSE_NANOX XWMHints *wmHints = XAllocWMHints(); wmHints->icon_pixmap = (Pixmap) icon.GetPixmap(); @@ -696,10 +702,10 @@ bool wxSetWMDecorations(Window w, long style) // The default dialog style doesn't include any kind // of border, which is a bit odd. Anyway, inclusion // of a caption surely implies a border. - style |= wxTHICK_FRAME; + style |= wxRESIZE_BORDER; } - if (style & wxTHICK_FRAME) + if (style & wxRESIZE_BORDER) { wmProp.props |= GR_WM_PROPS_APPFRAME ; wmProp.flags |= GR_WM_FLAGS_PROPS ; @@ -721,7 +727,7 @@ bool wxSetWMDecorations(Window w, long style) wmProp.flags |= GR_WM_FLAGS_PROPS ; } - if (((style & wxBORDER) != wxBORDER) && ((style & wxTHICK_FRAME) != wxTHICK_FRAME) + if (((style & wxBORDER) != wxBORDER) && ((style & wxRESIZE_BORDER) != wxRESIZE_BORDER) && ((style & wxRESIZE_BORDER) != wxRESIZE_BORDER)) { wmProp.props |= GR_WM_PROPS_NODECORATE ;