[win32k]
authorMichael Martin <michael.martin@reactos.org>
Sat, 8 May 2010 15:49:02 +0000 (15:49 +0000)
committerMichael Martin <michael.martin@reactos.org>
Sat, 8 May 2010 15:49:02 +0000 (15:49 +0000)
commit5678dca446e6a65e5f238933e81aac8a37e9f1ef
tree661ef465944b43d882da4e9f183200062416c94a
parent4b9b7d580f842c505fe71b616089dcfb182b2caf
[win32k]
- Modify how non-queued messages are send that originate from the Win23k subsystem.
Non-queued messages must go directly to the windows WNDPROC and not through the message pump (previews ROS behavior).
More importantly sending these messages must not cause the sending thread to block waiting for a reply.
- Add a messaging handling function that always sends message from Win32k to the windows thread without waiting.
This will also allow the implementation of message call back later.
- Modify PackParam and UnpackParam to accept a BOOL value to determine whether LParam needs to be allocated from NonPagedPool.
Use with new message handling as if message sent to another thread have any pointers they must be allocated from NonPagedPool.
- Fixed broken logic in can_active_window function and co_WinPosShowWindow.
- Fixed broken logic in co_IntSendActivateMessages.
The WM_ACTIVATEAPP message was being sent to every window belonging to the desktop twice.
Once with flag saying window was activated and again with deactivated.
- These changes should fix bugs #969, #3171, #4501, #4676, #4677, #4948.

svn path=/trunk/; revision=47126
reactos/subsystems/win32/win32k/include/msgqueue.h
reactos/subsystems/win32/win32k/ntuser/focus.c
reactos/subsystems/win32/win32k/ntuser/message.c
reactos/subsystems/win32/win32k/ntuser/msgqueue.c
reactos/subsystems/win32/win32k/ntuser/winpos.c