Ignore:
Timestamp:
Feb 22, 2001, 7:18:59 PM (25 years ago)
Author:
sandervl
Message:

minimize updates + update region fix in NotifyFrameChanged

File:
1 edited

Legend:

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

    r5242 r5246  
    1 /* $Id: win32wbase.cpp,v 1.242 2001-02-22 10:37:31 sandervl Exp $ */
     1/* $Id: win32wbase.cpp,v 1.243 2001-02-22 18:18:59 sandervl Exp $ */
    22/*
    33 * Win32 Window Base Class for OS/2
     
    21802180 BOOL  rc,wasVisible,showFlag;
    21812181 RECT  newPos = {0, 0, 0, 0};
    2182  BOOL  fInvalidate = FALSE;
    21832182
    21842183    dprintf(("ShowWindow %x %x", getWindowHandle(), nCmdShow));
     
    22002199        /* fall through */
    22012200    case SW_MINIMIZE:
    2202 //testesteest
    22032201        if(!(getStyle() & WS_CHILD))
    22042202        {
     
    22122210            if( !(getStyle() & WS_MINIMIZE) ) {
    22132211                 swp |= MinMaximize(SW_MINIMIZE, &newPos );
    2214                  fInvalidate = TRUE;
    22152212            }
    22162213            else swp |= SWP_NOSIZE | SWP_NOMOVE;
    22172214        }
    2218 //testesteest
    22192215        break;
    22202216
     
    22532249         swp |= SWP_SHOWWINDOW | SWP_FRAMECHANGED;
    22542250
    2255          if( getStyle() & (WS_MINIMIZE | WS_MAXIMIZE) )
     2251         if( getStyle() & (WS_MINIMIZE | WS_MAXIMIZE) ) {
    22562252              swp |= MinMaximize(SW_RESTORE, &newPos );
     2253         }
    22572254         else swp |= SWP_NOSIZE | SWP_NOMOVE;
    22582255         break;
     
    22922289                              rectClient.bottom-rectClient.top));
    22932290        SendInternalMessageA(WM_MOVE,0,MAKELONG(rectClient.left,rectClient.top));
    2294     }
    2295     if(fInvalidate) {
    2296         InvalidateRect(getWindowHandle(), NULL, 1);
    22972291    }
    22982292END:
     
    25192513    else SendInternalMessageA(WM_WINDOWPOSCHANGED, 0, (LPARAM)wpos);
    25202514
     2515    //Calculate invalid areas
    25212516    rect = rectWindow;
    25222517    OffsetRect(&rect, -rectWindow.left, -rectWindow.top);
     
    25272522    }
    25282523    rect = rectClient;
    2529     OffsetRect(&rect, -rectClient.left, -rectClient.top);
    25302524    hrgnClient = CreateRectRgnIndirect(&rect);
    25312525    if (!hrgn) {
     
    25382532    if(!EqualRect(oldClientRect, &rectClient)) {
    25392533         UnionRect(oldClientRect, oldClientRect, &rectClient);
    2540          OffsetRect(oldClientRect, -rectClient.left, -rectClient.top);
    25412534         hrgnClient = CreateRectRgnIndirect(oldClientRect);
    25422535         if (!hrgn) {
     
    25472540         DeleteObject(hrgnClient);
    25482541    }
    2549     InvalidateRgn(getWindowHandle(), hrgn, TRUE);
     2542    RedrawWindow(getWindowHandle(), NULL, hrgn, RDW_ALLCHILDREN |
     2543                 RDW_INVALIDATE | RDW_ERASE | RDW_FRAME);
    25502544    DeleteObject(hrgn);
    25512545}
Note: See TracChangeset for help on using the changeset viewer.