src/windows/native/sun/windows/awt_Window.cpp

Print this page

        

*** 196,205 **** --- 196,206 ---- ms_instanceCounter++; m_grabbed = FALSE; m_isFocusableWindow = TRUE; m_isRetainingHierarchyZOrder = FALSE; m_filterFocusAndActivation = FALSE; + m_isSnapResizing = FALSE; if (AwtWindow::ms_instanceCounter == 1) { AwtWindow::ms_hCBTFilter = ::SetWindowsHookEx(WH_CBT, (HOOKPROC)AwtWindow::CBTFilter, 0, AwtToolkit::MainThread());
*** 1724,1733 **** --- 1725,1736 ---- return AwtComponent::WmMove(x, y); } MsgRouting AwtWindow::WmGetMinMaxInfo(LPMINMAXINFO lpmmi) { + m_isSnapResizing = FALSE; + MsgRouting r = AwtCanvas::WmGetMinMaxInfo(lpmmi); if ((m_minSize.x == 0) && (m_minSize.y == 0)) { return r; } lpmmi->ptMinTrackSize.x = m_minSize.x;
*** 1764,1773 **** --- 1767,1778 ---- * java AWT target's dimension fields directly, since Windows * and below can be resized from outside of java (by user) */ MsgRouting AwtWindow::WmSize(UINT type, int w, int h) { + m_isSnapResizing = TRUE; + currentWmSizeState = type; if (type == SIZE_MINIMIZED) { UpdateSecurityWarningVisibility(); return mrDoDefault;
*** 1879,1889 **** mr = WmSysCommand(wParam, GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); if (mr != mrConsume) { AwtWindow::DefWindowProc(message, wParam, lParam); } AwtWindow::sm_resizing = FALSE; ! if (!AwtToolkit::GetInstance().IsDynamicLayoutActive()) { WindowResized(); } mr = mrConsume; } break; --- 1884,1894 ---- mr = WmSysCommand(wParam, GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); if (mr != mrConsume) { AwtWindow::DefWindowProc(message, wParam, lParam); } AwtWindow::sm_resizing = FALSE; ! if (!AwtToolkit::GetInstance().IsDynamicLayoutActive() || m_isSnapResizing) { WindowResized(); } mr = mrConsume; } break;