Hervé Poussineau
f0b8a1730e
[VIDEOPRT] Correctly detach from device stack in case of failure
2022-10-15 15:06:53 +02:00
Katayama Hirofumi MZ
13868ee0e8
[USER32][NTUSER] Fill by white in DrawFrameControl:DFC_MENU ( #4779 )
...
DrawFrameControl:DFC_MENU draws the monochrome image of menu arrow or checkmark. However, the function didn't draw the entire rectangle correctly when the rectangle was not a square. CORE-18417
2022-10-15 21:00:13 +09:00
Katayama Hirofumi MZ
bbef618032
[KBSWITCH][IMM32][USER32] Consider keyboard layout corner cases
...
Considering invalid Keyboard Layout registry entries.
CORE-11700
2022-10-13 16:01:02 +09:00
Jose Carlos Jesus
a3eda784a5
[COMCTL32] Don't hardcode dwCaretWidth parameter while calling CreateCaret
...
Also replace 0 with NULL for the second argument of the function call.
CORE-18151
2022-10-12 22:12:19 +03:00
Jose Carlos Jesus
9789e9c409
[COMCTL32] Read caret width from registry
...
Add caret width value to EDITSTATE structure.
To keep the same behavior as Windows Server 2003,
we need to update dwCaretWidth when EDIT_WM_SetFocus is called.
CORE-18151
2022-10-12 22:12:19 +03:00
Jose Carlos Jesus
d794996217
[NTUSER] Call SpiSetDWord when processing SPI_SETCARETWIDTH message
...
This corresponds to REG_DWORD type of CaretWidth value.
CORE-18151
2022-10-12 22:12:12 +03:00
Hervé Poussineau
162de4a0d8
[WIN32SS:ENG] Call display mouse functions only when using hardware pointer
...
Otherwise, use software pointer functions.
This fixes graphical glitches on cursor change, when the display driver
provides accelerated pointer functions (DrvSetPointerShape/DrvMovePointer),
but refuses to handle a certain cursor.
These graphical glitches may be reproduced:
- by using Voodoo driver SFFT 1.9
- by using framebuf_new.dll instead of framebuf.dll
- by using the panning driver (setting DefaultSettings.XPanning and
DefaultSettings.YPanning in registry)
2022-10-11 19:04:59 +02:00
Hermès Bélusca-Maïto
58740bfbc1
[GDI32][USER32] Order the set_module_type arguments the usual way ("UNICODE" before the entrypoint).
...
+ Harmonize the entrypoints as well.
2022-10-06 15:37:23 +02:00
Katayama Hirofumi MZ
826bd41d88
[NTUSER][USER32] Initial support of WS_EX_NOACTIVATE flag ( #4731 )
...
WS_EX_NOACTIVATE flag forbids the window to be activated. CORE-18417
2022-10-04 09:40:43 +09:00
Doug Lyons
bd027c9de4
[NTUSER] Fix 'Trying to link windows to itself' ( #4478 ) CORE-18132
...
Fix 'Trying to link windows to itself' on DestroyWindow. Patch by I_Kill_Bugs.
This fixes a potential BSOD 0x50 observable in the app Localizer Editor"
2022-10-04 00:26:02 +02:00
Hervé Poussineau
7278ed2015
[WIN32SS] Change LDEVOBJ_bProbeAndCaptureDevmode to account for not provided fields when searching an exact mode
...
This fixes mode change if an application requests (for example) 640x480x32, without providing display frequency.
2022-09-28 18:31:19 +02:00
Hervé Poussineau
22d8c0fd54
[FRAMEBUF] Implement required DirectDraw functions
...
However, do not support any optional callback.
dxdiag now accepts to run DirectDraw tests.
2022-09-26 23:45:56 +02:00
Katayama Hirofumi MZ
2469ce2c31
[NTUSER][KBSWITCH] Realize Alt+Shift keyboard switch (retry) ( #4721 )
...
Alt+Shift is a useful key combination to switch the current keyboard layout. CORE-11737
- Add ID_NEXTLAYOUT command to kbswitch.
- Send command ID_NEXTLAYOUT to kbswitch on Alt+Shift key combination in WM_SYSKEYDOWN handling of IntDefWindowProc function.
- Make IntFindWindow a non-static function.
2022-09-26 08:07:50 +09:00
Katayama Hirofumi MZ
f79e80c520
[USER32][IMM32] Use wcscspn instead of wcsspn
...
b4575ec
and db00a75
were my mistakes.
CORE-11700
2022-09-23 13:50:24 +09:00
Mark Jansen
d84b76a69e
[GDI32] Fix ExtTextOutA with ETO_GLYPH_INDEX
...
CORE-18365
2022-09-18 20:51:12 +02:00
Katayama Hirofumi MZ
75116d6b87
[USER32] Avoid szImeFileName buffer overrun
...
CORE-11700
2022-09-16 18:04:55 +09:00
Katayama Hirofumi MZ
b4575eccd7
[USER32] Don't allow invalid 'IME File' values
...
Improve security. CORE-11700
2022-09-16 18:01:19 +09:00
Katayama Hirofumi MZ
8a48446d11
[NTUSER] Use IS_CICERO_MODE() macro in co_UserActivateKeyboardLayout
...
CORE-11700
2022-09-16 17:41:12 +09:00
Katayama Hirofumi MZ
596f04be6b
[USER32][INPUT] Support various keyboard layouts ( #4666 )
...
- Fix IntLoadKeyboardLayout function to return the correct HKL value.
- Modify LAYOUT_LIST_NODE structure to add more information.
- Fix LayoutList_GetByHkl function to choose the IME HKLs correctly.
- Ignore DELETED entries correctly.
- Improve UI/UX.
CORE-11700, CORE-13244, CORE-18364
2022-09-16 08:09:37 +09:00
Katayama Hirofumi MZ
8e110335e7
[USER32] Load keyboard layouts on logon correctly ( #4686 )
...
- Add IntLoadPreloadKeyboardLayouts helper function to load the layouts on log-on.
- In UpdatePerUserSystemParameters function, call CliImmInitializeHotKeys and IntLoadPreloadKeyboardLayouts functions.
CORE-16600
2022-09-14 02:58:28 +09:00
Katayama Hirofumi MZ
b76602ff22
[NTUSER] Fix UserSetDefaultInputLang by using reordering
...
- Move IntReorderKeyboardLayouts function.
- Fix UserSetDefaultInputLang function.
CORE-11700
2022-09-13 14:32:39 +09:00
Hervé Poussineau
b6d7571ebb
[CMAKE] Set KDBG define only where required (fastfat, win32k, ntoskrnl)
2022-09-10 23:16:27 +02:00
Katayama Hirofumi MZ
5bd03d8b97
[NTUSER] Implement IntReorderKeyboardLayouts
...
This function is provided for KLF_REORDER flag.
CORE-11700
2022-09-08 11:00:04 +09:00
Katayama Hirofumi MZ
5b87c95e23
[IMM32] s/Imm32IsCiceroMode/IS_CICERO_MODE/
...
CORE-11700
2022-09-08 09:40:50 +09:00
Katayama Hirofumi MZ
85e292d58f
[NTUSER][USER32][IMM32] Initialize pKL->piiex by using ImmLoadLayout ( #4645 )
...
To recognize IME, we have to initialize pKL->piiex.
- Add co_ClientImmLoadLayout and User32CallImmLoadLayoutFromKernel functions to call imm32!ImmLoadLayout on user mode from kernel.
- Use co_ClientImmLoadLayout in NtUserLoadKeyboardLayoutEx.
- Improve Imm32LoadIME to sanitize the IME table.
CORE-11700
2022-09-05 08:34:00 +09:00
Katayama Hirofumi MZ
facc2837a1
[NTUSER] Move TL structure definition to ntuser.h ( #4644 )
...
- Move struct _TL and TL definitions from win32.h to ntuser.h.
- Modify the type of TL.pfnFree as newly-defined TL_FN_FREE function pointer.
CORE-11700
2022-08-30 09:35:27 +09:00
Katayama Hirofumi MZ
8222c0e6d8
[KBSWITCH][NTUSER] Revert Shift+Alt handling
...
The current Shift+Alt handling is buggy. The keyboard won't work frequently.
It dislikes system-side Alt (VK_MENU) key handling.
It seems like Shift+Alt handling should be in kernel.
CORE-10667
2022-08-28 20:15:33 +09:00
Katayama Hirofumi MZ
6970b545af
[USER32] Follow-up of "Follow-up of 2ba41ad"
...
You are careless. Do test.
CORE-18338
2022-08-28 16:20:40 +09:00
Katayama Hirofumi MZ
8edc22a2ca
[USER32] Follow-up of 2ba41ad
...
Be careful about every case.
CORE-18338
2022-08-28 16:17:58 +09:00
Katayama Hirofumi MZ
2ba41ad4e0
[USER32] Retry: Fix build against 0aa9d9f
and 1d10671
...
CORE-18338
2022-08-28 16:12:55 +09:00
Katayama Hirofumi MZ
1d106717bf
[USER32] Fix build against 0aa9d9f
(uninitalized variable hKey)
...
2022-08-28T00:37:16.2978407Z d:\a\reactos\reactos\src\win32ss\user\user32\windows\input.c(671) : error C4700: uninitialized local variable 'hKey' used
CORE-18338
2022-08-28 16:06:21 +09:00
Katayama Hirofumi MZ
0aa9d9fdb7
[USER32] Fix HKL keyboard list values (Retrial)
...
CORE-18338
2022-08-28 09:08:12 +09:00
Katayama Hirofumi MZ
5d123ce5f1
Revert "[USER32] Fix HKL value in IntLoadKeyboardLayout ( #4632 )" ( #4637 )
...
This reverts commit ea2d32b9eb
.
2022-08-28 08:11:01 +09:00
Katayama Hirofumi MZ
ea2d32b9eb
[USER32] Fix HKL value in IntLoadKeyboardLayout ( #4632 )
...
The loaded HKL values were wrong. CORE-11700
2022-08-27 07:42:37 +09:00
Katayama Hirofumi MZ
c7ba53e3fb
[NTUSER] Follow-up of 9e7c2ba
...
CORE-11700
2022-08-25 12:07:32 +09:00
Katayama Hirofumi MZ
9e7c2ba460
[NTUSER] Improve NtUserGetImeInfoEx / NtUserSetImeInfoEx
...
CORE-11700
2022-08-25 10:20:42 +09:00
Katayama Hirofumi MZ
7151c30079
[USER32] Get/SetWindowLongPtr about PIMEUI ( #4625 )
...
In ImeWndProc_common, correctly get/set the PIMEUI value by Get/SetWindowLongPtrW. CORE-11700
2022-08-24 11:10:23 +09:00
Katayama Hirofumi MZ
b4f73f040f
[KBSWITCH][NTUSER] Realize Shift+Alt language switch ( #4622 )
...
- Fix co_UserProcessHotKeys on modifiers-only hot-keys.
- Add Alt+Shift hot-keys to kbswitch window.
CORE-11737
2022-08-24 07:31:46 +09:00
Katayama Hirofumi MZ
372a445ad6
[IMM32] Add CtfImmIsGuidMapEnable and CtfImmGetGuidAtom ( #4621 )
...
- Add CtfImmIsGuidMapEnable and CtfImmGetGuidAtom functions.
- Modify imetable.h and imm32.spec.
CORE-11700
2022-08-23 21:57:45 +09:00
Katayama Hirofumi MZ
f34b8460e3
[NTUSER] Use assignment-lock against THREADINFO.KeyboardLayout ( #4620 )
...
- Assignment and locking are managed by UserAssignmentLock/UserAssignmentUnlock.
- Synchronize ClientInfo->hKL to pti->KeyboardLayout->hkl.
CORE-11700, CORE-18317
2022-08-23 19:32:23 +09:00
Katayama Hirofumi MZ
6c748ca8a9
[NTUSER] Rewrite NtUserUnloadKeyboardLayout ( #4613 )
...
- Add co_IntUnloadKeyboardLayoutEx (Win: xxxInternalUnloadKeyboardLayout), IntUnloadKeyboardLayout (Win: xxxUnloadKeyboardLayout) helper functions.
- Rewrite NtUserUnloadKeyboardLayout function.
CORE-11700
2022-08-20 09:45:06 +09:00
Katayama Hirofumi MZ
c06cccea22
[USER32] Adjustment for IME/IMM ( #4610 )
...
- Add IS_CICERO_MODE() macro.
- Append DWORD dwLastStatus to IMEUI structure.
- Modify ImeWndProc_common, ImeWnd_OnCreate, ImeWnd_OnImeSelect, and ImeWnd_OnImeControl functions.
CORE-11700
2022-08-18 10:55:11 +09:00
Katayama Hirofumi MZ
93955f37de
[NTUSER][USER32] Define NtUserSetWindowLongPtr for non-Win64 ( #4612 )
...
- Add NtUserSetWindowLongPtr macro on non-Win64.
- Use NtUserSetWindowLongPtr instead of NtUserSetWindowLong.
CORE-11700
2022-08-17 17:23:40 +09:00
Katayama Hirofumi MZ
fd1e799123
[USER32] Insert curly-brackts for switch-case
...
Follow-up of #4607 (60be15f
).
CORE-11700
2022-08-17 08:04:11 +09:00
Katayama Hirofumi MZ
e44e151840
[NTUSER] Empower co_UserActivateKeyboardLayout ( #4608 )
...
- Add code to co_UserActivateKeyboardLayout function for IME.
- Add IntImmActivateLayout helper function.
CORE-11700
2022-08-16 22:03:54 +09:00
Katayama Hirofumi MZ
fe8f80610e
[NTUSER] Send WM_IME_SYSTEM:IMS_LOADTHREADLAYOUT at IntCreateWindow ( #4606 )
...
- Send WM_IME_SYSTEM:IMS_LOADTHREADLAYOUT message at IntCreateWindow function.
CORE-11700
2022-08-16 08:02:49 +09:00
Katayama Hirofumi MZ
60be15ff5d
[USER32] RealDefWindowProcA/W WM_IME_SYSTEM handling ( #4607 )
...
- Add WM_IME_SYSTEM message handling on RealDefWindowProcA and RealDefWindowProcW functions.
- Improve WM_IME_... messages handling.
- s/IMMGWL_IMC/IMMGWLP_IMC/
- Don't set IMMGWLP_IMC value to the default IME window.
CORE-11700
2022-08-16 08:00:47 +09:00
Katayama Hirofumi MZ
379188acfe
[NTUSER] Refactor NtUserUnloadKeyboardLayout ( #4605 )
...
- Add IntHKLtoPKL, co_UserActivateKeyboardLayout, IntReorderKeyboardLayouts, and co_IntActivateKeyboardLayout helper functions.
- Rewrite NtUserUnloadKeyboardLayout by using helper functions.
CORE-11700
2022-08-15 08:25:06 +09:00
Katayama Hirofumi MZ
e8ccc8516f
[USER32] Call CliImmInitializeHotKeys on LoadKeyboardLayoutW epilogue ( #4604 )
...
Enable the IME hotkeys.
- Call CliImmInitializeHotKeys.SETIMEHOTKEY_ADD on IntLoadKeyboardLayout epilogue.
CORE-11700
2022-08-14 10:53:58 +09:00
Katayama Hirofumi MZ
25fcdc5c2b
[USER32][IMM32][INCLUDE] Empower WM_IME_SYSTEM handling ( #4603 )
...
- Add code to ImeWnd_OnImeSystem function.
- Add CtfLoadThreadLayout and User32DoImeHelp helper functions.
- Define IMS_... constants (for WM_IME_SYSTEM wParam) and fix some magic numbers.
CORE-11700
2022-08-13 07:08:18 +09:00