diff options
author | marha <marha@users.sourceforge.net> | 2012-03-26 14:23:28 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2012-03-26 14:23:28 +0200 |
commit | 76bcc36ed305418a3ddc5752d287ede894243e1b (patch) | |
tree | bacb320c825768471ce56f058f17ce863d592376 /xorg-server/hw/xwin/winrandr.c | |
parent | 7d894e32566b710952c44cbc71939ad1d9e2fa8d (diff) | |
parent | 0f834b91a4768673833ab4917e87d86c237bb1a6 (diff) | |
download | vcxsrv-76bcc36ed305418a3ddc5752d287ede894243e1b.tar.gz vcxsrv-76bcc36ed305418a3ddc5752d287ede894243e1b.tar.bz2 vcxsrv-76bcc36ed305418a3ddc5752d287ede894243e1b.zip |
Merge remote-tracking branch 'origin/released'
Conflicts:
pixman/pixman/pixman-mmx.c
xorg-server/Xext/shm.c
xorg-server/Xext/syncsrv.h
xorg-server/Xext/xvmain.c
xorg-server/Xi/exevents.c
xorg-server/Xi/opendev.c
xorg-server/composite/compalloc.c
xorg-server/composite/compoverlay.c
xorg-server/dix/colormap.c
xorg-server/dix/devices.c
xorg-server/dix/dispatch.c
xorg-server/dix/dixfonts.c
xorg-server/dix/eventconvert.c
xorg-server/dix/events.c
xorg-server/dix/gc.c
xorg-server/dix/getevents.c
xorg-server/dix/main.c
xorg-server/dix/privates.c
xorg-server/dix/registry.c
xorg-server/dix/resource.c
xorg-server/exa/exa_accel.c
xorg-server/exa/exa_migration_classic.c
xorg-server/exa/exa_unaccel.c
xorg-server/fb/fb.h
xorg-server/fb/fbcopy.c
xorg-server/fb/fbpixmap.c
xorg-server/glx/dispatch.h
xorg-server/glx/glapi.h
xorg-server/glx/glapi_gentable.c
xorg-server/glx/glapitable.h
xorg-server/glx/glprocs.h
xorg-server/glx/glxcmds.c
xorg-server/glx/glxcmdsswap.c
xorg-server/glx/glxdricommon.c
xorg-server/glx/glxdriswrast.c
xorg-server/glx/glxext.c
xorg-server/glx/indirect_dispatch.c
xorg-server/glx/indirect_dispatch.h
xorg-server/glx/indirect_dispatch_swap.c
xorg-server/glx/indirect_size.h
xorg-server/glx/indirect_size_get.h
xorg-server/glx/indirect_table.c
xorg-server/glx/indirect_util.c
xorg-server/glx/rensize.c
xorg-server/glx/single2swap.c
xorg-server/glx/singlepix.c
xorg-server/glx/singlepixswap.c
xorg-server/glx/singlesize.c
xorg-server/hw/dmx/dmxinit.c
xorg-server/hw/kdrive/ephyr/ephyr.c
xorg-server/hw/kdrive/ephyr/hostx.c
xorg-server/hw/kdrive/ephyr/hostx.h
xorg-server/hw/kdrive/src/kinput.c
xorg-server/hw/xfree86/common/compiler.h
xorg-server/hw/xwin/InitInput.c
xorg-server/hw/xwin/InitOutput.c
xorg-server/hw/xwin/ddraw.h
xorg-server/hw/xwin/glx/glwrap.c
xorg-server/hw/xwin/glx/indirect.c
xorg-server/hw/xwin/glx/wgl_ext_api.h
xorg-server/hw/xwin/glx/winpriv.c
xorg-server/hw/xwin/win.h
xorg-server/hw/xwin/winallpriv.c
xorg-server/hw/xwin/winauth.c
xorg-server/hw/xwin/winclipboard.h
xorg-server/hw/xwin/winclipboardinit.c
xorg-server/hw/xwin/winclipboardthread.c
xorg-server/hw/xwin/winclipboardunicode.c
xorg-server/hw/xwin/winclipboardwndproc.c
xorg-server/hw/xwin/winclipboardwrappers.c
xorg-server/hw/xwin/winclipboardxevents.c
xorg-server/hw/xwin/wincmap.c
xorg-server/hw/xwin/winconfig.c
xorg-server/hw/xwin/wincreatewnd.c
xorg-server/hw/xwin/wincursor.c
xorg-server/hw/xwin/windialogs.c
xorg-server/hw/xwin/winengine.c
xorg-server/hw/xwin/winerror.c
xorg-server/hw/xwin/wingc.c
xorg-server/hw/xwin/wingetsp.c
xorg-server/hw/xwin/winkeybd.c
xorg-server/hw/xwin/winkeybd.h
xorg-server/hw/xwin/winlayouts.h
xorg-server/hw/xwin/winmisc.c
xorg-server/hw/xwin/winmonitors.c
xorg-server/hw/xwin/winmouse.c
xorg-server/hw/xwin/winmsg.c
xorg-server/hw/xwin/winmsg.h
xorg-server/hw/xwin/winmultiwindowclass.c
xorg-server/hw/xwin/winmultiwindowicons.c
xorg-server/hw/xwin/winmultiwindowshape.c
xorg-server/hw/xwin/winmultiwindowwindow.c
xorg-server/hw/xwin/winmultiwindowwm.c
xorg-server/hw/xwin/winmultiwindowwndproc.c
xorg-server/hw/xwin/winnativegdi.c
xorg-server/hw/xwin/winpfbdd.c
xorg-server/hw/xwin/winpixmap.c
xorg-server/hw/xwin/winpolyline.c
xorg-server/hw/xwin/winprefs.c
xorg-server/hw/xwin/winprocarg.c
xorg-server/hw/xwin/winregistry.c
xorg-server/hw/xwin/winscrinit.c
xorg-server/hw/xwin/winsetsp.c
xorg-server/hw/xwin/winshaddd.c
xorg-server/hw/xwin/winshadddnl.c
xorg-server/hw/xwin/winshadgdi.c
xorg-server/hw/xwin/wintrayicon.c
xorg-server/hw/xwin/winwin32rootless.c
xorg-server/hw/xwin/winwin32rootlesswindow.c
xorg-server/hw/xwin/winwin32rootlesswndproc.c
xorg-server/hw/xwin/winwindow.c
xorg-server/hw/xwin/winwindow.h
xorg-server/hw/xwin/winwindowswm.c
xorg-server/hw/xwin/winwndproc.c
xorg-server/include/callback.h
xorg-server/include/dixstruct.h
xorg-server/include/misc.h
xorg-server/include/os.h
xorg-server/include/scrnintstr.h
xorg-server/mi/micmap.c
xorg-server/mi/miinitext.c
xorg-server/mi/mioverlay.c
xorg-server/mi/misprite.c
xorg-server/mi/mivaltree.c
xorg-server/mi/miwindow.c
xorg-server/miext/damage/damage.c
xorg-server/miext/rootless/rootlessGC.c
xorg-server/miext/rootless/rootlessWindow.c
xorg-server/os/WaitFor.c
xorg-server/os/access.c
xorg-server/os/connection.c
xorg-server/os/io.c
xorg-server/os/log.c
xorg-server/os/osinit.c
xorg-server/os/utils.c
xorg-server/os/xdmcp.c
xorg-server/os/xprintf.c
xorg-server/os/xstrans.c
xorg-server/render/mipict.c
xorg-server/xkb/xkbActions.c
xorg-server/xkb/xkbInit.c
xorg-server/xkeyboard-config/compat/default.in
Diffstat (limited to 'xorg-server/hw/xwin/winrandr.c')
-rw-r--r-- | xorg-server/hw/xwin/winrandr.c | 228 |
1 files changed, 112 insertions, 116 deletions
diff --git a/xorg-server/hw/xwin/winrandr.c b/xorg-server/hw/xwin/winrandr.c index 596c1ab9d..1b340850c 100644 --- a/xorg-server/hw/xwin/winrandr.c +++ b/xorg-server/hw/xwin/winrandr.c @@ -34,163 +34,159 @@ #include <xwin-config.h> #endif #include "win.h" -#include "mivalidate.h" // for union _Validate used by windowstr.h +#include "mivalidate.h" // for union _Validate used by windowstr.h #ifndef RANDR_12_INTERFACE #error X server must have RandR 1.2 interface #endif - /* * Answer queries about the RandR features supported. */ static Bool -winRandRGetInfo (ScreenPtr pScreen, Rotation *pRotations) +winRandRGetInfo(ScreenPtr pScreen, Rotation * pRotations) { - winDebug ("winRandRGetInfo ()\n"); + winDebug("winRandRGetInfo ()\n"); - /* Don't support rotations */ - *pRotations = RR_Rotate_0; + /* Don't support rotations */ + *pRotations = RR_Rotate_0; - /* - The screen doesn't have to be limited to the actual - monitor size (we can have scrollbars :-), so what is - the upper limit? - */ - RRScreenSetSizeRange(pScreen, 0, 0, 4096, 4096); + /* + The screen doesn't have to be limited to the actual + monitor size (we can have scrollbars :-), so what is + the upper limit? + */ + RRScreenSetSizeRange(pScreen, 0, 0, 4096, 4096); - return TRUE; + return TRUE; } /* */ void -winDoRandRScreenSetSize (ScreenPtr pScreen, - CARD16 width, - CARD16 height, - CARD32 mmWidth, - CARD32 mmHeight) +winDoRandRScreenSetSize(ScreenPtr pScreen, + CARD16 width, + CARD16 height, CARD32 mmWidth, CARD32 mmHeight) { - winScreenPriv(pScreen); - winScreenInfo *pScreenInfo = pScreenPriv->pScreenInfo; - WindowPtr pRoot = pScreen->root; + winScreenPriv(pScreen); + winScreenInfo *pScreenInfo = pScreenPriv->pScreenInfo; + WindowPtr pRoot = pScreen->root; - // Prevent screen updates while we change things around - SetRootClip(pScreen, FALSE); + // Prevent screen updates while we change things around + SetRootClip(pScreen, FALSE); - /* Update the screen size as requested */ - pScreenInfo->dwWidth = width; - pScreenInfo->dwHeight = height; + /* Update the screen size as requested */ + pScreenInfo->dwWidth = width; + pScreenInfo->dwHeight = height; - /* Reallocate the framebuffer used by the drawing engine */ - (*pScreenPriv->pwinFreeFB)(pScreen); - if (!(*pScreenPriv->pwinAllocateFB)(pScreen)) - { - ErrorF ("winDoRandRScreenSetSize - Could not reallocate framebuffer\n"); + /* Reallocate the framebuffer used by the drawing engine */ + (*pScreenPriv->pwinFreeFB) (pScreen); + if (!(*pScreenPriv->pwinAllocateFB) (pScreen)) { + ErrorF("winDoRandRScreenSetSize - Could not reallocate framebuffer\n"); } - pScreen->width = width; - pScreen->height = height; - pScreen->mmWidth = mmWidth; - pScreen->mmHeight = mmHeight; + pScreen->width = width; + pScreen->height = height; + pScreen->mmWidth = mmWidth; + pScreen->mmHeight = mmHeight; - /* Update the screen pixmap to point to the new framebuffer */ - winUpdateFBPointer(pScreen, pScreenInfo->pfb); + /* Update the screen pixmap to point to the new framebuffer */ + winUpdateFBPointer(pScreen, pScreenInfo->pfb); - // pScreen->devPrivate == pScreen->GetScreenPixmap(screen) ? - // resize the root window - //pScreen->ResizeWindow(pRoot, 0, 0, width, height, NULL); - // does this emit a ConfigureNotify?? + // pScreen->devPrivate == pScreen->GetScreenPixmap(screen) ? + // resize the root window + //pScreen->ResizeWindow(pRoot, 0, 0, width, height, NULL); + // does this emit a ConfigureNotify?? - // Restore the ability to update screen, now with new dimensions - SetRootClip(pScreen, TRUE); + // Restore the ability to update screen, now with new dimensions + SetRootClip(pScreen, TRUE); - // and arrange for it to be repainted - miPaintWindow(pRoot, &pRoot->borderClip, PW_BACKGROUND); + // and arrange for it to be repainted + miPaintWindow(pRoot, &pRoot->borderClip, PW_BACKGROUND); - /* Indicate that a screen size change took place */ - RRScreenSizeNotify(pScreen); + /* Indicate that a screen size change took place */ + RRScreenSizeNotify(pScreen); } /* * Respond to resize request */ static -Bool -winRandRScreenSetSize (ScreenPtr pScreen, - CARD16 width, - CARD16 height, - CARD32 mmWidth, - CARD32 mmHeight) + Bool +winRandRScreenSetSize(ScreenPtr pScreen, + CARD16 width, + CARD16 height, CARD32 mmWidth, CARD32 mmHeight) { - winScreenPriv(pScreen); - winScreenInfo *pScreenInfo = pScreenPriv->pScreenInfo; + winScreenPriv(pScreen); + winScreenInfo *pScreenInfo = pScreenPriv->pScreenInfo; - winDebug ("winRandRScreenSetSize ()\n"); + winDebug("winRandRScreenSetSize ()\n"); - /* - It doesn't currently make sense to allow resize in fullscreen mode - (we'd actually have to list the supported resolutions) - */ - if (pScreenInfo->fFullScreen) - { - ErrorF ("winRandRScreenSetSize - resize not supported in fullscreen mode\n"); - return FALSE; + /* + It doesn't currently make sense to allow resize in fullscreen mode + (we'd actually have to list the supported resolutions) + */ + if (pScreenInfo->fFullScreen) { + ErrorF + ("winRandRScreenSetSize - resize not supported in fullscreen mode\n"); + return FALSE; } - /* - Client resize requests aren't allowed in rootless modes, even if - the X screen is monitor or virtual desktop size, we'd need to - resize the native display size - */ - if (FALSE + /* + Client resize requests aren't allowed in rootless modes, even if + the X screen is monitor or virtual desktop size, we'd need to + resize the native display size + */ + if (FALSE #ifdef XWIN_MULTIWINDOWEXTWM - || pScreenInfo->fMWExtWM + || pScreenInfo->fMWExtWM #endif - || pScreenInfo->fRootless + || pScreenInfo->fRootless #ifdef XWIN_MULTIWINDOW - || pScreenInfo->fMultiWindow + || pScreenInfo->fMultiWindow #endif - ) - { - ErrorF ("winRandRScreenSetSize - resize not supported in rootless modes\n"); - return FALSE; + ) { + ErrorF + ("winRandRScreenSetSize - resize not supported in rootless modes\n"); + return FALSE; } - winDoRandRScreenSetSize(pScreen, width, height, mmWidth, mmHeight); + winDoRandRScreenSetSize(pScreen, width, height, mmWidth, mmHeight); - /* Cause the native window for the screen to resize itself */ - { - DWORD dwStyle, dwExStyle; - RECT rcClient; + /* Cause the native window for the screen to resize itself */ + { + DWORD dwStyle, dwExStyle; + RECT rcClient; - rcClient.left = 0; - rcClient.top = 0; - rcClient.right = width; - rcClient.bottom = height; + rcClient.left = 0; + rcClient.top = 0; + rcClient.right = width; + rcClient.bottom = height; - ErrorF ("winRandRScreenSetSize new client area w: %d h: %d\n", width, height); + ErrorF("winRandRScreenSetSize new client area w: %d h: %d\n", width, + height); - /* Get the Windows window style and extended style */ - dwExStyle = GetWindowLongPtr(pScreenPriv->hwndScreen, GWL_EXSTYLE); - dwStyle = GetWindowLongPtr(pScreenPriv->hwndScreen, GWL_STYLE); + /* Get the Windows window style and extended style */ + dwExStyle = GetWindowLongPtr(pScreenPriv->hwndScreen, GWL_EXSTYLE); + dwStyle = GetWindowLongPtr(pScreenPriv->hwndScreen, GWL_STYLE); - /* - * Calculate the window size needed for the given client area - * adjusting for any decorations it will have - */ - AdjustWindowRectEx(&rcClient, dwStyle, FALSE, dwExStyle); + /* + * Calculate the window size needed for the given client area + * adjusting for any decorations it will have + */ + AdjustWindowRectEx(&rcClient, dwStyle, FALSE, dwExStyle); - ErrorF ("winRandRScreenSetSize new window area w: %ld h: %ld\n", rcClient.right-rcClient.left, rcClient.bottom-rcClient.top); + ErrorF("winRandRScreenSetSize new window area w: %ld h: %ld\n", + rcClient.right - rcClient.left, rcClient.bottom - rcClient.top); - SetWindowPos(pScreenPriv->hwndScreen, NULL, - 0, 0, rcClient.right-rcClient.left, rcClient.bottom-rcClient.top, - SWP_NOZORDER | SWP_NOMOVE); - } + SetWindowPos(pScreenPriv->hwndScreen, NULL, + 0, 0, rcClient.right - rcClient.left, + rcClient.bottom - rcClient.top, SWP_NOZORDER | SWP_NOMOVE); + } - return TRUE; + return TRUE; } /* @@ -198,24 +194,24 @@ winRandRScreenSetSize (ScreenPtr pScreen, */ Bool -winRandRInit (ScreenPtr pScreen) +winRandRInit(ScreenPtr pScreen) { - rrScrPrivPtr pRRScrPriv; - winDebug ("winRandRInit ()\n"); + rrScrPrivPtr pRRScrPriv; - if (!RRScreenInit (pScreen)) - { - ErrorF ("winRandRInit () - RRScreenInit () failed\n"); - return FALSE; + winDebug("winRandRInit ()\n"); + + if (!RRScreenInit(pScreen)) { + ErrorF("winRandRInit () - RRScreenInit () failed\n"); + return FALSE; } - /* Set some RandR function pointers */ - pRRScrPriv = rrGetScrPriv (pScreen); - pRRScrPriv->rrGetInfo = winRandRGetInfo; - pRRScrPriv->rrSetConfig = NULL; - pRRScrPriv->rrScreenSetSize = winRandRScreenSetSize; - pRRScrPriv->rrCrtcSet = NULL; - pRRScrPriv->rrCrtcSetGamma = NULL; + /* Set some RandR function pointers */ + pRRScrPriv = rrGetScrPriv(pScreen); + pRRScrPriv->rrGetInfo = winRandRGetInfo; + pRRScrPriv->rrSetConfig = NULL; + pRRScrPriv->rrScreenSetSize = winRandRScreenSetSize; + pRRScrPriv->rrCrtcSet = NULL; + pRRScrPriv->rrCrtcSetGamma = NULL; - return TRUE; + return TRUE; } |