get more accurate TLW sizing by using a window decorations cache
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48646 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -14,7 +14,6 @@
|
||||
|
||||
#include "wx/toplevel.h"
|
||||
|
||||
#ifdef __WXGTK20__
|
||||
#include <gtk/gtkversion.h>
|
||||
#if GTK_CHECK_VERSION(2, 1, 0)
|
||||
|
||||
@@ -25,7 +24,9 @@ public:
|
||||
|
||||
// Returns true if SYSTRAY protocol is supported by the desktop
|
||||
bool IsProtocolSupported();
|
||||
|
||||
|
||||
virtual bool IsDecorCacheable() const;
|
||||
|
||||
wxEvtHandler *m_invokingWindow;
|
||||
|
||||
protected:
|
||||
@@ -34,6 +35,5 @@ protected:
|
||||
#endif // wxUSE_MENUS_NATIVE
|
||||
};
|
||||
|
||||
#endif // __WXGTK20__
|
||||
#endif // GTK_CHECK_VERSION(2, 1, 0)
|
||||
#endif // _WX_GTK_TASKBARPRIV_H_
|
||||
|
@@ -94,11 +94,11 @@ public:
|
||||
GtkWidget *m_mainWidget;
|
||||
|
||||
bool m_fsIsShowing; /* full screen */
|
||||
long m_fsSaveGdkFunc, m_fsSaveGdkDecor;
|
||||
int m_fsSaveGdkFunc, m_fsSaveGdkDecor;
|
||||
wxRect m_fsSaveFrame;
|
||||
|
||||
// m_windowStyle translated to GDK's terms
|
||||
long m_gdkFunc,
|
||||
int m_gdkFunc,
|
||||
m_gdkDecor;
|
||||
|
||||
bool m_sizeSet;
|
||||
@@ -113,11 +113,14 @@ public:
|
||||
int maxW = wxDefaultCoord, int maxH = wxDefaultCoord,
|
||||
int incW = wxDefaultCoord, int incH = wxDefaultCoord );
|
||||
|
||||
// return the full size of the window without WM decorations
|
||||
// return the size of the window without WM decorations
|
||||
void GTKDoGetSize(int *width, int *height) const;
|
||||
|
||||
void GtkUpdateSize() { m_sizeSet = false; }
|
||||
|
||||
// whether frame extents are accurate
|
||||
virtual bool IsDecorCacheable() const;
|
||||
|
||||
protected:
|
||||
// common part of all ctors
|
||||
void Init();
|
||||
@@ -126,7 +129,6 @@ protected:
|
||||
virtual void DoMoveWindow(int x, int y, int width, int height);
|
||||
|
||||
// take into account WM decorations here
|
||||
virtual void DoGetSize(int *width, int *height) const;
|
||||
virtual void DoSetSize(int x, int y,
|
||||
int width, int height,
|
||||
int sizeFlags = wxSIZE_AUTO);
|
||||
@@ -134,11 +136,6 @@ protected:
|
||||
// override these methods to take into account tool/menu/statusbars
|
||||
virtual void DoGetClientSize(int *width, int *height) const;
|
||||
|
||||
// this method takes the size of the window not taking account of
|
||||
// decorations
|
||||
void GTKDoSetSize(int width, int height);
|
||||
|
||||
|
||||
// string shown in the title bar
|
||||
wxString m_title;
|
||||
|
||||
|
Reference in New Issue
Block a user