aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server/hw')
-rw-r--r--xorg-server/hw/xfree86/common/xf86Extensions.h8
-rw-r--r--xorg-server/hw/xfree86/dri2/dri2ext.c9
-rw-r--r--xorg-server/hw/xwin/Makefile.am1
-rw-r--r--xorg-server/hw/xwin/README141
-rw-r--r--xorg-server/hw/xwin/makefile1
-rw-r--r--xorg-server/hw/xwin/man/XWin.man26
-rw-r--r--xorg-server/hw/xwin/win.h3
-rw-r--r--xorg-server/hw/xwin/winblock.c2
-rw-r--r--xorg-server/hw/xwin/winclipboard.h7
-rw-r--r--xorg-server/hw/xwin/winclipboardinit.c2
-rw-r--r--xorg-server/hw/xwin/winclipboardthread.c6
-rw-r--r--xorg-server/hw/xwin/winclipboardunicode.c85
-rw-r--r--xorg-server/hw/xwin/winclipboardwndproc.c7
-rw-r--r--xorg-server/hw/xwin/winclipboardwrappers.c12
-rw-r--r--xorg-server/hw/xwin/winclipboardxevents.c14
-rw-r--r--xorg-server/hw/xwin/wincreatewnd.c115
-rw-r--r--xorg-server/hw/xwin/windialogs.c8
-rw-r--r--xorg-server/hw/xwin/winerror.c2
-rw-r--r--xorg-server/hw/xwin/winkeyhook.c18
-rw-r--r--xorg-server/hw/xwin/winmonitors.c2
-rw-r--r--xorg-server/hw/xwin/winmonitors.h28
-rw-r--r--xorg-server/hw/xwin/winmultiwindowwm.c75
-rw-r--r--xorg-server/hw/xwin/winprocarg.c5
-rw-r--r--xorg-server/hw/xwin/winscrinit.c4
-rw-r--r--xorg-server/hw/xwin/winwndproc.c29
25 files changed, 188 insertions, 422 deletions
diff --git a/xorg-server/hw/xfree86/common/xf86Extensions.h b/xorg-server/hw/xfree86/common/xf86Extensions.h
index 9b8448d64..cad86c881 100644
--- a/xorg-server/hw/xfree86/common/xf86Extensions.h
+++ b/xorg-server/hw/xfree86/common/xf86Extensions.h
@@ -29,25 +29,25 @@
#include "extnsionst.h"
#ifdef XF86DRI
-extern Bool noXFree86DRIExtension;
+extern _X_EXPORT Bool noXFree86DRIExtension;
extern void XFree86DRIExtensionInit(void);
#endif
#ifdef DRI2
#include <X11/extensions/dri2proto.h>
-extern Bool noDRI2Extension;
+extern _X_EXPORT Bool noDRI2Extension;
extern void DRI2ExtensionInit(void);
#endif
#ifdef XF86VIDMODE
#include <X11/extensions/xf86vmproto.h>
-extern Bool noXFree86VidModeExtension;
+extern _X_EXPORT Bool noXFree86VidModeExtension;
extern void XFree86VidModeExtensionInit(void);
#endif
#ifdef XFreeXDGA
#include <X11/extensions/xf86dgaproto.h>
-extern Bool noXFree86DGAExtension;
+extern _X_EXPORT Bool noXFree86DGAExtension;
extern void XFree86DGAExtensionInit(void);
extern void XFree86DGARegister(void);
#endif
diff --git a/xorg-server/hw/xfree86/dri2/dri2ext.c b/xorg-server/hw/xfree86/dri2/dri2ext.c
index eb6fd44fc..ee610c0ec 100644
--- a/xorg-server/hw/xfree86/dri2/dri2ext.c
+++ b/xorg-server/hw/xfree86/dri2/dri2ext.c
@@ -550,15 +550,16 @@ static int
ProcDRI2GetParam(ClientPtr client)
{
REQUEST(xDRI2GetParamReq);
- xDRI2GetParamReply rep;
+ xDRI2GetParamReply rep = {
+ .type = X_Reply,
+ .sequenceNumber = client->sequence,
+ .length = 0
+ };
DrawablePtr pDrawable;
CARD64 value;
int status;
REQUEST_SIZE_MATCH(xDRI2GetParamReq);
- rep.type = X_Reply;
- rep.length = 0;
- rep.sequenceNumber = client->sequence;
if (!validDrawable(client, stuff->drawable, DixReadAccess,
&pDrawable, &status))
diff --git a/xorg-server/hw/xwin/Makefile.am b/xorg-server/hw/xwin/Makefile.am
index f593ac12f..50f99b68c 100644
--- a/xorg-server/hw/xwin/Makefile.am
+++ b/xorg-server/hw/xwin/Makefile.am
@@ -5,7 +5,6 @@ SRCS_CLIPBOARD = \
winclipboardinit.c \
winclipboardtextconv.c \
winclipboardthread.c \
- winclipboardunicode.c \
winclipboardwndproc.c \
winclipboardwrappers.c \
winclipboardxevents.c
diff --git a/xorg-server/hw/xwin/README b/xorg-server/hw/xwin/README
deleted file mode 100644
index 9f7090344..000000000
--- a/xorg-server/hw/xwin/README
+++ /dev/null
@@ -1,141 +0,0 @@
-Cygwin/X Release Notes
-======================
-
-Release X11R6.7
-===============
-
-Cygwin/X has continued its rapid pace of development that it has sustained
-since Spring 2001 and this release shows it, we now have: a stable and fast
-multi-window mode, seamless clipboard integration, a configurable tray menu
-icon, popups on error messages pointing users to the log file and our mailing
-list, the beginnings of indirect 3D acceleration for OpenGL applications,
-improved non-US keyboard and clipboard support, and only a handful of bugs
-that continue to be reported.
-
-Between the XFree86 4.3.0 release and the X.Org X11R6.7 release the Cyg-
-win/XFree86 project broke away from The XFree86 Project, Inc. due to a lack
-of support from the XFree86 project. As such, the Cygwin/XFree86 project was
-renamed to the Cygwin/X project and the upstream source code tree that Cyg-
-win/X pulls from and pushes to is now the tree managed by the X.Org Founda-
-tion. The Cygwin/X project has seen a rush of development and interest in
-the project since the split; one metric showing this is that the number of
-CVS committers we have has gone from zero to six.
-
-The most outstanding features of this release are
-
- o Major multi-window mode improvements. (Takuma Murakami, Earle F.
- Philhower III)
-
- o Initial work of accelerated OpenGL using the windows OpenGL drivers.
- (Alexander Gottwald)
-
- o Massive rework of clipboard integration with windows. (Harold L Hunt II,
- Kensuke Matsuzaki)
-
- o Improved Japanese clipboard and keyboard support. (Kensuke Matsuzaki,
- Takuma Murakami, Alexander Gottwald)
-
- o Customizable tray menu icon allowing shortcuts to start programs,
- etc.(Earle F. Philhower III)
-
- o New icons. (Jehan Bing, Michael Bax, Benjamin Rienfenstahl)
-
- o Fix some multi-monitor problems.(Takuma Murakami)
-
- o Fix repeated key strokes. (Ivan Pascal)
-
- o Automatic keyboard layouts for the most frequently used keyboard lay-
- outs. (Alexander Gottwald)
-
- o Built in SHM support with detection of the SHM engine (cygserver).
- (Ralf Habacker, Harold L Hunt II)
-
- o Merged in work on the NativeGDI engine. (Alan Hourihane)
-
-OpenGL with Cygwin/X
-====================
-
-Cygwin/X has supported GLX only with software rendering provided by the Mesa
-library. Starting with X11R6.7 we add support for hardware accelerated OpenGL.
-
-This support is still under development and still has some bigger problems.
-To provide both versions (the stable software rendering and the new hardware
-accelerated) we ship to binaries. XWin.exe contains the software rendering
-and XWin_GL.exe uses the hardware acceleration provided by the windows drivers.
-
-The known problems with hardware accelerated OpenGL are:
-
- o Only multiwindow mode is useful. In the other modes the OpenGL output
- does not align with the X11 windows.
-
- o Using two programs which require different visuals will fail. For example
- glxgears and glxinfo will not work without restarting XWin_GL.exe.
-
- o OpenGL extensions and functions from OpenGL 1.2 and later should work
- but are not completely tested.
-
- o The standard Windows OpenGL driver will produce no output. Use the one
- from your video adapter vendor.
-
-If you notice problems with some programs please send a message with the
-logfile /tmp/XWin.log and a short error description to <cygwin-xfree@cygwin.com>
-
-The hardware accelerated OpenGL was tested using:
-
- o glxgears
- o glxinfo
- o blender
- o tuxkart
- o GLUT demos (some did fail)
- o tuxracer (currently not working)
-
-
-Release X11R6.8
-===============
-
-Having reached a quite mature state in release X11R6.7 the development
-has slowed down a little bit. Some of the former active developers have
-retired or cut their work for the Cygwin/X project due to conflicts with
-job, study and family.
-
-The X11R6.8 release now includes major improvements from the xserver project.
-This includes the XFixes, Damage, Composite and XEVIE extension which is a
-major step towards allowing Cygwin/X to have real transparency.
-
-But at the current state Composite is not working with Cygwin/X. Not all code
-in the Cygwin/X Server has been updated to support the Composite feature and
-using it will even crash the xserver. But as a second problem nearly all
-functions required for compositing are lacking acceleration in Cygwin/X so
-the feature would not be very useful if it would work. So it is disabled by
-default.
-
-OpenGL with Cygwin/X
-====================
-
-The OpenGL support has lost some of it's limitations from the last release
-and should be much more stable. But due to missing wide spread testing in
-the community it is still available in a separate program. XWin still uses
-the old software OpenGL which is known to be stable.
-
-The known problems with hardware accelerated OpenGL are:
-
- o Only multiwindow mode is useful. In the other modes the OpenGL output
- does not align with the X11 windows.
-
- o OpenGL extensions and functions from OpenGL 1.2 and later should work
- but are not completely tested.
-
- o The standard Windows OpenGL driver will produce no output. Use the one
- from your video adapter vendor.
-
-If you notice problems with some programs please send a message with the
-logfile /tmp/XWin.log and a short error description to <cygwin-xfree@cygwin.com>
-
-The hardware accelerated OpenGL was tested using:
-
- o glxgears
- o glxinfo
- o blender
- o tuxkart
- o GLUT demos (some did fail)
-
diff --git a/xorg-server/hw/xwin/makefile b/xorg-server/hw/xwin/makefile
index 6492e3a07..8523d0f26 100644
--- a/xorg-server/hw/xwin/makefile
+++ b/xorg-server/hw/xwin/makefile
@@ -14,7 +14,6 @@ SRCS_CLIPBOARD = \
winclipboardinit.c \
winclipboardtextconv.c \
winclipboardthread.c \
- winclipboardunicode.c \
winclipboardwndproc.c \
winclipboardwrappers.c \
winclipboardxevents.c
diff --git a/xorg-server/hw/xwin/man/XWin.man b/xorg-server/hw/xwin/man/XWin.man
index d03a36521..dbadad6f5 100644
--- a/xorg-server/hw/xwin/man/XWin.man
+++ b/xorg-server/hw/xwin/man/XWin.man
@@ -313,18 +313,22 @@ exit silently and don't display any error message.
.B "\-xkbvariant \fIvariant\fp"
These options configure the xkeyboard extension to load
a particular keyboard map as the X server starts. The behavior is similar
-to the \fIsetxkbmap\fP program. The layout data is located at \fI
-__datadir__/X11/xkb/\fP. Additional information is found in the
-README files therein and in the man page of \fIsetxkbmap\fP. For example
-in order to load a German layout for a pc105 keyboard one uses
-the options:
+to the \fIsetxkbmap\fP(1) program.
+
+See the \fIxkeyboard-config\fP(__miscmansuffix__) manual page for a list of
+keyboard configurations.
+
+The keyboard layout data is located at \fI__datadir__/X11/xkb/\fP. Additional information
+can be found in the README files there and in the \fIsetxkbmap\fP(1) manual page.
+
+For example, in order to load a German layout for a pc105 keyboard, use the options:
.br
.I " \-xkblayout de \-xkbmodel pc105"
-Alternatively one may use the \fIsetxkbmap\fP program after \fIXWin\fP is
+Alternatively, you can use the \fIsetxkbmap\fP(1) program after \fIXWin\fP is
running.
-The default is to select a configuration matching your current layout as
+The default is to select a keyboard configuration matching your current layout as
reported by \fIWindows\fP, if known, or the default X server configuration
if no matching keyboard configuration was found.
@@ -370,7 +374,7 @@ window, in both the generic case and for particular programs.
* To change the style that is associated to the \fIWindows\fP window that
\fXWin I-multiwindow\fP produces for each top-level X window.
.PP
-The format of the \fI.XWinrc\fP file is given in the man page XWinrc(5).
+The format of the \fI.XWinrc\fP file is given in the XWinrc(5) manual page.
.SH EXAMPLES
Need some examples
@@ -378,15 +382,15 @@ Need some examples
.SH "SEE ALSO"
X(__miscmansuffix__), Xserver(1), xdm(1), xinit(1), XWinrc(__filemansuffix__),
-setxkbmap(1), xkeyboard-config (__miscmansuffix__).
+setxkbmap(1), xkeyboard-config(__miscmansuffix__).
.SH BUGS
.I XWin
-and this man page still have many limitations.
+and this manual page still have many limitations.
The \fIXWin\fP software is continuously developing; it is therefore possible that
-this man page is not up to date. It is always prudent to
+this manual page is not up to date. It is always prudent to
look also at the output of \fIXWin -help\fP in order to
check the options that are operative.
diff --git a/xorg-server/hw/xwin/win.h b/xorg-server/hw/xwin/win.h
index b49859ddc..965be46f1 100644
--- a/xorg-server/hw/xwin/win.h
+++ b/xorg-server/hw/xwin/win.h
@@ -349,8 +349,7 @@ typedef struct {
DWORD dwScreen;
int iMonitor;
- HMONITOR hMonitor;
-
+ HMONITOR hMonitor;
DWORD dwUserWidth;
DWORD dwUserHeight;
DWORD dwWidth;
diff --git a/xorg-server/hw/xwin/winblock.c b/xorg-server/hw/xwin/winblock.c
index c1a6e705a..480e3bd48 100644
--- a/xorg-server/hw/xwin/winblock.c
+++ b/xorg-server/hw/xwin/winblock.c
@@ -58,7 +58,7 @@ winBlockHandler(ScreenPtr pScreen,
if (pScreenPriv != NULL && !pScreenPriv->fServerStarted) {
int iReturn;
- winDebug("winBlockHandler - Releasing pmServerStarted\n");
+ ErrorF("winBlockHandler - pthread_mutex_unlock()\n");
/* Flag that modules are to be started */
pScreenPriv->fServerStarted = TRUE;
diff --git a/xorg-server/hw/xwin/winclipboard.h b/xorg-server/hw/xwin/winclipboard.h
index d430b343f..a267dec7c 100644
--- a/xorg-server/hw/xwin/winclipboard.h
+++ b/xorg-server/hw/xwin/winclipboard.h
@@ -110,13 +110,6 @@ void
winDeinitClipboard(void);
/*
- * winclipboardunicode.c
- */
-
-Bool
- winClipboardDetectUnicodeSupport(void);
-
-/*
* winclipboardwndproc.c
*/
diff --git a/xorg-server/hw/xwin/winclipboardinit.c b/xorg-server/hw/xwin/winclipboardinit.c
index 1ddb35775..90fcf0086 100644
--- a/xorg-server/hw/xwin/winclipboardinit.c
+++ b/xorg-server/hw/xwin/winclipboardinit.c
@@ -61,7 +61,7 @@ extern HWND g_hwndClipboard;
Bool
winInitClipboard(void)
{
- winDebug ("winInitClipboard ()\n");
+ winDebug("winInitClipboard ()\n");
/* Wrap some internal server functions */
if (ProcVector[X_SetSelectionOwner] != winProcSetSelectionOwner) {
diff --git a/xorg-server/hw/xwin/winclipboardthread.c b/xorg-server/hw/xwin/winclipboardthread.c
index 50643149b..eb32db88c 100644
--- a/xorg-server/hw/xwin/winclipboardthread.c
+++ b/xorg-server/hw/xwin/winclipboardthread.c
@@ -67,7 +67,6 @@ static jmp_buf g_jmpEntry;
static XIOErrorHandler g_winClipboardOldIOErrorHandler;
static pthread_t g_winClipboardProcThread;
-Bool g_fUnicodeSupport = FALSE;
Bool g_fUseUnicode = FALSE;
/*
@@ -112,11 +111,8 @@ winClipboardProc(void *pvNotUsed)
winDebug ("winClipboardProc - Hello\n");
- /* Do we have Unicode support? */
- g_fUnicodeSupport = winClipboardDetectUnicodeSupport();
-
/* Do we use Unicode clipboard? */
- fUseUnicode = g_fUnicodeClipboard && g_fUnicodeSupport;
+ fUseUnicode = g_fUnicodeClipboard;
/* Save the Unicode support flag in a global */
g_fUseUnicode = fUseUnicode;
diff --git a/xorg-server/hw/xwin/winclipboardunicode.c b/xorg-server/hw/xwin/winclipboardunicode.c
deleted file mode 100644
index 530ad9a01..000000000
--- a/xorg-server/hw/xwin/winclipboardunicode.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- *Copyright (C) 2003-2004 Harold L Hunt II All Rights Reserved.
- *
- *Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files (the
- *"Software"), to deal in the Software without restriction, including
- *without limitation the rights to use, copy, modify, merge, publish,
- *distribute, sublicense, and/or sell copies of the Software, and to
- *permit persons to whom the Software is furnished to do so, subject to
- *the following conditions:
- *
- *The above copyright notice and this permission notice shall be
- *included in all copies or substantial portions of the Software.
- *
- *THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- *EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- *MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- *NONINFRINGEMENT. IN NO EVENT SHALL HAROLD L HUNT II BE LIABLE FOR
- *ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
- *CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- *WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- *Except as contained in this notice, the name of Harold L Hunt II
- *shall not be used in advertising or otherwise to promote the sale, use
- *or other dealings in this Software without prior written authorization
- *from Harold L Hunt II.
- *
- * Authors: Harold L Hunt II
- */
-
-#ifdef HAVE_XWIN_CONFIG_H
-#include <xwin-config.h>
-#endif
-#include "winclipboard.h"
-
-/*
- * Determine whether we suport Unicode or not.
- * NOTE: Currently, just check if we are on an NT-based platform or not.
- */
-
-Bool
-winClipboardDetectUnicodeSupport(void)
-{
- Bool fReturn = FALSE;
- OSVERSIONINFOEX osvi = { 0 };
-
- /* Get operating system version information */
- osvi.dwOSVersionInfoSize = sizeof(osvi);
- GetVersionEx ((LPOSVERSIONINFO)&osvi);
-
- /* Branch on platform ID */
- switch (osvi.dwPlatformId) {
- case VER_PLATFORM_WIN32_NT:
- if (osvi.dwMajorVersion >= 6)
- {
- if (osvi.wProductType == VER_NT_WORKSTATION)
- winDebug ("OS: Windows Vista\n");
- else
- winDebug ("OS: Windows Server 2008\n");
- fReturn = TRUE;
- }
- else if (osvi.dwMajorVersion == 5)
- {
- if (osvi.dwMinorVersion == 2)
- {
- winDebug ("OS: Windows 2003\n");
- fReturn = TRUE;
- }
- else if (osvi.dwMinorVersion == 1)
- {
- winDebug ("OS: Windows XP\n");
- fReturn = TRUE;
- }
- else if (osvi.dwMinorVersion == 0) winDebug ("OS: Windows 2000\n");
- }
- else if (osvi.dwMajorVersion <= 4) winDebug ("OS: Windows NT\n");
- break;
-
- case VER_PLATFORM_WIN32_WINDOWS:
- winDebug ("OS: Windows 95/98/Me\n");
- break;
- }
-
- return fReturn;
-}
diff --git a/xorg-server/hw/xwin/winclipboardwndproc.c b/xorg-server/hw/xwin/winclipboardwndproc.c
index 0dd39703d..00b0fe8fd 100644
--- a/xorg-server/hw/xwin/winclipboardwndproc.c
+++ b/xorg-server/hw/xwin/winclipboardwndproc.c
@@ -53,7 +53,6 @@
*/
extern Bool g_fUseUnicode;
-extern Bool g_fUnicodeSupport;
extern void *g_pClipboardDisplay;
extern Window g_iClipboardWindow;
extern Atom g_atomLastOwnedSelection;
@@ -66,6 +65,7 @@ extern Bool g_fClipboardPrimary;
static int
+
winProcessXEventsTimeout(HWND hwnd, int iWindow, Display * pDisplay,
Bool fUseUnicode, int iTimeoutSec);
@@ -421,7 +421,7 @@ winClipboardWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
if (message == WM_RENDERALLFORMATS)
fConvertToUnicode = FALSE;
else
- fConvertToUnicode = g_fUnicodeSupport && (CF_UNICODETEXT == wParam);
+ fConvertToUnicode = (CF_UNICODETEXT == wParam);
/* Request the selection contents */
iReturn = XConvertSelection(pDisplay,
@@ -472,8 +472,7 @@ winClipboardWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
if (WIN_XEVENTS_NOTIFY != iReturn) {
ErrorF("winClipboardWindowProc - winProcessXEventsTimeout should have returned WIN_XEVENTS_NOTIFY was %d\n",iReturn);
/* Paste no data, to satisfy required call to SetClipboardData */
- if (g_fUnicodeSupport)
- SetClipboardData(CF_UNICODETEXT, NULL);
+ SetClipboardData(CF_UNICODETEXT, NULL);
SetClipboardData(CF_TEXT, NULL);
ErrorF
diff --git a/xorg-server/hw/xwin/winclipboardwrappers.c b/xorg-server/hw/xwin/winclipboardwrappers.c
index 4005bf176..247c8ea43 100644
--- a/xorg-server/hw/xwin/winclipboardwrappers.c
+++ b/xorg-server/hw/xwin/winclipboardwrappers.c
@@ -59,7 +59,6 @@ DISPATCH_PROC(winProcSetSelectionOwner);
* References to external symbols
*/
-extern Bool g_fUnicodeSupport;
extern int g_iNumScreens;
extern unsigned int g_uiAuthDataLen;
extern char *g_pAuthData;
@@ -89,7 +88,8 @@ winProcEstablishConnection(ClientPtr client)
static unsigned long s_ulServerGeneration = 0;
#ifdef WINDBG
- if (s_iCallCount == 0) winDebug ("winProcEstablishConnection - Hello\n");
+ if (s_iCallCount == 0)
+ winDebug("winProcEstablishConnection - Hello\n");
#endif
/* Do nothing if clipboard is not enabled */
@@ -327,12 +327,8 @@ winProcSetSelectionOwner(ClientPtr client)
}
winDebug("winProcSetSelectionOwner - SetClipboardData NULL\n");
-
- /* Advertise Unicode if we support it */
- if (g_fUnicodeSupport)
- SetClipboardData(CF_UNICODETEXT, NULL);
-
- /* Always advertise regular text */
+ /* Advertise regular text and unicode */
+ SetClipboardData(CF_UNICODETEXT, NULL);
SetClipboardData(CF_TEXT, NULL);
/* Save handle to last owned selection */
diff --git a/xorg-server/hw/xwin/winclipboardxevents.c b/xorg-server/hw/xwin/winclipboardxevents.c
index 2be03b707..910e437c2 100644
--- a/xorg-server/hw/xwin/winclipboardxevents.c
+++ b/xorg-server/hw/xwin/winclipboardxevents.c
@@ -38,13 +38,7 @@
#include "winmsg.h"
#include <unistd.h>
/*
- * References to external symbols
- */
-
-extern Bool g_fUnicodeSupport;
extern Bool g_fClipboardPrimary;
-
-/*
* Process any pending X events
*/
@@ -235,10 +229,6 @@ winClipboardFlushXEvents(HWND hwnd,
else
xiccesStyle = XStringStyle;
- /*
- * FIXME: Can't pass CF_UNICODETEXT on Windows 95/98/Me
- */
-
/* Get a pointer to the clipboard text, in desired format */
if (fUseUnicode) {
/* Retrieve clipboard data */
@@ -709,10 +699,10 @@ winClipboardFlushXEvents(HWND hwnd,
free(pwszUnicodeStr);
if (hGlobal && pszGlobalData)
GlobalUnlock(hGlobal);
- if (fSetClipboardData && g_fUnicodeSupport)
+ if (fSetClipboardData) {
SetClipboardData(CF_UNICODETEXT, NULL);
- if (fSetClipboardData)
SetClipboardData(CF_TEXT, NULL);
+ }
return WIN_XEVENTS_NOTIFY;
/*
diff --git a/xorg-server/hw/xwin/wincreatewnd.c b/xorg-server/hw/xwin/wincreatewnd.c
index 0580421ae..597f6bc4e 100644
--- a/xorg-server/hw/xwin/wincreatewnd.c
+++ b/xorg-server/hw/xwin/wincreatewnd.c
@@ -42,7 +42,7 @@ static Bool
winGetWorkArea(RECT * prcWorkArea, winScreenInfo * pScreenInfo);
static Bool
- winAdjustForAutoHide (RECT *prcWorkArea, winScreenInfo *pScreenInfo);
+ winAdjustForAutoHide(RECT * prcWorkArea, winScreenInfo * pScreenInfo);
/*
* Create a full screen window
@@ -60,8 +60,8 @@ winCreateBoundingWindowFullScreen(ScreenPtr pScreen)
HWND *phwnd = &pScreenPriv->hwndScreen;
WNDCLASSEX wc;
char szTitle[256];
- char HostName[256];
- gethostname(HostName,256);
+ char HostName[256];
+ gethostname(HostName,256);
winDebug("winCreateBoundingWindowFullScreen\n");
@@ -93,11 +93,11 @@ winCreateBoundingWindowFullScreen(ScreenPtr pScreen)
WINDOW_TITLE_XDMCP,
g_pszQueryHost, HostName, display, (int) pScreenInfo->dwScreen);
else
- {
+ {
snprintf(szTitle,
sizeof(szTitle),
WINDOW_TITLE, HostName, display, (int) pScreenInfo->dwScreen);
- }
+ }
/* Create the window */
*phwnd = CreateWindowExA(0, /* Extended styles */
WINDOW_CLASS, /* Class name */
@@ -154,9 +154,9 @@ winCreateBoundingWindowWindowed(ScreenPtr pScreen)
DWORD dwWindowStyle;
BOOL fForceShowWindow = FALSE;
char szTitle[256];
- char HostName[256];
+ char HostName[256];
- gethostname(HostName,256);
+ gethostname(HostName,256);
winDebug("winCreateBoundingWindowWindowed - User w: %d h: %d\n",
(int) pScreenInfo->dwUserWidth, (int) pScreenInfo->dwUserHeight);
@@ -218,7 +218,7 @@ winCreateBoundingWindowWindowed(ScreenPtr pScreen)
winGetWorkArea(&rcWorkArea, pScreenInfo);
/* Adjust for auto-hide taskbars */
- winAdjustForAutoHide (&rcWorkArea, pScreenInfo);
+ winAdjustForAutoHide(&rcWorkArea, pScreenInfo);
/* Did the user specify a position? */
if (pScreenInfo->fUserGavePosition) {
@@ -489,33 +489,32 @@ winGetWorkArea(RECT * prcWorkArea, winScreenInfo * pScreenInfo)
int iLeft, iTop;
int iPrimaryNonWorkAreaWidth, iPrimaryNonWorkAreaHeight;
- /* Use GetMonitorInfo to get work area for monitor */
- if (!pScreenInfo->fMultipleMonitors)
- {
- MONITORINFO mi;
- mi.cbSize = sizeof(MONITORINFO);
- if (GetMonitorInfo(pScreenInfo->hMonitor, &mi))
- {
- *prcWorkArea = mi.rcWork;
-
- winDebug ("winGetWorkArea - Monitor %d WorkArea: %d %d %d %d\n",
- pScreenInfo->iMonitor,
- (int) prcWorkArea->top, (int) prcWorkArea->left,
- (int) prcWorkArea->bottom, (int) prcWorkArea->right);
- }
- else
- {
- ErrorF ("winGetWorkArea - GetMonitorInfo() failed for monitor %d\n", pScreenInfo->iMonitor);
- }
+ /* Use GetMonitorInfo to get work area for monitor */
+ if (!pScreenInfo->fMultipleMonitors) {
+ MONITORINFO mi;
- /* Bail out here if we aren't using multiple monitors */
+ mi.cbSize = sizeof(MONITORINFO);
+ if (GetMonitorInfo(pScreenInfo->hMonitor, &mi)) {
+ *prcWorkArea = mi.rcWork;
+
+ winDebug("winGetWorkArea - Monitor %d WorkArea: %d %d %d %d\n",
+ pScreenInfo->iMonitor,
+ (int) prcWorkArea->top, (int) prcWorkArea->left,
+ (int) prcWorkArea->bottom, (int) prcWorkArea->right);
+ }
+ else {
+ ErrorF("winGetWorkArea - GetMonitorInfo() failed for monitor %d\n",
+ pScreenInfo->iMonitor);
+ }
+
+ /* Bail out here if we aren't using multiple monitors */
return TRUE;
- }
+ }
- /* SPI_GETWORKAREA only gets the work area of the primary screen. */
- SystemParametersInfo (SPI_GETWORKAREA, 0, prcWorkArea, 0);
-
- winDebug ("winGetWorkArea - Primary Monitor WorkArea: %d %d %d %d\n",
+ /* SPI_GETWORKAREA only gets the work area of the primary screen. */
+ SystemParametersInfo(SPI_GETWORKAREA, 0, prcWorkArea, 0);
+
+ winDebug("winGetWorkArea - Primary Monitor WorkArea: %d %d %d %d\n",
(int) prcWorkArea->top, (int) prcWorkArea->left,
(int) prcWorkArea->bottom, (int) prcWorkArea->right);
@@ -564,34 +563,36 @@ winGetWorkArea(RECT * prcWorkArea, winScreenInfo * pScreenInfo)
}
static Bool
-winTaskbarOnScreenEdge(unsigned int uEdge, winScreenInfo *pScreenInfo)
+winTaskbarOnScreenEdge(unsigned int uEdge, winScreenInfo * pScreenInfo)
{
- APPBARDATA abd;
- HWND hwndAutoHide;
+ APPBARDATA abd;
+ HWND hwndAutoHide;
- ZeroMemory (&abd, sizeof (abd));
- abd.cbSize = sizeof (abd);
- abd.uEdge = uEdge;
+ ZeroMemory(&abd, sizeof(abd));
+ abd.cbSize = sizeof(abd);
+ abd.uEdge = uEdge;
- hwndAutoHide = (HWND) SHAppBarMessage (ABM_GETAUTOHIDEBAR, &abd);
- if (hwndAutoHide != NULL)
- {
- /*
- Found an autohide taskbar on that edge, but is it on the
- same monitor as the screen window?
- */
- if (pScreenInfo->fMultipleMonitors || (MonitorFromWindow(hwndAutoHide, MONITOR_DEFAULTTONULL) == pScreenInfo->hMonitor))
- return TRUE;
+ hwndAutoHide = (HWND) SHAppBarMessage(ABM_GETAUTOHIDEBAR, &abd);
+ if (hwndAutoHide != NULL) {
+ /*
+ Found an autohide taskbar on that edge, but is it on the
+ same monitor as the screen window?
+ */
+ if (pScreenInfo->fMultipleMonitors ||
+ (MonitorFromWindow(hwndAutoHide, MONITOR_DEFAULTTONULL) ==
+ pScreenInfo->hMonitor))
+ return TRUE;
}
- return FALSE;
+ return FALSE;
}
+
/*
* Adjust the client area so that any auto-hide toolbars
* will work correctly.
*/
static Bool
-winAdjustForAutoHide (RECT *prcWorkArea, winScreenInfo *pScreenInfo)
+winAdjustForAutoHide(RECT * prcWorkArea, winScreenInfo * pScreenInfo)
{
APPBARDATA abd;
@@ -605,31 +606,31 @@ winAdjustForAutoHide (RECT *prcWorkArea, winScreenInfo *pScreenInfo)
if (SHAppBarMessage(ABM_GETSTATE, &abd) & ABS_AUTOHIDE)
winDebug("winAdjustForAutoHide - Taskbar is auto hide\n");
- /*
- Despite the forgoing, we are checking for any AppBar
- hiding along a monitor edge, not just the Windows TaskBar.
- */
+ /*
+ Despite the forgoing, we are checking for any AppBar
+ hiding along a monitor edge, not just the Windows TaskBar.
+ */
/* Look for a TOP auto-hide taskbar */
- if (winTaskbarOnScreenEdge(ABE_TOP, pScreenInfo)) {
+ if (winTaskbarOnScreenEdge(ABE_TOP, pScreenInfo)) {
winDebug("winAdjustForAutoHide - Found TOP auto-hide taskbar\n");
prcWorkArea->top += 1;
}
/* Look for a LEFT auto-hide taskbar */
- if (winTaskbarOnScreenEdge(ABE_LEFT, pScreenInfo)) {
+ if (winTaskbarOnScreenEdge(ABE_LEFT, pScreenInfo)) {
winDebug("winAdjustForAutoHide - Found LEFT auto-hide taskbar\n");
prcWorkArea->left += 1;
}
/* Look for a BOTTOM auto-hide taskbar */
- if (winTaskbarOnScreenEdge(ABE_BOTTOM, pScreenInfo)) {
+ if (winTaskbarOnScreenEdge(ABE_BOTTOM, pScreenInfo)) {
winDebug("winAdjustForAutoHide - Found BOTTOM auto-hide taskbar\n");
prcWorkArea->bottom -= 1;
}
/* Look for a RIGHT auto-hide taskbar */
- if (winTaskbarOnScreenEdge(ABE_RIGHT, pScreenInfo)) {
+ if (winTaskbarOnScreenEdge(ABE_RIGHT, pScreenInfo)) {
winDebug("winAdjustForAutoHide - Found RIGHT auto-hide taskbar\n");
prcWorkArea->right -= 1;
}
diff --git a/xorg-server/hw/xwin/windialogs.c b/xorg-server/hw/xwin/windialogs.c
index bc6715066..7d7abcc25 100644
--- a/xorg-server/hw/xwin/windialogs.c
+++ b/xorg-server/hw/xwin/windialogs.c
@@ -490,7 +490,7 @@ winChangeDepthDlgProc(HWND hwndDialog, UINT message,
switch (LOWORD(wParam)) {
case IDOK:
case IDCANCEL:
- ErrorF("winChangeDepthDlgProc - WM_COMMAND - IDOK or IDCANCEL\n");
+ winDebug("winChangeDepthDlgProc - WM_COMMAND - IDOK or IDCANCEL\n");
/*
* User dismissed the dialog, hide it until the
@@ -502,7 +502,7 @@ winChangeDepthDlgProc(HWND hwndDialog, UINT message,
break;
case WM_CLOSE:
- winDebug ("winChangeDepthDlgProc - WM_CLOSE\n");
+ winDebug("winChangeDepthDlgProc - WM_CLOSE\n");
DestroyWindow(g_hDlgAbout);
g_hDlgAbout = NULL;
@@ -603,7 +603,7 @@ winAboutDlgProc(HWND hwndDialog, UINT message, WPARAM wParam, LPARAM lParam)
switch (LOWORD(wParam)) {
case IDOK:
case IDCANCEL:
- winDebug ("winAboutDlgProc - WM_COMMAND - IDOK or IDCANCEL\n");
+ winDebug("winAboutDlgProc - WM_COMMAND - IDOK or IDCANCEL\n");
DestroyWindow(g_hDlgAbout);
g_hDlgAbout = NULL;
@@ -693,7 +693,7 @@ winAboutDlgProc(HWND hwndDialog, UINT message, WPARAM wParam, LPARAM lParam)
break;
case WM_CLOSE:
- ErrorF("winAboutDlgProc - WM_CLOSE\n");
+ winDebug("winAboutDlgProc - WM_CLOSE\n");
DestroyWindow(g_hDlgAbout);
g_hDlgAbout = NULL;
diff --git a/xorg-server/hw/xwin/winerror.c b/xorg-server/hw/xwin/winerror.c
index 9838fa085..d5f497fda 100644
--- a/xorg-server/hw/xwin/winerror.c
+++ b/xorg-server/hw/xwin/winerror.c
@@ -142,7 +142,7 @@ winMessageBoxF(const char *pszError, UINT uType, ...)
size = asprintf(&pszMsgBox, MESSAGEBOXF,
pszErrorF, XVENDORNAME,
XORG_VERSION_MAJOR, XORG_VERSION_MINOR, XORG_VERSION_PATCH,
- XORG_VERSION_SNAP,
+ XORG_VERSION_SNAP,
BUILDERADDR, BUILDERSTRING, g_pszCommandLine);
if (size == -1) {
diff --git a/xorg-server/hw/xwin/winkeyhook.c b/xorg-server/hw/xwin/winkeyhook.c
index 124150850..fe77b2190 100644
--- a/xorg-server/hw/xwin/winkeyhook.c
+++ b/xorg-server/hw/xwin/winkeyhook.c
@@ -133,24 +133,6 @@ winKeyboardMessageHookLL(int iCode, WPARAM wParam, LPARAM lParam)
Bool
winInstallKeyboardHookLL(void)
{
- OSVERSIONINFO osvi = { 0 };
-
- /* Get operating system version information */
- osvi.dwOSVersionInfoSize = sizeof(osvi);
- GetVersionEx(&osvi);
-
- /* Branch on platform ID */
- switch (osvi.dwPlatformId) {
- case VER_PLATFORM_WIN32_NT:
- /* Low-level is supported on NT 4.0 SP3+ only */
- /* TODO: Return FALSE on NT 4.0 with no SP, SP1, or SP2 */
- break;
-
- case VER_PLATFORM_WIN32_WINDOWS:
- /* Low-level hook is not supported on non-NT */
- return FALSE;
- }
-
/* Install the hook only once */
if (!g_hhookKeyboardLL)
g_hhookKeyboardLL = SetWindowsHookEx(WH_KEYBOARD_LL,
diff --git a/xorg-server/hw/xwin/winmonitors.c b/xorg-server/hw/xwin/winmonitors.c
index 31c7aeab0..ab8842a32 100644
--- a/xorg-server/hw/xwin/winmonitors.c
+++ b/xorg-server/hw/xwin/winmonitors.c
@@ -53,7 +53,7 @@ getMonitorInfo(HMONITOR hMonitor, HDC hdc, LPRECT rect, LPARAM _data)
data->monitorOffsetY = rect->top;
data->monitorHeight = rect->bottom - rect->top;
data->monitorWidth = rect->right - rect->left;
- data->monitorHandle = hMonitor;
+ data->monitorHandle = hMonitor;
return FALSE;
}
return TRUE;
diff --git a/xorg-server/hw/xwin/winmonitors.h b/xorg-server/hw/xwin/winmonitors.h
index 2e83b6c8e..8201e47f4 100644
--- a/xorg-server/hw/xwin/winmonitors.h
+++ b/xorg-server/hw/xwin/winmonitors.h
@@ -1,3 +1,31 @@
+/*
+
+Copyright 1993, 1998 The Open Group
+Copyright (C) Colin Harrison 2005-2008
+
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that
+the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of The Open Group shall
+not be used in advertising or otherwise to promote the sale, use or
+other dealings in this Software without prior written authorization
+from The Open Group.
+
+*/
/* data returned for monitor information */
struct GetMonitorInfoData {
diff --git a/xorg-server/hw/xwin/winmultiwindowwm.c b/xorg-server/hw/xwin/winmultiwindowwm.c
index c93d3efe9..31ddff8c6 100644
--- a/xorg-server/hw/xwin/winmultiwindowwm.c
+++ b/xorg-server/hw/xwin/winmultiwindowwm.c
@@ -354,8 +354,8 @@ InitQueue(WMMsgQueuePtr pQueue)
#ifdef _DEBUG
pQueue->nQueueSize = 0;
- winDebug ("InitQueue - Queue Size %d %d\n", pQueue->nQueueSize,
- QueueSize(pQueue));
+ winDebug("InitQueue - Queue Size %d %d\n", pQueue->nQueueSize,
+ QueueSize(pQueue));
#endif
winDebug ("InitQueue - Calling pthread_mutex_init\n");
@@ -444,23 +444,23 @@ SendXMessage(Display * pDisplay, Window iWin, Atom atmType, long nData)
}
/*
- * Updates the name of a HWND according to its X WM_NAME property
+ * See if we can get the stored HWND for this window...
*/
-
-static void
-UpdateName(WMInfoPtr pWMInfo, Window iWindow)
+static HWND
+getHwnd(WMInfoPtr pWMInfo, Window iWindow)
{
- wchar_t *pszName;
Atom atmType;
int fmtRet;
unsigned long items, remain;
- HWND *retHwnd, hWnd;
- XWindowAttributes attr;
-
- hWnd = 0;
-
- /* See if we can get the cached HWND for this window... */
- if (XGetWindowProperty(pWMInfo->pDisplay, iWindow, pWMInfo->atmPrivMap, 0, 1, False, XA_INTEGER, //pWMInfo->atmPrivMap,
+ HWND *retHwnd, hWnd = NULL;
+
+ if (XGetWindowProperty(pWMInfo->pDisplay,
+ iWindow,
+ pWMInfo->atmPrivMap,
+ 0,
+ 1,
+ False,
+ XA_INTEGER,
&atmType,
&fmtRet,
&items,
@@ -473,8 +473,26 @@ UpdateName(WMInfoPtr pWMInfo, Window iWindow)
/* Some sanity checks */
if (!hWnd)
- return;
+ return NULL;
if (!IsWindow(hWnd))
+ return NULL;
+
+ return hWnd;
+}
+
+/*
+ * Updates the name of a HWND according to its X WM_NAME property
+ */
+
+static void
+UpdateName(WMInfoPtr pWMInfo, Window iWindow)
+{
+ wchar_t *pszName;
+ HWND hWnd;
+ XWindowAttributes attr;
+
+ hWnd = getHwnd(pWMInfo, iWindow);
+ if (!hWnd)
return;
/* Set the Windows window name */
@@ -499,27 +517,12 @@ UpdateName(WMInfoPtr pWMInfo, Window iWindow)
static void
PreserveWin32Stack(WMInfoPtr pWMInfo, Window iWindow, UINT direction)
{
- Atom atmType;
- int fmtRet;
- unsigned long items, remain;
- HWND hWnd, *retHwnd;
+ HWND hWnd;
DWORD myWinProcID, winProcID;
Window xWindow;
WINDOWPLACEMENT wndPlace;
- hWnd = NULL;
- /* See if we can get the cached HWND for this window... */
- if (XGetWindowProperty(pWMInfo->pDisplay, iWindow, pWMInfo->atmPrivMap, 0, 1, False, XA_INTEGER, //pWMInfo->atmPrivMap,
- &atmType,
- &fmtRet,
- &items,
- &remain, (unsigned char **) &retHwnd) == Success) {
- if (retHwnd) {
- hWnd = *retHwnd;
- XFree(retHwnd);
- }
- }
-
+ hWnd = getHwnd(pWMInfo, iWindow);
if (!hWnd)
return;
@@ -750,7 +753,7 @@ winMultiWindowXMsgProc(void *pArg)
pthread_cleanup_push(&winMultiWindowThreadExit, NULL);
- winDebug ("winMultiWindowXMsgProc - Hello\n");
+ winDebug("winMultiWindowXMsgProc - Hello\n");
/* Check that argument pointer is not invalid */
if (pProcArg == NULL) {
@@ -1121,7 +1124,7 @@ winInitMultiWindowWM(WMInfoPtr pWMInfo, WMProcArgPtr pProcArg)
char pszDisplay[512];
int iReturn;
- winDebug ("winInitMultiWindowWM - Hello\n");
+ winDebug("winInitMultiWindowWM - Hello\n");
/* Check that argument pointer is not invalid */
if (pProcArg == NULL) {
@@ -1431,9 +1434,9 @@ winApplyHints(Display * pDisplay, Window iWindow, HWND hWnd, HWND * zstyle)
Atom type, *pAtom = NULL;
int format;
unsigned long hint = 0, maxmin = 0, style, nitems = 0, left = 0;
- WindowPtr pWin = GetProp (hWnd, WIN_WINDOW_PROP);
+ WindowPtr pWin = GetProp (hWnd, WIN_WINDOW_PROP);
MwmHints *mwm_hint = NULL;
- WinXSizeHints SizeHints;
+ WinXSizeHints SizeHints;
if (!hWnd)
return;
diff --git a/xorg-server/hw/xwin/winprocarg.c b/xorg-server/hw/xwin/winprocarg.c
index c391dae7c..d246db82a 100644
--- a/xorg-server/hw/xwin/winprocarg.c
+++ b/xorg-server/hw/xwin/winprocarg.c
@@ -102,14 +102,15 @@ winInitializeScreenDefaults(void)
int dpiY = GetDeviceCaps(hdc, LOGPIXELSY);
winDebug(
- "winInitializeDefaultScreens - native DPI x %d y %d\n",
+ "winInitializeScreenDefaults - native DPI x %d y %d\n",
dpiX, dpiY);
+
monitorResolution = dpiY;
ReleaseDC(NULL, hdc);
}
else {
winDebug(
- "winInitializeDefaultScreens - Failed to retrieve native DPI, falling back to default of %d DPI\n",
+ "winInitializeScreenDefaults - Failed to retrieve native DPI, falling back to default of %d DPI\n",
WIN_DEFAULT_DPI);
monitorResolution = WIN_DEFAULT_DPI;
}
diff --git a/xorg-server/hw/xwin/winscrinit.c b/xorg-server/hw/xwin/winscrinit.c
index d789e563f..bfc094fcf 100644
--- a/xorg-server/hw/xwin/winscrinit.c
+++ b/xorg-server/hw/xwin/winscrinit.c
@@ -423,7 +423,7 @@ winFinishScreenInitFB(int index, ScreenPtr pScreen, int argc, char **argv)
if (pScreen->a) { \
pScreenPriv->a = pScreen->a; \
} else { \
- ErrorF("null screen fn " #a "\n"); \
+ winDebug("winScreenInit - null screen fn " #a "\n"); \
pScreenPriv->a = NULL; \
}
@@ -457,7 +457,7 @@ winFinishScreenInitFB(int index, ScreenPtr pScreen, int argc, char **argv)
if (pScreen->a) { \
pScreenPriv->a = pScreen->a; \
} else { \
- ErrorF("null screen fn " #a "\n"); \
+ winDebug("null screen fn " #a "\n"); \
pScreenPriv->a = NULL; \
}
diff --git a/xorg-server/hw/xwin/winwndproc.c b/xorg-server/hw/xwin/winwndproc.c
index 77a3a76ba..ea6679c66 100644
--- a/xorg-server/hw/xwin/winwndproc.c
+++ b/xorg-server/hw/xwin/winwndproc.c
@@ -137,7 +137,7 @@ winWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
s_pScreenPriv->hwndScreen = hwnd;
- winInitNotifyIcon (s_pScreenPriv,FALSE);
+ winInitNotifyIcon(s_pScreenPriv,FALSE);
}
return 0;
@@ -328,14 +328,6 @@ winWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
break;
- case WM_SYSCOMMAND:
- if (wParam == SC_MAXIMIZE||wParam == SC_RESTORE)
- {
- winDebug("Posting WM_EXITSIZEMOVE message since windows does not send it when the maximised/restored button is clicked.\n");
- PostMessage(hwnd, WM_EXITSIZEMOVE, 0, 0);
- }
- break;
-
case WM_SIZE:
{
SCROLLINFO si;
@@ -442,6 +434,15 @@ winWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
}
return 0;
+ case WM_SYSCOMMAND:
+ if ((wParam & 0xfff0) == SC_MAXIMIZE ||
+ (wParam & 0xfff0) == SC_RESTORE)
+ {
+ winDebug("Posting WM_EXITSIZEMOVE message since windows does not send it when the maximised/restored button is clicked.\n");
+ PostMessage(hwnd, WM_EXITSIZEMOVE, 0, 0);
+ }
+ break;
+
case WM_ENTERSIZEMOVE:
winDebug("winWindowProc - WM_ENTERSIZEMOVE\n");
break;
@@ -1161,7 +1162,7 @@ winWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
#ifdef XWIN_CLIPBOARD
/* Make sure the clipboard chain is ok. */
- winFixClipboardChain (0);
+ winFixClipboardChain(0);
#endif
/* Call engine specific screen activation/deactivation function */
@@ -1213,7 +1214,7 @@ winWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
if (s_pScreenInfo->fMultiWindow)
winDeinitMultiWindowWM();
#endif
- g_fClipboardStarted=FALSE; /* This is to avoid dead-locls caused by the clipboard thread still doing some stuff */
+ g_fClipboardStarted=FALSE; /* This is to avoid dead-locls caused by the clipboard thread still doing some stuff */
GiveUp(0);
return 0;
@@ -1232,7 +1233,7 @@ winWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
#ifdef XWIN_MULTIWINDOWEXTWM
case WM_MANAGE:
- winDebug ("winWindowProc - WM_MANAGE\n");
+ winDebug("winWindowProc - WM_MANAGE\n");
s_pScreenInfo->fAnotherWMRunning = FALSE;
#ifdef XWIN_MULTIWINDOWINTWM
@@ -1244,7 +1245,7 @@ winWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
break;
case WM_UNMANAGE:
- winDebug ("winWindowProc - WM_UNMANAGE\n");
+ winDebug("winWindowProc - WM_UNMANAGE\n");
s_pScreenInfo->fAnotherWMRunning = TRUE;
#ifdef XWIN_MULTIWINDOWINTWM
@@ -1258,7 +1259,7 @@ winWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
default:
if (message == s_uTaskbarRestart) {
- winInitNotifyIcon (s_pScreenPriv,FALSE);
+ winInitNotifyIcon(s_pScreenPriv,FALSE);
}
break;
}