Avoid calling gtk_window_get_position() from "configure-event" handler, if possible.
This avoids a round trip to the X server, which is expensive over a remote connection. Closes #15116 git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74664 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -94,6 +94,8 @@ public:
|
||||
|
||||
virtual void GTKHandleRealized();
|
||||
|
||||
void GTKConfigureEvent(int x, int y);
|
||||
|
||||
// do *not* call this to iconize the frame, this is a private function!
|
||||
void SetIconizeState(bool iconic);
|
||||
|
||||
@@ -108,7 +110,11 @@ public:
|
||||
m_gdkDecor;
|
||||
|
||||
// size of WM decorations
|
||||
wxSize m_decorSize;
|
||||
struct DecorSize
|
||||
{
|
||||
int left, right, top, bottom;
|
||||
};
|
||||
DecorSize m_decorSize;
|
||||
|
||||
// private gtk_timeout_add result for mimicing wxUSER_ATTENTION_INFO and
|
||||
// wxUSER_ATTENTION_ERROR difference, -2 for no hint, -1 for ERROR hint, rest for GtkTimeout handle.
|
||||
@@ -119,7 +125,7 @@ public:
|
||||
// return the size of the window without WM decorations
|
||||
void GTKDoGetSize(int *width, int *height) const;
|
||||
|
||||
void GTKUpdateDecorSize(const wxSize& decorSize);
|
||||
void GTKUpdateDecorSize(const DecorSize& decorSize);
|
||||
|
||||
protected:
|
||||
// give hints to the Window Manager for how the size
|
||||
@@ -145,7 +151,7 @@ protected:
|
||||
|
||||
private:
|
||||
void Init();
|
||||
wxSize& GetCachedDecorSize();
|
||||
DecorSize& GetCachedDecorSize();
|
||||
|
||||
// size hint increments
|
||||
int m_incWidth, m_incHeight;
|
||||
|
Reference in New Issue
Block a user