Commit graph

4271 commits

Author SHA1 Message Date
Stanislav Motylkov
a09e903398
[SHELL32] CDrivesFolder: Unhardcode pqcminfo->idCmdFirst value
DFM_MERGECONTEXTMENU handler works better now. However there is difference
between ours and Windows' menu building systems, which has to be fixed.

Addendum to 64657051c3. CORE-13841 CORE-18577
2022-11-14 21:56:01 +03:00
Katayama Hirofumi MZ
3d298831db [IMM32] Get gHighestUserAddress in ImmInitializeGlobals
CORE-11700
2022-11-13 20:04:34 +09:00
Katayama Hirofumi MZ
f73a4d6bab [IMM32] ImmDllInitialize's first argument is an HINSTANCE
CORE-11700
2022-11-12 20:25:29 +09:00
Joachim Henze
a33fe38418
[SHELL32] Show 'comment' column for folders, make it rightmost CORE-18615 (#4868)
In explorer filebrowser 'details' view
the column 'comments' had invalid length of zero, and therefore
was hidden under the 'attributes' column.

I guess even after this patch, it will not display any
sane contents in there yet.
Therefore I chose a small width of 10 only, to reduce the chance for
it to trigger an undesired horizontal scrollbar.

As far as I see we don't support manual showing and hiding of additional columns yet.
By default my Windows does not show this column. But when activated manually, it is always
shown on the right hand side of the 'attributes' column.
2022-11-11 18:25:50 +01:00
Katayama Hirofumi MZ
11a71418d5
[SHELL32] Implement IsLFNDriveA/W and improve PathResolve (#4866)
- Fix IsLFNDriveA and IsLFNDriveW functions.
- Add IsRemovableDrive helper function.
- Fix PathQualifyExW by using IsLFNDriveW.
CORE-11335
2022-11-10 23:18:04 +09:00
Piotr Hetnarowicz
3fc6d90c58
[SYSSETUP] Update Polish (pl-PL) translation (#4859)
Reviewed-by: Adam Stachowicz <saibamenppl@gmail.com>
2022-11-10 02:10:19 +03:00
Piotr Hetnarowicz
2a400b29c0
[INPUT] Update Polish (pl-PL) translation (#4858)
Reviewed-by: Adam Stachowicz <saibamenppl@gmail.com>
2022-11-10 02:08:40 +03:00
Simone Mario Lombardo
6755921560
[DDRAW] Sync the fix for swap_interval from Wine (#4831)
Sync the barebone fix from Wine (wine-7.19-557-g13cc08e32d6):
https://source.winehq.org/git/wine.git/?a=search&h=HEAD&st=grep&s=ddraw_surface_update_frontbuffer%28
and
13cc08e32d:/dlls/ddraw/surface.c

- Added "swap_interval" argument to ddraw_surface_update_frontbuffer()
- Added ddraw_swap_interval_from_flags() function for dispatching
  the integer type of required swap interval
- Updated ddraw_surface_update_frontbuffer() function for managing the
  swap interval between backbuffer and frontbuffer (and relative flipping)
- Updated the ddraw_surface7_Flip() function for relaying the swap interval
  to ddraw_surface_update_frontbuffer() function.
- Added 0 value (as Wine) when the swap interval is not required

This fixes empty white screen issue on rendering because of lacking
swap interval for the software / games that use ddraw.

CORE-18547
2022-11-09 20:44:30 +03:00
Hermès Bélusca-Maïto
0e14378d3e
[SMDLL][SMLIB] Deprecate the legacy ROS-specific SMDLL and improve SM client functions. (#4821)
This DLL was exporting legacy NT-incompatible or ROS-specific SM client
functions, that have been since 10 years now (2012) replaced by the new
NT-compatible SM:

- SmConnectApiPort(): was just SmConnectToSm().

- SmCompleteSession():
  The legacy SMSS used it for when a subsystem initialization was finished.
  Now (NT-compatible) this function is called by subsystems **only** when a
  subsystem session **terminates**: SmSessionComplete().

- SmExecuteProgram(): was just the client side of SmLoadDeferedSubSystem()
  (whose server side is not implemented yet). The legacy SM "old" SmExecPgm
  implementation actually was "SmLoadDeferedSubSystem"...

- SmLookupSubsystem(): is a utility-only function to read any registry value
  inside "Session Manager\SubSystems".

Move SMDLL's readme into SMLIB and update its contents.

Collect some residual useful functions into smutils.c (and moved in SMLIB,
though not compiled yet):
- SmExecuteProgram(), now implemented as a wrapper around SmExecPgm();
- SmLookupSubsystem(), described above;
- SmQueryInformation(), that retrieves a list of currently-running subsystems.

[SMLIB] Validate SbApiPortName's length in SmConnectToSm().
Fix CommandLine length validation in SmStartCsr().

Add documentation (+ SAL annotations) to the NT-compatible SMSS client functions.

smmsg.h: Add both Win32 and Win64 struct sizes C_ASSERTs for those whose size
change between these two processor architecture sizes.

[SMLIB] Introduce SmSendMsgToSm() as helper to send data into the SM LPC port.
+ Make the other API functions use it.

It should be observed that in Vista+, both functions SmConnectToSm() and this
new SmSendMsgToSm() are exported by NTDLL under the names RtlConnectToSm()
and RtlSendMsgToSm() (and use the same signature).
See: https://www.geoffchappell.com/studies/windows/win32/ntdll/history/names60.htm

[NTDLL] Correctly stub RtlConnectToSm() and RtlSendMsgToSm().
[NTDLL_VISTA] Link to SMLIB and simply export RtlConnectToSm() and RtlSendMsgToSm().
2022-11-08 17:40:53 +01:00
Katayama Hirofumi MZ
140aa11c36
[SHELL32] shlexec: Initial support of App Paths (#4850)
- Fix SHELL_TryAppPathW helper function by using SHRegQueryValueExW function.
- Fix SHRegQueryValueExA/W functions.
CORE-11335
2022-11-08 09:23:06 +09:00
Tuur Martens
075ec50298
[DEVMGR] Fix wrong menu item hint (#4854)
Item hint for "Resources by connection" was incorrectly set to the hint for "Resources by type".

CORE-18608
2022-11-06 20:00:18 +03:00
Jeff Smith
c8ef276778 [COMDLG32] Set background to transparent for font dialog sample text
Import Wine commit wine-5.19-325-g4273004e65a:
4273004e65

CORE-18588
2022-11-05 02:42:13 +03:00
Mark Jansen
2567a66399
[SHELL32] Fix CDefView UAF 2022-11-04 23:01:31 +01:00
Katayama Hirofumi MZ
94c8f271c9
[CPL:INTL] Use Japanese package for Far-East files (#4834)
Implement IDC_INST_FILES_FOR_ASIAN checkbox action. It will install/uninstall "ReactOS JPN Package" in Japanese ReactOS.
JIRA issue: CORE-12748
2022-11-04 21:48:07 +09:00
Katayama Hirofumi MZ
1a1a8a8303
[SHELL32][INCLUDE] Fix PathResolve for double-backslash (#4833)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>

Fix shell32!PathResolve and shell32!PathQualifyExW functions for double-backslash. However it doesn't fix CORE-15204.
CORE-18080, CORE-15204
2022-11-04 21:44:46 +09:00
Hermès Bélusca-Maïto
4ac263c93a
[NTOS][NTDLL][NDK] Nt/ZwCreatePagingFile: Fix parameter names + use SAL; fix NTDLL spec file. 2022-11-03 02:55:50 +01:00
Hermès Bélusca-Maïto
25958a7c3d
[KERNEL32] Spec file: GetCurrencyFormatW takes wide strings in parameters. 2022-11-03 02:50:23 +01:00
Hermès Bélusca-Maïto
9f938ea3bb
[KERNEL32] Reformat K32CreateDBMonMutex(). 2022-11-03 02:50:20 +01:00
Adam Stachowicz
75da7ad212
[DESK] Improve Polish (pl-PL) translation (#4840)
Fix typo, addendum to f1102742.
2022-11-03 03:40:12 +03:00
Jose Carlos Jesus
66030257b1
[TRANSLATION] Improve Portuguese (pt-PT) translation (#4830)
- [RAPPS] Improve pt-PT translation
- [SNDVOL32] Add pt-PT translation
- [TASKMGR] Improve pt-PT translation
- [DESK] Update pt-PT translation
- [MMSYS] Update pt-PT translation. Adjust object size to fit all text
- [ACPPAGE] Improve pt-PT translation
2022-11-02 19:52:21 +03:00
Piotr Hetnarowicz
f110274208
[DESK] Improve Polish (pl-PL) translation (#4826)
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-11-02 18:50:23 +03:00
Mark Jansen
d82185f104
[SDK] Define CCoInit in shellutils 2022-11-01 21:24:14 +01:00
Artyom Ovsyannikov
b1854d7cad
[TRANSLATION] Minor Russian (ru-RU) translation fixes (#4835)
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-11-01 17:22:18 +03:00
Hermès Bélusca-Maïto
d8cc88ca80
[KERNEL32][BASESRV] Fix interoperability with Win2k3 regarding NLS section security. (#4828)
Partially revert some aspects of commits 5696e4ba4 and bf40c7a31.
(See PR #4340.)

In order for Win2k3 kernel32.dll to operate with our basesrv.dll (or our
kernel32.dll to operate with Win2k3 basesrv.dll), we need in particular
to have the CreateNlsSecurityDescriptor() helper to exactly take the
expected parameters. Namely, a pointer to a **user-allocated**
SECURITY_DESCRIPTOR buffer, its size (and an access mask).

The function expects its caller to provide all this, and the caller expects
the function to initialize the security descriptor buffer. Note that the
function does *NOT* allocate a new descriptor buffer to be returned!

Indeed, with the way it currently is in master, using Win2k3 kernel32
with our basesrv is now failing with the errors:
```
NLSAPI: Could NOT Create ACL - c0000023.
(subsystems/win/basesrv/nls.c:279) NLS: CreateNlsSecurityDescriptor FAILED!: c0000023
NLSAPI: Could NOT initialize Server - c0000023.
(dll/ntdll/ldr/ldrinit.c:867) LDR: DLL_PROCESS_ATTACH for dll "kernel32.dll" (InitRoutine: 77E40D95) failed
```
(and, if we ever attempted to increase the so-claimed "dummy parameter"
descriptor size in the basesrv call, we would end up with its stack
corrupted and a crash).
Conversely, using our kernel32 with Win2k3 basesrv, would end up with
basesrv receiving a wrongly-initialized descriptor that would not work
(the buffer not being initialized with the contents of a descriptor, but
instead receiving some address to a descriptor allocated somewhere else).
2022-11-01 02:34:04 +01:00
Hermès Bélusca-Maïto
5bf0c00ddc
[KERNEL32] Minor code style changes + add documentation for BasepMoveFileDelayed().
+ cut the too long lines; don't hardcode types in sizeofs; correctly specify COPY_FILE_FAIL_IF_EXISTS flag.
2022-11-01 02:29:24 +01:00
Hermès Bélusca-Maïto
df95d05f5f
[SYSDM.CPL] Remove useless ', 0, 0, 0x0' in the resource dialog FONT statements.
Those are the default values, so...
2022-11-01 02:29:17 +01:00
Stanislav Motylkov
9c21d0c124
[DESK] Do not load system-defined class name
In fact Windows XP/2003 desk.cpl uses only user-defined values,
and performs fallback to shell32.dll strings in case they are missing.

CORE-18565 CORE-8427
2022-10-30 15:04:41 +03:00
Katayama Hirofumi MZ
4d9026c852 [CPL:INPUT] Return TRUE against WM_INITDIALOG and add WS_TABSTOP
This affects control focus.
2022-10-30 08:01:57 +09:00
Hermès Bélusca-Maïto
d2aeaba5f8
[CSR][NTDLL] Move the CSR subsystem into its own "csr" sub-directory. (#4802)
Move CSRSS, CSRSRV there, as well as CSR client calls from NTDLL into a "CSRLIB" library.
2022-10-29 17:17:29 +02:00
Katayama Hirofumi MZ
36f7d1a953
[KBSWITCH][CPL:INPUT][NTUSER][EXPLORER] Fix keyboard layout icon (#4815)
Fix keyboard layout icon in taskbar notification area. JIRA issue: CORE-11700, CORE-2699, CORE-18546
- Call ActivateKeyboardLayout to select the keyboard layout correctly.
- Modify WM_INPUTLANGCHANGEREQUEST parameter.
- Modify BroadcastSystemMessageW parameter.
- Revert Taskbar Notification Area MA_NOACTIVATE HACK 8344291 . This fixes Context Menu display.
- Load the "IME File" value and set the IME icon if necessary.
- Correctly implement global hooks.
2022-10-29 07:35:19 +09:00
Mark Jansen
a06f10d0c0
[BROWSEUI] Fix CAutoComplete use after free
CORE-18395
2022-10-27 23:45:18 +02:00
Justin Miller
98b90e7394
[DBGHELP] Add ARM64 definitions into compat.h (#4810)
This fixes ARM64 build in preparation for PR #4809.
CORE-18200
2022-10-27 18:14:10 +03:00
Mark Jansen
a0b1a01c59
[MSI] Add jira ticket to debug logging 2022-10-26 20:19:31 +02:00
Mark Jansen
d284c81494
[APPHELP] Stop shimeng being initialized multiple times
This is a hack, but is required when MSI is loaded in a process that is already shimmed.
It should be removed when the MSI shim integration is fixed.
CORE-18532
CORE-13283
2022-10-26 20:19:31 +02:00
Mark Jansen
21e68b0dba
[SHELL32] Fix empty 'Send to' menu
CORE-18517
2022-10-26 20:18:40 +02:00
Mark Jansen
15d491fb29
[NTDLL] Implement LdrInitShimEngineDynamic.
This is the final step required to properly support SE_DynamicShim
CORE-13283
2022-10-26 20:12:21 +02:00
Robert Naumann
b544640c29
[SHELL32] Update German (de-DE) translation (#4808)
Reviewed-by: Joachim Henze <joachim.henze@reactos.org>
2022-10-26 19:48:27 +03:00
Konrad Dybcio
b55658b396
[WININET] Update Polish (pl-PL) translation (#4811)
Reviewed-by: Adam Słaboń <asaillen@protonmail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-10-26 18:30:39 +03:00
Konrad Dybcio
97a61654c5
[BROWSEUI] Update Polish (pl-PL) translation (#4813) 2022-10-26 16:22:56 +03:00
Konrad Dybcio
e15490a2b8
[RASDLG] Fix typos in Polish (pl-PL) translation (#4812)
`tą` and `tę` are very often mistaken for each other by native speakers.
2022-10-26 16:22:05 +03:00
Konrad Dybcio
1f3cee73e9 [MMSYS] Fix English string in PL translation
Signed-off-by: Konrad Dybcio <konrad.dybcio@somainline.org>
2022-10-26 14:54:53 +02:00
Katayama Hirofumi MZ
e1df4f2d8f
[IMM32] Add reasoning for tracing (#4807)
Follow-up of c2a9436 (#4798).
Improve trace messages.
CORE-11700
2022-10-26 12:01:33 +09:00
Hermès Bélusca-Maïto
e774423689
[NTDLL:CSR] Don't hardcode types in sizeofs; move local variables into code blocks where they are used. 2022-10-26 01:45:26 +02:00
Hermès Bélusca-Maïto
5cfb71baf8
[NTDLL] Properly stub out RtlRegisterThreadWithCsrss() in spec file. 2022-10-26 00:43:57 +02:00
Jose Carlos Jesus
c0eb407130
[ACCESS][MAIN] Fix setting cursor/caret blinking rate
- Save uCaretBlinkTime to CursorBlinkRate registry key
- Also fix blinking rate never reaching None

CORE-17929
2022-10-25 23:54:28 +03:00
Jose Carlos Jesus
be014129a5
[ACCESS][MAIN] Do not delete system stock object 2022-10-25 17:42:39 +03:00
Katayama Hirofumi MZ
a65014e3a0 [IMM32] Add UNEXPECTED() macro for detailed debugging
CORE-11700
2022-10-23 12:49:37 +09:00
Katayama Hirofumi MZ
c2a943653e
[IMM32] Improve debuggability at all (#4798)
- Strengthen tracing.
- Introduce IS_NULL_UNEXPECTEDLY, IS_ZERO_UNEXPECTEDLY etc. macros to manage tracing.
CORE-11700
2022-10-23 09:51:24 +09:00
Joachim Henze
e6fb0e0c25
[SHELL32] Delete old unused implementation of OLD_SHAppBarMessage() (#4800)
SHAppBarMessage() was reimplemented at a different place by
0.4.14-dev-1209-g 10d1afea18
That was a reimport from Wine.
2022-10-22 21:48:11 +02:00
Katayama Hirofumi MZ
5166ffa447 [SHELL32] Improve Japanese translation (ja-JP) 2022-10-21 23:20:50 +09:00