Ignore:
Timestamp:
Mar 20, 2002, 11:30:08 AM (23 years ago)
Author:
sandervl
Message:

Changes & fixes for minimized windows

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/win32wbase.cpp

    r8101 r8105  
    1 /* $Id: win32wbase.cpp,v 1.317 2002-03-18 15:26:30 sandervl Exp $ */
     1/* $Id: win32wbase.cpp,v 1.318 2002-03-20 10:30:07 sandervl Exp $ */
    22/*
    33 * Win32 Window Base Class for OS/2
     
    12801280       (pUpdateRect->right >= client.left) && (pUpdateRect->right < client.right) &&
    12811281       (pUpdateRect->top  >= client.top) && (pUpdateRect->top < client.bottom) &&
    1282        (pUpdateRect->bottom >= client.top) && (pUpdateRect->bottom < client.bottom))
     1282       (pUpdateRect->bottom >= client.top) && (pUpdateRect->bottom < client.bottom)
     1283       && (!(getStyle() & WS_MINIMIZE)))
    12831284    {
    12841285        return 0;
     
    12891290
    12901291    rc = SendMessageA(getWindowHandle(),WM_NCPAINT, hrgn, 0);
     1292    //Send WM_PAINTICON here if minimized, because client window will
     1293    //not receive a (valid) WM_PAINT message
     1294    if (getStyle() & WS_MINIMIZE)
     1295    {
     1296        rc = SendMessageA(getWindowHandle(),WM_PAINTICON, 1, 0);
     1297    }
    12911298
    12921299    DeleteObject(hrgn);
     
    17881795    case WM_PRINT:
    17891796        return DefWndPrint(wParam,lParam);
     1797
     1798    case WM_SYNCPAINT:
     1799        RedrawWindow(getWindowHandle(), NULL, 0, RDW_ERASENOW | RDW_ERASE | RDW_ALLCHILDREN);
     1800        return 0;
    17901801
    17911802    case WM_PAINTICON:
     
    22772288    case SW_RESTORE:
    22782289         dprintf(("ShowWindow:restoring window"));
    2279          //Set client rectangle to 0 (contains negative values)
    2280          setClientRect(0,0,0,0);
    22812290
    22822291         swp |= SWP_SHOWWINDOW | SWP_FRAMECHANGED;
     
    23002309        swp |= SWP_NOACTIVATE | SWP_NOZORDER;
    23012310
    2302     SetWindowPos(HWND_TOP, newPos.left, newPos.top, newPos.right, newPos.bottom, LOWORD(swp));
     2311    dprintf(("ShowWindow : SetWindowPos now"));   
     2312    if (!(getStyle() & WS_MINIMIZE)) {
     2313         SetWindowPos(HWND_TOP, newPos.left, newPos.top, newPos.right, newPos.bottom, LOWORD(swp));
     2314    }
     2315    else OSLibWinMinimizeWindow(getOS2FrameWindowHandle());
    23032316
    23042317    if(!(swp & SWP_NOACTIVATE)) {
Note: See TracChangeset for help on using the changeset viewer.