Katayama Hirofumi MZ
1bc9dda5e6
[NTUSER] Rewrite NtUserDestroyInputContext ( #4342 )
...
CORE-11700
2022-02-07 10:45:02 +09:00
Katayama Hirofumi MZ
f2c3167db3
[NTUSER] Implement NtUserAssociateInputContext ( #4334 )
...
- Add IntReAllocatePoolWithTag function in window.c.
- Define WINDOWLIST structure in "window.h".
- Add IntBuildHwndList and IntFreeHwndList helper functions in window.c.
- Add IntAssociateInputContext and IntAssociateInputContextEx helper functions in ime.c.
- Implement NtUserAssociateInputContext function.
CORE-11700
2022-02-05 20:23:57 +09:00
Joachim Henze
bf16435303
[WIN32SS] Remove an ambiguous assert entirely CORE-16738
...
It popped up very reliably when performing git-clone of the ros sources
while having the taskmgr open in the processes-tab.
Or when building 'ninja bootcd -j1' while having the taskmgr open in the processes-tab.
It is always possible to ignore it and then continue using ros for days without
noticing any side effects.
James Tabor judged the assert to have a "questionable logic".
Giannis who once added it, was also ok with commenting it.
His words:
This assertion isn't something fatal,
the worst thing that can happen from continuing on it would be
to make the thread get awake more times than it should.
It was commented out already on 2020-04-21 via
0.4.14-dev-1519-g 87f6c82d85
2022-02-05 01:06:15 +01:00
Katayama Hirofumi MZ
0519ae0ac5
[NTUSER] Half-implement NtUserSetImeOwnerWindow ( #4332 )
...
- Add some code to NtUserSetImeOwnerWindow function.
- Add IntGetTopLevelWindow helper function.
CORE-11700
2022-02-03 13:39:15 +09:00
Katayama Hirofumi MZ
8c6dcdcf81
[USER32] Implement ImeWnd_OnImeSetContext ( #4329 )
...
- Modify NtUserSetImeOwnerWindow prototype.
- Add User32GetTopLevelWindow function.
- Add ImeWnd_OnImeSetContext function.
- Implement WM_IME_SETCONTEXT message handling of the IME window.
CORE-11700
2022-02-02 11:58:31 +09:00
Katayama Hirofumi MZ
470aa27610
[NTUSER] Move IMM-related code to ime.c ( #4322 )
...
Move the IMM-related code from ntstubs.c into ime.c.
CORE-11700
2022-02-02 11:56:40 +09:00
Katayama Hirofumi MZ
99614febad
[USER32] Add ImeWnd_OnImeSystem ( #4327 )
...
- Add WM_IME_SYSTEM message handling of the IME window.
- Modify immtable.h.
CORE-11700
2022-01-31 21:20:08 +09:00
Katayama Hirofumi MZ
173fca6ed6
[NTUSER] UserIsDBCSEnabled: Vietnamese doesn't use DBCS
...
CORE-11700
2022-01-31 09:33:19 +09:00
Katayama Hirofumi MZ
c339105b0d
[NTUSER] Implement GetSystemMetrics.SM_DBCSENABLED ( #4317 )
...
- Add UserIsDBCSEnabled helper function.
- Support SM_DBCSENABLED value of GetSystemMetrics function.
CORE-11700
2022-01-30 11:23:22 +09:00
Katayama Hirofumi MZ
9c8167e90a
[NTUSER] Implement NtUserGetAppImeLevel and NtUserSetAppImeLevel ( #4313 )
...
- Add AtomImeLevel atom.
- Modify NtUserSetAppImeLevel prototype.
- Implement NtUserGetAppImeLevel and NtUserSetAppImeLevel functions.
CORE-11700
2022-01-27 07:29:19 +09:00
Katayama Hirofumi MZ
41b87158ff
[NTUSER] Improve NtUserGetThreadState ( #4300 )
...
- Improve enum ThreadStateRoutines.
- Improve NtUserGetThreadState function.
- Improve CLIENTIMC structure.
- Improve imm32 code.
CORE-17732
2022-01-20 11:49:27 +09:00
Julio Carchi
292e6a429f
[NTUSER] Initialize correctly CaretWidth value. ( #4297 ) CORE-13984 CORE-14359 CORE-16624
...
Fixes:
CORE-13984 LibreOffice Writer shows no blinking caret
CORE-14359 Apache Open Office 4.1.2 SWriter - no blinking Caret
CORE-16624 KVIRC, no blinking caret in configuration edit controls
2022-01-18 00:36:49 +01:00
Katayama Hirofumi MZ
ce6da820a4
[NTUSER] Implement NtUserBuildHimcList ( #4286 )
...
- Add UserBuildHimcList helper function.
- Implement NtUserBuildHimcList function.
CORE-11700
2022-01-16 09:56:18 +09:00
Katayama Hirofumi MZ
48827cf6c5
[NTUSER] Follow-up of #4277 ( ea1353e
)
...
According to ThFabba, NtUserSetThreadLayoutHandles returns zero.
CORE-11700
2022-01-13 10:41:03 +09:00
Katayama Hirofumi MZ
ea1353e4be
[NTUSER] Implement NtUserSetThreadLayoutHandles ( #4277 )
...
- Modify NtUserSetThreadLayoutHandles prototype.
- Implement NtUserSetThreadLayoutHandles function.
CORE-11700
2022-01-12 14:48:20 +09:00
Katayama Hirofumi MZ
28959a2dfd
[NTUSER] Follow-up of #4271 ( 36740ca
)
...
- Delete the excessive comments.
- Delete the debugging leftover.
CORE-11700
2022-01-12 14:08:10 +09:00
Katayama Hirofumi MZ
1f44693657
[NTUSER] Implement NtUserSetImeInfoEx ( #4276 )
...
- Modify NtUserSetImeInfoEx prototype.
- Add UserSetImeInfoEx helper function.
- Implement NtUserSetImeInfoEx function.
CORE-11700
2022-01-12 12:07:31 +09:00
Katayama Hirofumi MZ
36740ca981
[NTUSER][IMM32] Implement NtUserGetImeInfoEx ( #4271 )
...
- Add UserGetImeInfoEx helper function.
- Implement NtUserGetImeInfoEx function by using UserGetImeInfoEx.
- Fix imm32.ImmGetImeInfoEx.
- Modify enum IMEINFOEXCLASS.
CORE-11700
2022-01-12 12:06:24 +09:00
Katayama Hirofumi MZ
8e8f61989a
[NTUSER] Plan A: UserDereferenceObject in UserCreateInputContext ( #4247 )
...
- Call UserDereferenceObject function in UserCreateInputContext.
- Don't call UserDereferenceObject against input context at the other places.
CORE-11700
2022-01-05 08:15:32 +09:00
Stanislav Motylkov
27955da7ee
[WIN32K:NTUSER] Fix one more reference leak
...
Addendum to d5deacd9
and 2a2f8dbe
. CORE-11700
2022-01-04 03:12:12 +03:00
Thomas Faber
2a2f8dbebd
[WIN32K:NTUSER] Fix reference leak
2022-01-03 13:25:09 -05:00
Katayama Hirofumi MZ
757bed81b1
[NTUSER] Fix KVM and VBox tests ( #4235 )
...
KVM and VBox tests was failing since d5deacd
- Check NULL at UserFreeInputContext and UserDestroyInputContext functions.
- Move UserMarkObjectDestroy into the UserDestroyInputContext function.
CORE-11700
2022-01-02 01:40:11 +09:00
Katayama Hirofumi MZ
d5deacd903
[NTUSER] Implement NtUserCreateInputContext ( #4230 )
...
- Modify NtUserCreateInputContext prototype.
- Add UserCreateInputContext helper function.
- Implement NtUserCreateInputContext function by using UserCreateInputContext.
- Call UserCreateInputContext(0) in InitThreadCallback function to create the default input context.
CORE-11700
2022-01-01 20:59:00 +09:00
Katayama Hirofumi MZ
ba3affe5f7
[NTUSER] Implement NtUserUpdateInputContext ( #4228 )
...
- Modify NtUserUpdateInputContext prototype.
- Implement NtUserUpdateInputContext function.
- Add enum UPDATE_INPUT_CONTEXT (UIC_*) to undocuser.h.
CORE-11700
2022-01-01 20:57:51 +09:00
Katayama Hirofumi MZ
cdf3b5e85a
[NTUSER] Implement NtUserQueryInputContext ( #4227 )
...
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
- Modify NtUserQueryInputContext prototype.
- Implement NtUserQueryInputContext function.
- Add enum QUERY_INPUT_CONTEXT (QIC_*) to undocuser.h.
CORE-11700
2022-01-01 20:56:50 +09:00
Katayama Hirofumi MZ
fcc222c28a
[NTUSER] Implement NtUserDisableThreadIme ( #4216 )
...
CORE-11700
2021-12-31 10:20:53 +09:00
Katayama Hirofumi MZ
051561ed17
[NTUSER] Use call procedure handle if available ( #4178 )
...
Based on I_Kill_Bugs' patch.
- Use IsCallProcHandle to check if the procedure is a call procedure handle.
- If so, use the call procedure.
CORE-10499
2021-12-23 11:53:18 +09:00
Serge Gautherie
d375b7f6c5
[WIN32K:NTUSER] Make sure to hold User Global Lock before mapping desktop heap ( #4144 )
...
Addendum to 8c098ee8d
.
CORE-17890
2021-12-19 23:34:35 +01:00
Doug Lyons
7d1b50394b
[WIN32SS] Do not remove message from the Msg Queue if it is not for us. ( #4129 )
...
CORE-8217
Patch from 'I_Kill_Bugs' contributor.
2021-12-19 16:03:22 +01:00
Katayama Hirofumi MZ
f643fb301b
[NTUSER] Fix SwitchToThisWindow
...
Taskbar task buttons were not working correctly due to this bug.
CORE-17911
2021-12-17 11:38:23 +09:00
Katayama Hirofumi MZ
0b6f3eb8e4
[NTUSER][USER32] Use async way in TileWindows and CascadeWindows ( #4167 )
...
Processing asynchronously. CORE-17894
2021-12-16 09:52:02 +09:00
Katayama Hirofumi MZ
55a1c29341
[NTUSER][USER32] Simplify SwitchToThisWindow ( #4153 )
...
CORE-17894
2021-12-13 08:14:33 +09:00
Katayama Hirofumi MZ
ee3659d5d5
[NTUSER][USER32] Simplify user32.IsHungAppWindow ( #4150 )
...
Check FNID_GHOST and MsqIsHung. CORE-17894
2021-12-09 00:39:57 +09:00
Katayama Hirofumi MZ
79c926c893
[NTUSER] Implement HSHELL_RUDEAPPACTIVATE notification ( #4147 )
...
- Add IntIsWindowFullscreen function to judge whether the window is fullscreen.
- Add IntCheckFullscreen function to notify HSHELL_RUDEAPPACTIVATE if fullscreen.
- Add IntCheckFullscreen call in UpdateShellHook function.
- Add IntCheckFullscreen call in co_WinPosSetWindowPos function.
CORE-16130
2021-12-08 18:26:22 +09:00
Katayama Hirofumi MZ
f606fecb0d
[NTUSER] Fix where linking newly created window is done ( #4127 )
...
Co-authored-by: I_Kill_Bugs <>
CORE-12052
2021-12-04 11:52:38 +09:00
Denis Malikov
db810d8e44
[WIN32SS:NTUSER] Fix window state after restoring snapped window ( #4119 )
...
InternalPos.NormalRect is a key data for detecting whether a window was snapped.
Keeping it after restore affecting next snap actions.
CORE-16477
2021-11-23 23:34:03 +01:00
Thomas Faber
0af3689c2e
[REACTOS] Fix traces with missing arguments.
...
Courtesy of VS Code Analysis warning C6064:
Missing integer argument to 'DbgPrint' that corresponds to conversion specifier 'N'.
2021-11-21 12:57:35 -05:00
Katayama Hirofumi MZ
3d78601f39
[WIN32SS][NTUSER] Implement NtUserDestroyInputContext ( #4063 )
...
CORE-11700
2021-11-01 15:20:42 +09:00
Thomas Faber
4bc95812fd
[WIN32K] Mark default as unreachable.
...
Powered by clang-cl.
2021-10-29 22:06:49 -04:00
Thomas Faber
3235e35dee
[WIN32K] Remove unnecessary if in NtUserGetGUIThreadInfo.
...
This condition is already checked above.
Powered by clang-cl.
2021-10-29 22:06:49 -04:00
Thomas Faber
42657493ef
[WIN32K] Fix uninitialized hNewMenu use in MENU_DoNextMenu.
...
See also: Wine's implementation.
Powered by clang-cl.
2021-10-29 22:06:46 -04:00
Katayama Hirofumi MZ
6417b2323d
[NTUSER][USER32] Workaround tracking menu on CORE-17338 ( #4048 )
...
This prevents the tracking menu from erroneously closing itself right after it was opened in some cases.
Fixes CORE-17338 which got unhidden by 0.4.15-dev-1126-g 58b0558f94
And fixes CORE-15760 which got unhidden by SVN r74972 == git 19dd22d422
Since both symptoms look very similar but the unhiding revisions did differ,
that could mean we do have some kind of race condition here.
I guess this fix is more like a workaround. I do intend to port it back nevertheless.
2021-10-23 22:29:39 +02:00
Hermès Bélusca-Maïto
5891ab2bfd
[WIN32SS:NTUSER] Make sure to hold User Global Lock before manipulating desktops. ( #4053 )
2021-10-22 21:44:56 +02:00
Hermès Bélusca-Maïto
6b7b0f0c7e
[WIN32SS:NTUSER] Few formatting fixes.
2021-10-22 21:44:52 +02:00
Katayama Hirofumi MZ
66ef31494e
[IMM32] Implement ImmActivateLayout ( #3987 )
...
- Add IME_STATE and IME_SUBSTATE structures.
- Modify INPUTCONTEXTDX structure.
- Implement ImmActivateLayout function.
- Improve ImmDestroyContext function by using newly-defined Imm32FreeImeStates.
- Add Imm32FetchImeState, Imm32FetchImeSubState, Imm32LoadImeStateSentence, Imm32SaveImeStateSentence, and Imm32SelectLayout helper functions.
- Modify NtUserSetThreadLayoutHandles prototype.
CORE-11700
2021-10-04 07:33:15 +09:00
Katayama Hirofumi MZ
9adc538c9c
[IMM32] Rewrite ImmSetActiveContext ( #3982 )
...
- Re-implement ImmSetActiveContext function.
- Modify NtUserNotifyIMEStatus prototype.
- Improve ImmSetConversionStatus and ImmSetOpenStatus functions.
CORE-11700
2021-10-01 03:02:56 +09:00
Arjav Garg
a602bc3550
[NTUSER] Fix UserSendKeyboardInput() KEYEVENTF_SCANCODE use case (CORE-17144)
2021-09-25 09:56:12 -04:00
Joachim Henze
222acf5a3e
[NTUSER] Scrollbar.c, Avoid potential out-of-bounds-accesses in co_IntSetScrollInfo() CORE-17777
...
This is an addendum to
0.4.15-dev-3174-g dda9c3979e
CORE-17769 and
0.4.15-dev-3147-g 3bf7e3ac13
CORE-17754 CORE-17755
We have not seen this happening in real-life yet, but some code-fragments within co_IntSetScrollInfo()
e.g. line 628 if (nBar == SB_CTL) do clearly indicate that nBar can be 2 (SB_CTL).
Some lines below we definitely must not access those 4 static arrays out of bounds then via nBar as access index!
Ftr with a bit of grepping I also found some calls like NtUserSetScrollInfo(Wnd, SB_CTL, &Info, FALSE);
e.g: in win32ss/user/user32/controls/scrollbar.c so I am pretty sure nBar == 2 can happen in practice within co_IntSetScrollInfo().
I question whether any of those reads/writes to those static arrays (or the comparisons) would make any sense on index 2,
so we should aim to eliminate them altogether in the future.
2021-09-20 03:05:05 +02:00
Joachim Henze
dda9c3979e
[NTUSER] Scrollbar.c, improve co_IntSetScrollInfo() CORE-17769
...
Fixes CORE-17769 'Rapps Listview manual resize may erroneously not draw the triangles sometimes'
This could happen for both: themed and unthemed.
CORE-17769 was a regression introduced by 0.4.14-dev-1134-g 00adb1a3f9
We don't really like the added state in form of the static variables,
but the patch works good from a pure testing-perspective.
Many Thanks to the patches author: Doug Lyons
2021-09-19 22:35:37 +02:00
Hermès Bélusca-Maïto
271556e6f8
[WIN32SS] Disable by default the dumping function. Addendum to 69f90508
.
2021-09-19 00:46:56 +02:00
Hermès Bélusca-Maïto
69f905081c
[WIN32SS:NTUSER] Move the keyboard layout debugging code to a separate dump function.
...
And fix its obvious bugs, e.g. not checking for possible NULL pointers
for the optional keyboard layout sub-tables...
2021-09-19 00:18:04 +02:00
Katayama Hirofumi MZ
df6fff78bb
[IMM32] Rewrite ImmAssociateContextEx ( #3961 )
...
- Rewrite ImmAssociateContextEx function.
- Modify NtUserAssociateInputContext prototype.
CORE-11700
2021-09-16 19:29:49 +09:00
Hermès Bélusca-Maïto
9393fc320e
[FORMATTING] Remove trailing whitespace. Addendum to 34593d93
.
...
Excluded: 3rd-party code (incl. wine) and most of the win32ss.
2021-09-13 03:52:22 +02:00
Doug Lyons
3bf7e3ac13
[NTUSER] Improve Themed Scrollbars by Minimizing Updates ( #3953 )
...
This fixes regressions CORE-17754 and CORE-17755 which regressed by
0.4.15-dev-3086-g 236649c626
2021-09-12 22:54:46 +02:00
Hermès Bélusca-Maïto
4cbc61fd02
[WIN32SS:NTUSER][USER32] NtUserProcessConnect() should return pointers in user client-space. ( #3937 )
...
- Do the kernel/server --> user/client-space pointers conversion within
NtUserProcessConnect(), instead of having the callers of this function
doing this job.
This makes the behaviour Windows-compatible.
NOTE: the gHandleEntries pointer is ReactOS-specific!
- Drop the g_ulSharedDelta global, just use instead gSharedInfo.ulSharedDelta.
- Add extra documentation aspects for NtUserProcessConnect() that are
not yet implemented in ReactOS.
2021-09-09 16:15:12 +02:00
Doug Lyons
236649c626
[UXTHEME][NTUSER] Fix flashing of scrollbar when scrolling ( #3868 )
...
Based on a patch by I_Kill_Bugs.
2021-09-03 22:34:26 +03:00
Katayama Hirofumi MZ
10c9aa067f
[NTUSER] Improve NtUserQueryWindow ( #3915 )
...
- Improve NtUserQueryWindow function.
- Add IMC structure.
- Modify THREADINFO structure.
CORE-11700
2021-08-21 07:31:10 +09:00
Katayama Hirofumi MZ
f4bc74edc3
[IMM32] ImmGenerateMessage and ImmTranslateMessage ( #3914 )
...
- Rewrite `ImmGenerateMessage` and `ImmTranslateMessage` functions.
- Rename `INPUTCONTEXTDX.bHasVKey` as `bNeedsTrans`.
- Move `TRANSMSG` structure into `ntuser.h`.
- Add `TRANSMSGLIST` structure into `ntuser.h`.
- Add `UNDETERMINESTRUCT` structure to `ddk/imm.h`.
- Modify `NtUserGetAppImeLevel` prototype.
CORE-11700
2021-08-18 08:42:12 +09:00
Jérôme Gardou
c4801ab696
[WIN32K] Do not release twice the lock on error path
2021-08-06 15:18:21 +02:00
Jérôme Gardou
0bc00267df
[WIN32K] Init User part after GDI one.
...
But Initialize user lock first thing to avoid hitting newly introduced ASSERTS
This partly reverts commit 515d83a883
.
2021-08-06 10:15:02 +02:00
Katayama Hirofumi MZ
692a30a84a
[IMM32] ImmCreateContext, ImmDestroyContext, DllMain etc. ( #3867 )
...
- Rewrite ImmCreateContext, ImmDestroyContext, and DllMain functions.
- Add g_hImm32Inst, g_bClientRegd, and g_SharedInfo global variables. Delete g_dwImm32Flags (that was g_psi->dwSRVIFlags).
- Implement ImmLoadIME and ImmRegisterClient functions.
- Modify CLIENTIMC and IMEDPI structures. Move CLIENTIMC definition into ntuser.h.
- Add file win32ss/include/imetable.h.
- Rename SRVINFO_METRICS macro as SRVINFO_CICERO_ENABLED.
CORE-11700
2021-08-04 09:41:59 +09:00
Jérôme Gardou
bd6fb80867
[WIN32K:NTUSER] In debug builds, enable free & tail checking when creating heaps
...
Actually catches bugs
2021-08-03 23:13:19 +02:00
Jérôme Gardou
b783b16cef
[WIN32K:USER] Fix potential use after free when painting child windows
2021-08-03 23:13:19 +02:00
Jérôme Gardou
d958dc9bc2
[WIN32K:NTUSER] Assert global user lock is held exclusively when using global & desktop heaps
...
They're explicitly not serialized because we count on this.
2021-08-03 23:13:19 +02:00
Jérôme Gardou
8c098ee8d2
[WIN32K:NTUSER] Make sure to hold User Global Lock before unmapping desktop heap
2021-08-03 23:13:19 +02:00
Jérôme Gardou
6ec0420dc6
[WIN32K:NTUSER] Allocate & free timers under global user lock
2021-08-03 23:13:19 +02:00
Jérôme Gardou
515d83a883
[WIN32K] On init, start by initializing NtUser stuff
...
Allocate gpsi (Global Server Info) after initializing & grabbing Userlock
2021-08-03 23:13:19 +02:00
Katayama Hirofumi MZ
89cb8a38b3
[IMM32] Rewrite ImmEnumInputContext ( #3859 )
...
- Rewrite ImmEnumInputContext function.
- Modify NtUserBuildHimcList.
CORE-11700
2021-07-31 15:45:07 +09:00
Timo Kreuzer
204626f793
[WIN32K] Fix uninitialized variable
2021-07-27 14:44:14 +02:00
Katayama Hirofumi MZ
ecb0c0963d
[IMM32] Imm(Lock|Unlock)ImeDpi and ImmSetOpenStatus ( #3830 )
...
- Add IMEDPI structure to ntuser.h.
- Implement ImmLockImeDpi/ImmUnlockImeDpi functions.
- Rewrite ImmSetOpenStatus function.
- Modify some NTUSER function prototypes.
- Modify imm32.spec.
CORE-11700
2021-07-25 11:57:57 +09:00
Timo Kreuzer
77e891b8ab
[WIN32K] Check if a graphics device already exists before trying to add it
...
This avoids DPRINTs alleging a failure to open a device.
Also improve another DPRINT.
2021-07-15 08:32:46 +02:00
Katayama Hirofumi MZ
92393a7517
[IMM32] Add some candidate handlings ( #3799 )
...
- Implement ImmGetCandidateListA and ImmGetCandidateListW, by using newly added ImmGetCandidateListAW function.
- Implement ImmLockClientImc and ImmUnlockClientImc functions.
- Modify imm32.spec.
- Remove #ifdef's.
CORE-11700
2021-07-11 09:48:15 +09:00
Hervé Poussineau
0f6b9664cd
[WIN32K] HACK: create a DC on all display devices and display wallpaper
2021-07-10 16:27:44 +02:00
Hervé Poussineau
6739fb1bc3
[WIN32K] Move detection of available display devices a new fonction EngpUpdateGraphicsDeviceList
...
- rewrite InitVideo() to call this new function
- also call it at the start of UserEnumDisplayDevices, to detect new potential devices
2021-07-10 16:27:44 +02:00
Jérôme Gardou
813d9cd2cc
[WIN32K:NTUSER] Do not pass NULL keyboard layout to IntToUnicodeEx
...
There's an ASSERT on that
2021-06-29 11:49:20 +02:00
Katayama Hirofumi MZ
59d4c11203
[WIN32SS][NTUSER] ShowWindow.SW_MINIMIZE should show window ( #3700 )
...
- user32!ShowWindow.SW_MINIMIZE should show the window.
- Fix the return value of ShowWindow function on invalid parameter.
CORE-15669
2021-06-01 11:11:23 +09:00
Katayama Hirofumi MZ
32b0cf6fc6
[WIN32SS][NTUSER] Improve HSHELL_WINDOWCREATED condition ( #3697 )
...
Modify the condition of generating HSHELL_WINDOWCREATED, especially on WS_CHILD window style. CORE-15669
2021-05-31 13:08:06 +09:00
Timo Kreuzer
d07203ecb7
[WIN32K][USER32] Change mechanism for storing dialog info pointer
...
DLGWINDOWEXTRA is 30 (both on win32 and win64). This has storage for the following entries: DWLP_MSGRESULT (0), DWLP_DLGPROC (8), DWLP_USER (16)
We used to store the dialog info pointer using SetWindowLongPtr (DWLP_ROS_DIALOGINFO == DWLP_USER+sizeof(ULONG_PTR) == 24), which was fine on win32, but failed on win64, since there wasn't enough space left (24 + 8 = 32 > 30).
Rewrite the way the DLGINFO pointer is stored, by adding an additional field to the WND structure and set it using NtUserxSetDialogPointer (which is what it is for).
Also fix too small cbWndExtra for the button class.
2021-05-28 08:26:36 +02:00
Jérôme Gardou
3adf450867
[REACTOS] Addendum to 5c7ce4475e
- Fix MSVC 2015 build
...
Put data into PAGEDATA or INITDATA sections
Keep section declaration for prototypes
CORE-17540
2021-05-12 11:04:29 +02:00
George Bișoc
ffea5152e6
[WIN32SS][NTUSER] Fix an integer underflow within scrollbar info setting
...
Thanks goes to I_Kill_Bugs for the patch (and partly to Kyle Katarn for the PR) and Hermes for tweaking the patch code. Had to make a commit myself as the PR author's account is deleted.
Signed-off by: I_Kill_Bugs (original patch author)
Signed-off by: Kyle Katarn <contact@kcsoftwares.com>
Signed-off by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2021-04-25 15:56:39 +02:00
Victor Perevertkin
46ca069e42
[XDK] Remove UNREFERENCE_LOCAL_VARIABLE macro
...
Change UNREFERENCED_PARAMETER to (VOID)P to support const parameters
2021-01-19 00:15:02 +03:00
Dmitry Borisov
bc90cbbb88
[WIN32K:NTUSER] Fix gradient caption bars with low color depth ( #3338 )
...
This fixes a problem when the window title bar is dithered down
to the 16- or 256-color palette. See also commit 0705f30
.
2020-12-20 23:12:30 +03:00
Joachim Henze
449a341786
[WIN32SS] Trim EOL white-space
...
Addendum to 0.4.15-dev-1457-g 870aa1254f
2020-12-19 17:51:37 +01:00
Joachim Henze
870aa1254f
[WIN32SS] Fix BSOD 0x1E nullptr deref via Git-bash CORE-16586
...
Thanks to the patches author Doug Lyons!
2020-12-19 17:47:33 +01:00
Victor Perevertkin
5c7ce4475e
[REACTOS] Cleanup INIT and some PAGE section allocations
...
- Change INIT_FUNCTION and INIT_SECTION to CODE_SEG("INIT") and DATA_SEG("INIT") respectively
- Remove INIT_FUNCTION from function prototypes
- Remove alloc_text pragma calls as they are not needed anymore
2020-11-02 21:45:31 +03:00
Doug Lyons
8081ba9332
[WIN32SS] Repaint the whole window frame on some style bits set ( #3199 )
...
This fixes the ReactOS Calculator buttons disappearing in CORE-16827
2020-10-24 22:35:45 +03:00
Katayama Hirofumi MZ
58b0558f94
[NTUSER] Fix Shell Hook HSHELL_WINDOWCREATED ( #3294 )
...
Fix Shell Hook and reduce failures of shell32_apitest ShellHook testcase. Fix the condition of notifying shell hook HSHELL_WINDOWCREATED in ntuser/winpos.c. CORE-17330
2020-10-13 16:37:52 +09:00
Kyle Katarn
9f428f5522
[NTUSER] Demote ERR to TRACE, also some minor corrections ( #3132 )
2020-09-05 17:59:10 +03:00
Katayama Hirofumi MZ
dce62240f1
[NTUSER] Improve SPI_SETWORKAREA setting ( #3061 )
...
CORE-12018, CORE-7237
2020-08-20 11:31:57 +09:00
Katayama Hirofumi MZ
81f28d454a
[NTUSER] Set ERROR_INVALID_WINDOW_HANDLE when PostMessage failed ( #3059 )
...
Set the last error code ERROR_INVALID_WINDOW_HANDLE when user32!PostMessage failed with destroyed window.
CORE-12124
2020-08-18 05:32:44 +09:00
Katayama Hirofumi MZ
4b038ec8b7
[IMM32][NTUSER] Add ImmGetImeInfoEx ( #3035 )
...
- Add the definition of imm32!ImmGetImeInfoEx function.
- Add IMEINFOEXCLASS and IS_IME_HKL into "ntuser.h".
- Modify NtUserGetImeInfoEx function prototype.
CORE-11700
2020-08-12 06:03:29 +09:00
Katayama Hirofumi MZ
047da7e632
[NTUSER] Add more QUERY_WINDOW_* values ( #3034 )
...
Add QUERY_WINDOW_* constant values for NtUserQueryWindow funciton. CORE-11700
2020-08-12 06:01:22 +09:00
Katayama Hirofumi MZ
ec9d277d59
[IMM32][NTUSER] Implement ImmGetHotKey ( #3025 )
...
CORE-11700
- Implement imm32!ImmGetHotKey function.
- Modify NtUserGetImeHotKey function.
- Add LPHKL typedef into <imm.h> header.
2020-08-09 22:41:11 +09:00
Nguyen Trung Khanh
ff50b0db2e
[NTUSER] Fix stack memory disclosure in NtUserBuildPropList ( #3023 )
...
Fix structure alignment cause to stack memory disclosure in NtUserBuildPropList.
2020-08-08 14:05:22 +09:00
Jose Carlos Jesus
62e52c7237
[USER32][NTUSER] Fix wrong return from LB_GETLISTBOXINFO ( #2168 )
...
And is now consistent with comctl32 and Wine too...
2020-07-04 15:11:10 +02:00
Nguyen Trung Khanh
a279b1d2c6
[WIN32K:NTUSER] Zero allocated memory in IntCbAllocateMemory.
...
This avoids disclosing pool contents to user mode when not all members
of the respective structure are initialized or when there is padding.
In co_IntCallWindowProc, also zero the stack buffer since this can
be passed to user mode as well, and contains padding.
2020-06-24 09:15:27 +02:00
James Tabor
f6d2b34ad0
[NtUser] Fix MSVC_x64 Build
...
Attempt to fix.
2020-06-18 11:55:13 -05:00
James Tabor
06e01c8968
[NtUser] Fix Crash in Win32k
...
Use strict thread and desktop verifying. See CORE-15092 and CORE-17133.
2020-06-18 11:06:31 -05:00
Serge Gautherie
938df97b54
[WIN32K:NTUSER] NC_IconForWindow(): Remove redundant if() ( #2842 )
...
No impact.
Detected by Cppcheck: identicalInnerCondition.
Addendum to 98060c28c8
(r60622).
2020-05-26 20:25:39 +02:00
Mark Jansen
dd8f30f879
[WIN32K] Allocate a buffer for a classname that is too long
2020-04-27 12:54:10 +02:00