Ignore:
Timestamp:
Feb 20, 2001, 6:22:06 PM (25 years ago)
Author:
sandervl
Message:

MDI activation fixes

File:
1 edited

Legend:

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

    r5215 r5217  
    1 /* $Id: win32wbase.cpp,v 1.238 2001-02-20 15:40:22 sandervl Exp $ */
     1/* $Id: win32wbase.cpp,v 1.239 2001-02-20 17:22:05 sandervl Exp $ */
    22/*
    33 * Win32 Window Base Class for OS/2
     
    925925        return 0;
    926926    }
    927     /* child windows get WM_CHILDACTIVATE message */
     927    /* child windows get a WM_CHILDACTIVATE message */
    928928    if((getStyle() & (WS_CHILD | WS_POPUP)) == WS_CHILD )
    929929    {
    930         SendInternalMessageA(WM_CHILDACTIVATE, 0, 0L);
     930        if(fActivate) {//WM_CHILDACTIVE is for activation only
     931            SendInternalMessageA(WM_CHILDACTIVATE, 0, 0L);
     932        }
    931933        return 0;
    932934    }
     
    24292431    }
    24302432
    2431 //testestest
     2433    //Restore window origin of parent window with CS_OWNDC style
     2434    //(fixes paint offset problems in Opera windows)
    24322435    if(getParent() && getParent()->isOwnDC()) {
    24332436        dprintfOrigin(getParent()->getOwnDC());
    24342437        selectClientArea(getParent(), getParent()->getOwnDC());
    24352438    }
    2436 //testestest
    24372439
    24382440    if((fuFlags & SWP_FRAMECHANGED) && (fuFlags & (SWP_NOMOVE | SWP_NOSIZE) == (SWP_NOMOVE | SWP_NOSIZE)))
     
    31143116    hwndActive = GetActiveWindow();
    31153117    return (hwndActive) ? hwndActive : windowDesktop->getWindowHandle(); //pretend the desktop was active
     3118}
     3119//******************************************************************************
     3120//Used to change active status of an mdi window
     3121//******************************************************************************
     3122BOOL Win32BaseWindow::DeactivateChildWindow()
     3123{
     3124    /* child windows get a WM_CHILDACTIVATE message */
     3125    if((getStyle() & (WS_CHILD | WS_POPUP)) == WS_CHILD )
     3126    {
     3127        ULONG flags = OSLibWinGetWindowULong(getOS2WindowHandle(), OFFSET_WIN32FLAGS);
     3128        OSLibWinSetWindowULong(getOS2WindowHandle(), OFFSET_WIN32FLAGS, (flags & ~WINDOWFLAG_ACTIVE));
     3129        return TRUE;
     3130    }
     3131    DebugInt3();    //should not be called for non-child window
     3132    return FALSE;
    31163133}
    31173134//******************************************************************************
Note: See TracChangeset for help on using the changeset viewer.