Commit graph

96 commits

Author SHA1 Message Date
Gunnar Dalsnes
fdafc67fbe -refcount reworking (simplification & improvement)
-make functions deal with pointers, not handles
-misc formatting

svn path=/trunk/; revision=17802
2005-09-11 14:48:32 +00:00
Gunnar Dalsnes
7c6de62098 indent with astyle v1.15.3: --style=ansi -c -s3 -S --convert-tabs
svn path=/trunk/; revision=17730
2005-09-07 21:25:42 +00:00
Gunnar Dalsnes
5d8ed11b10 window pointer was incorrectly passed as wparam to co_IntSendMessage instead of hwnd
svn path=/trunk/; revision=17729
2005-09-07 21:05:16 +00:00
Gunnar Dalsnes
781981aa5f naming changes:
-remove annying "Object" from variables. prepend handles with "h" instead.
-rename window->Self -> Window->hSelf

svn path=/trunk/; revision=17695
2005-09-06 11:00:27 +00:00
Gunnar Dalsnes
771f9106f8 remove user handle table lock, cursor locks, message queue locks, hook lock
svn path=/trunk/; revision=17685
2005-09-05 23:11:41 +00:00
Gunnar Dalsnes
965b06eb4d -surround user part (most of it) with a single lock (currently a mutex, but will be a resource). other now useless locks will be removed next.
-dont call NtUser fucnctions internally (they are syscalls only!)
-prepend co_ to functions leading to a "callout" (callback, wait, etc)


svn path=/trunk/; revision=17671
2005-09-05 21:19:23 +00:00
Hartmut Birr
050b5c1946 Revert my last commit (r16578).
svn path=/trunk/; revision=16582
2005-07-15 15:30:23 +00:00
Hartmut Birr
bde6eea1e8 Fixed a test condition in IntWaitMessage.
svn path=/trunk/; revision=16578
2005-07-15 14:40:47 +00:00
Filip Navara
db07afe07a Move the inclusion of <debug.h> to individual files and consolidate the inclusion of DDRAW/D3D headers a bit.
svn path=/trunk/; revision=16320
2005-06-29 07:09:25 +00:00
James Tabor
2054ea72e9 Pluged in CallMsgFilter, I tested this and no crashes on real hardware.
svn path=/trunk/; revision=15935
2005-06-16 20:46:39 +00:00
Gé van Geldorp
c1557a2be1 Present for GreatLord:
Implement WH_KEYBOARD_LL hook

svn path=/trunk/; revision=15281
2005-05-14 18:03:31 +00:00
Steven Edwards
476cbed37c remove whitespace from end of lines
svn path=/trunk/; revision=15106
2005-05-08 02:11:54 +00:00
Thomas Bluemel
64c70941d3 Alex Ionescu <ionucu@videotron.ca>
- Remove branch leftover in debug message.
- Uncondtionally enable setting the Window Station Atom Table.

svn path=/trunk/; revision=13972
2005-03-12 18:15:54 +00:00
Filip Navara
5307ffb9c6 Alex Ionescu <ionucu@videotron.ca>
Move win32k callbacks to win32k where they belong. Registration is done with Ps function just like on XP+. Also allows non-win32k stuff to manage their own desktops and window stations.

svn path=/trunk/; revision=13968
2005-03-12 14:15:49 +00:00
Thomas Bluemel
6d97eb3b0f 1. object type names are stored in ntoskrnl's image (which is nonpaged memory), so there's no need to allocate and copy them to new memory
2. fixed PsLookupThreadByThreadId() prototype
3. renamed the process list to PsActiveProcessHead and use fast mutexes to serialize access to it

svn path=/trunk/; revision=13623
2005-02-17 16:41:28 +00:00
Thomas Bluemel
a84129a69e This patch removes the cursor location from the window station object and always uses it in the GDIDEVICE. Patch by tinus. Fixes bug #484
svn path=/trunk/; revision=13333
2005-01-27 00:49:24 +00:00
Filip Navara
fca5c9e765 Don't free the memory for LParam in NtUserPeekMessage if called with PM_NOREMOVE flag.
svn path=/trunk/; revision=12800
2005-01-04 21:25:20 +00:00
Gé van Geldorp
cffcbe1d74 Generate timer messages instead of queueing them
svn path=/trunk/; revision=12387
2004-12-29 19:55:01 +00:00
Filip Navara
adc5944468 - Partial implementation of RealMsgWaitForMultipleObjectsEx and message queue wake mask.
- Fix setting of menu item type and strings.

svn path=/trunk/; revision=12336
2004-12-25 22:59:10 +00:00
Filip Navara
681a0743e5 - Fix finding of windows by classes in NtUserFindWindow.
- Marshal WM_COPYDATA messages.

svn path=/trunk/; revision=12331
2004-12-25 20:30:50 +00:00
Thomas Bluemel
ed47eaa79a 1. don't dispatch sent messages to windows during destruction
2. fixed class lookup in a hacky way (get's rewritten soon anyway)

svn path=/trunk/; revision=12026
2004-12-11 19:39:18 +00:00
Thomas Bluemel
b7100ed2fc 1. removed window station/desktop hacks from ntoskrnl
2. implemented window station/desktop inheritance on thread/process startup
3. implemented process locking
4. fixed some fields in the EPROCESS structure

svn path=/trunk/; revision=11712
2004-11-20 16:46:06 +00:00
Thomas Bluemel
2d01207958 1. get rid of the global thread list and group threads in processes instead
2. get rid of all reactos-specific fields in the E/KTHREAD structure and make them match the 2k layout
3. identify threads (and later processes) using a client id table (which should propably be replaced by a global handle table instead)
4. disabled thread event pair functions by default (NT4 only) as they require a field in the ETHREAD structure that is not present in later versions

svn path=/trunk/; revision=11105
2004-09-28 15:02:31 +00:00
Gé van Geldorp
d77482d763 Fix external termination of thread while thread is waiting in GetMessage()
svn path=/trunk/; revision=10830
2004-09-12 19:29:23 +00:00
Gé van Geldorp
9dc1445d4c If SendMessageTimeout() times out, GetLastError() should return 0
svn path=/trunk/; revision=10688
2004-08-26 12:29:37 +00:00
Filip Navara
8fab52126f - Fix errors during optimized build.
svn path=/trunk/; revision=9983
2004-07-03 17:40:27 +00:00
Gé van Geldorp
fbfd3a4820 Marshall WM_CREATE/WM_NCCREATE messages
svn path=/trunk/; revision=9675
2004-06-16 06:09:40 +00:00
Thomas Bluemel
f2992e0c09 prevent memory leaks if callbacks to usermode never return
svn path=/trunk/; revision=9473
2004-05-22 21:12:15 +00:00
Thomas Bluemel
dd55a50761 1. reverted my last change to SendMessageTimeout() which was wrong
2. fixed UserGetWindowIcon(), SendMessageTimeout() usually overwrites the result variable, even if it failed!

svn path=/trunk/; revision=9466
2004-05-22 09:22:41 +00:00
Thomas Bluemel
4c8d47cc6b fixed SendMessageTimeout() to return the correct result even when it timed out
svn path=/trunk/; revision=9462
2004-05-22 08:27:15 +00:00
Thomas Bluemel
192d918fb4 fixed missing dereferencing of threads in PostThreadMessage()
svn path=/trunk/; revision=9416
2004-05-16 18:33:40 +00:00
Thomas Bluemel
b3b134ecfa changed cursors/icons to use the window station handle table
svn path=/trunk/; revision=9389
2004-05-14 23:57:32 +00:00
Filip Navara
1f1079ac18 - Don't modify Msg->pt for mouse messages. It's supposed to be always in screen coordinates, not it client coordinates.
svn path=/trunk/; revision=9379
2004-05-14 16:48:04 +00:00
Thomas Bluemel
418b7e53a6 use a common header for most files in win32k to make use of precompiled headers
svn path=/trunk/; revision=9348
2004-05-10 17:07:20 +00:00
Thomas Bluemel
879f672ffe rewrote NtUserBuildHwndList()
svn path=/trunk/; revision=9314
2004-05-05 22:26:04 +00:00
Thomas Bluemel
e8953aae82 properly handle HTTRANSPARENT hittest with mouse messages
svn path=/trunk/; revision=9313
2004-05-05 22:13:17 +00:00
Gé van Geldorp
edbeb9c88b Implement DDE Execute:
- Do required translations (KernelMode -> UserMode format, ASCII/Unicode)
  in GetMessage
- Call window proc directly from DispatchMessage instead of via callback
- Apply message filter to WM_PAINT and WM_NCPAINT messages
- Implement marshalling of pointer lParams for PostMessage

svn path=/trunk/; revision=9247
2004-04-29 21:13:16 +00:00
Thomas Bluemel
8eca059c02 1. move SendMessage calls out of the message queue processing code
2. fixed translation of coordinates calculation in different thread states (capturing, in menus, ...)
3. Proper implementation of Set/GetWindowText/Length() (as described in
4. speed improvements

svn path=/trunk/; revision=9152
2004-04-15 23:36:03 +00:00
Thomas Bluemel
78b070f6b0 enable a debug message
svn path=/trunk/; revision=9143
2004-04-14 20:18:12 +00:00
Thomas Bluemel
83af3eae1d post focus messages to different threads
svn path=/trunk/; revision=9121
2004-04-13 13:50:31 +00:00
Gé van Geldorp
bb60332c70 Fix memory leak, thanks to Thomas for spotting this
svn path=/trunk/; revision=9019
2004-04-07 21:12:40 +00:00
Gé van Geldorp
335631830d - Pass args to MsqSendMessage in correct order
- Implement message sending to HWND_BROADCAST

svn path=/trunk/; revision=9011
2004-04-07 17:52:32 +00:00
Thomas Bluemel
169c5abd20 simplified calls to MsqPostMessage()
svn path=/trunk/; revision=8644
2004-03-11 16:17:25 +00:00
Thomas Bluemel
1988a7b8ea first attempt to implement SendMessageTimeout()
svn path=/trunk/; revision=8643
2004-03-11 14:47:44 +00:00
Thomas Bluemel
5299e2afd5 cleanup
svn path=/trunk/; revision=8350
2004-02-24 13:27:03 +00:00
Thomas Bluemel
b13d239f87 1. get rid of winlock.c
2. changed the Parent and Object field of the WINDOW_OBJECT structure to HANDLE for easier maintainance and serialize any access to them

svn path=/trunk/; revision=8346
2004-02-24 01:30:58 +00:00
Thomas Bluemel
90fb2c7def added pool tags for better debugging
svn path=/trunk/; revision=8271
2004-02-19 21:12:11 +00:00
Gé van Geldorp
55d09ef598 Don't callback from kernel to usermode if the thread is exiting
svn path=/trunk/; revision=8042
2004-02-05 20:09:10 +00:00
Gé van Geldorp
eb980ec861 Inform kernel whether Unicode or Ansi window proc is preferred
svn path=/trunk/; revision=7899
2004-01-28 20:54:30 +00:00
Gé van Geldorp
72a5d17432 Fix cross-thread WM_SETTEXT messages
svn path=/trunk/; revision=7889
2004-01-27 13:21:35 +00:00