diff --git a/hw/xwin/ChangeLog b/hw/xwin/ChangeLog index 5c6339152..a4abd46c4 100644 --- a/hw/xwin/ChangeLog +++ b/hw/xwin/ChangeLog @@ -1,3 +1,9 @@ +2004-11-06 Alexander Gottwald + + * winwndproc.c, wintrayicon.c, winscrinit.c: + * winmultiwindowwindow.c: + Wrap all mwextwm and internalwm code with XWIN_MULTIWINDOWEXTWM + 2004-11-04 Kensuke Matsuzaki * InitOutput.c: (winUseMsg): diff --git a/hw/xwin/winmultiwindowwindow.c b/hw/xwin/winmultiwindowwindow.c index a9fff7a65..7c369a4a4 100644 --- a/hw/xwin/winmultiwindowwindow.c +++ b/hw/xwin/winmultiwindowwindow.c @@ -813,7 +813,9 @@ winMinimizeWindow (Window id) { WindowPtr pWin; winPrivWinPtr pWinPriv; +#ifdef XWIN_MULTIWINDOWEXTWM win32RootlessWindowPtr pRLWinPriv; +#endif HWND hWnd; ScreenPtr pScreen = NULL; winPrivScreenPtr pScreenPriv = NULL; @@ -829,12 +831,16 @@ winMinimizeWindow (Window id) if (pScreen) pScreenPriv = winGetScreenPriv(pScreen); if (pScreenPriv) pScreenInfo = pScreenPriv->pScreenInfo; +#ifdef XWIN_MULTIWINDOWEXTWM if (pScreenPriv && pScreenInfo->fInternalWM) { pRLWinPriv = (win32RootlessWindowPtr) RootlessFrameForWindow (pWin, FALSE); hWnd = pRLWinPriv->hWnd; } else +#else + if (pScreenPriv) +#endif { pWinPriv = winGetWindowPriv (pWin); hWnd = pWinPriv->hWnd; diff --git a/hw/xwin/winscrinit.c b/hw/xwin/winscrinit.c index 63de01fee..07332dc51 100644 --- a/hw/xwin/winscrinit.c +++ b/hw/xwin/winscrinit.c @@ -585,24 +585,32 @@ winFinishScreenInitFB (int index, pScreenPriv->fRestacking = FALSE; #endif +#if defined(XWIN_MULTIWINDOW) || defined(XWIN_MULTIWINDOWEXTWM) + if (FALSE #ifdef XWIN_MULTIWINDOW + || pScreenInfo->fMultiWindow +#endif +#ifdef XWIN_MULTIWINDOWEXTWM + || pScreenInfo->fInternalWM +#endif + ) + { #if CYGDEBUG || YES - if (pScreenInfo->fMultiWindow) - winDebug ("winFinishScreenInitFB - Calling winInitWM.\n"); + winDebug ("winFinishScreenInitFB - Calling winInitWM.\n"); #endif - /* Initialize multi window mode */ - if ((pScreenInfo->fMultiWindow || pScreenInfo->fInternalWM) - && !winInitWM (&pScreenPriv->pWMInfo, - &pScreenPriv->ptWMProc, - &pScreenPriv->ptXMsgProc, - &pScreenPriv->pmServerStarted, - pScreenInfo->dwScreen, - (HWND)&pScreenPriv->hwndScreen)) - { - ErrorF ("winFinishScreenInitFB - winInitWM () failed.\n"); - return FALSE; - } + /* Initialize multi window mode */ + if (!winInitWM (&pScreenPriv->pWMInfo, + &pScreenPriv->ptWMProc, + &pScreenPriv->ptXMsgProc, + &pScreenPriv->pmServerStarted, + pScreenInfo->dwScreen, + (HWND)&pScreenPriv->hwndScreen)) + { + ErrorF ("winFinishScreenInitFB - winInitWM () failed.\n"); + return FALSE; + } + } #endif /* Tell the server that we are enabled */ diff --git a/hw/xwin/wintrayicon.c b/hw/xwin/wintrayicon.c index 7eeaa6a90..2b8bc6c61 100755 --- a/hw/xwin/wintrayicon.c +++ b/hw/xwin/wintrayicon.c @@ -119,8 +119,10 @@ winHandleIconMessage (HWND hwnd, UINT message, /* Restack and bring all windows to top */ SetForegroundWindow (hwnd); +#ifdef XWIN_MULTIWINDOWEXTWM if (pScreenInfo->fMWExtWM) winMWExtWMRestackWindows (pScreenInfo->pScreen); +#endif break; case WM_LBUTTONDBLCLK: diff --git a/hw/xwin/winwndproc.c b/hw/xwin/winwndproc.c index ab9b08a27..2cfb78eaa 100644 --- a/hw/xwin/winwndproc.c +++ b/hw/xwin/winwndproc.c @@ -1154,12 +1154,14 @@ winWindowProc (HWND hwnd, UINT message, /* Call engine specific screen activation/deactivation function */ (*s_pScreenPriv->pwinActivateApp) (s_pScreen); +#ifdef XWIN_MULTIWINDOWEXTWM if (s_pScreenPriv->fActive) { /* Restack all window unless using built-in wm. */ if (s_pScreenInfo->fInternalWM && s_pScreenInfo->fAnotherWMRunning) winMWExtWMRestackWindows (s_pScreen); } +#endif return 0; @@ -1219,6 +1221,7 @@ winWindowProc (HWND hwnd, UINT message, } break; +#ifdef XWIN_MULTIWINDOWEXTWM case WM_MANAGE: ErrorF ("winWindowProc - WM_MANAGE\n"); s_pScreenInfo->fAnotherWMRunning = FALSE; @@ -1240,6 +1243,7 @@ winWindowProc (HWND hwnd, UINT message, winMWExtWMRestackWindows (s_pScreen); } break; +#endif default: if(message == s_uTaskbarRestart)