From bdf9b26bff9153bd5ee8fe186a370a4fbf33221a Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sun, 14 Apr 2024 14:29:37 +0300 Subject: prevent CDlgBase from executing useless resize attempts --- src/mir_core/src/Windows/CDlgBase.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/mir_core') diff --git a/src/mir_core/src/Windows/CDlgBase.cpp b/src/mir_core/src/Windows/CDlgBase.cpp index ac71f76d4e..40b762ced8 100644 --- a/src/mir_core/src/Windows/CDlgBase.cpp +++ b/src/mir_core/src/Windows/CDlgBase.cpp @@ -247,6 +247,8 @@ INT_PTR CDlgBase::DlgProc(UINT msg, WPARAM wParam, LPARAM lParam) m_bInitialized = m_bSucceeded = false; TranslateDialog_LP(m_hwnd, &m_pPlugin); + GetClientRect(m_hwnd, &m_rcPrev); + ::EnumChildWindows(m_hwnd, &GlobalFieldEnum, LPARAM(this)); NotifyControls(&CCtrlBase::OnInit); @@ -399,7 +401,12 @@ INT_PTR CDlgBase::DlgProc(UINT msg, WPARAM wParam, LPARAM lParam) break; case WM_SIZE: - OnResize(); + RECT rc; + GetClientRect(m_hwnd, &rc); + if (memcmp(&m_rcPrev, &rc, sizeof(RECT))) { + OnResize(); + m_rcPrev = rc; + } return TRUE; case WM_TIMER: -- cgit v1.2.3