Author: jimtabor
Date: Mon Dec  5 01:09:25 2011
New Revision: 54596

URL: http://svn.reactos.org/svn/reactos?rev=54596&view=rev
Log:
[Win32k]
- Fix more set active window API tests. The window postion change message with 
fixed lparam is erroneous. How can the address be the same since it originates 
from kernel space?

Modified:
    trunk/reactos/include/reactos/win32k/ntuser.h
    trunk/reactos/subsystems/win32/win32k/ntuser/focus.c
    trunk/reactos/subsystems/win32/win32k/ntuser/winsta.c

Modified: trunk/reactos/include/reactos/win32k/ntuser.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/win32k/ntuser.h?rev=54596&r1=54595&r2=54596&view=diff
==============================================================================
--- trunk/reactos/include/reactos/win32k/ntuser.h [iso-8859-1] (original)
+++ trunk/reactos/include/reactos/win32k/ntuser.h [iso-8859-1] Mon Dec  5 
01:09:25 2011
@@ -814,6 +814,13 @@
     INT cyMsgFontChar;                   /* 010 */
     UINT wMaxBtnSize;                    /* 014 */
 } DPISERVERINFO, *PDPISERVERINFO;
+
+// PUSIFlags:
+#define PUSIF_PALETTEDISPLAY         0x01
+#define PUSIF_SNAPTO                 0x02
+#define PUSIF_COMBOBOXANIMATION      0x04
+#define PUSIF_LISTBOXSMOOTHSCROLLING 0x08
+#define PUSIF_KEYBOARDCUES           0x20
 
 typedef struct _PERUSERSERVERINFO
 {

Modified: trunk/reactos/subsystems/win32/win32k/ntuser/focus.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntuser/focus.c?rev=54596&r1=54595&r2=54596&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/focus.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/focus.c [iso-8859-1] Mon Dec  
5 01:09:25 2011
@@ -63,7 +63,8 @@
       if (WindowPrev) UserRefObjectCo(WindowPrev, &RefPrev);
 
       /* Send palette messages */
-      if (co_IntPostOrSendMessage(hWnd, WM_QUERYNEWPALETTE, 0, 0))
+      if (gpsi->PUSIFlags & PUSIF_PALETTEDISPLAY &&
+          co_IntPostOrSendMessage(hWnd, WM_QUERYNEWPALETTE, 0, 0))
       {
          UserSendNotifyMessage( HWND_BROADCAST,
                                 WM_PALETTEISCHANGING,

Modified: trunk/reactos/subsystems/win32/win32k/ntuser/winsta.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntuser/winsta.c?rev=54596&r1=54595&r2=54596&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/winsta.c [iso-8859-1] 
(original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/winsta.c [iso-8859-1] Mon Dec  
5 01:09:25 2011
@@ -306,6 +306,12 @@
    gpsi->BitsPixel     = NtGdiGetDeviceCaps(ScreenDeviceContext, BITSPIXEL);
    gpsi->BitCount      = gpsi->Planes * gpsi->BitsPixel;
    gpsi->dmLogPixels   = NtGdiGetDeviceCaps(ScreenDeviceContext, LOGPIXELSY);
+   if (NtGdiGetDeviceCaps(ScreenDeviceContext, RASTERCAPS) & RC_PALETTE)
+   {
+      gpsi->PUSIFlags |= PUSIF_PALETTEDISPLAY;
+   }
+   else
+      gpsi->PUSIFlags &= ~PUSIF_PALETTEDISPLAY;
    // Font is realized and this dc was previously set to internal DC_ATTR.
    gpsi->cxSysFontChar = IntGetCharDimensions(hSystemBM, &tmw, 
(DWORD*)&gpsi->cySysFontChar);
    gpsi->tmSysFont     = tmw;


Reply via email to