reactos.git
3 weeks ago[NTOS:KE/x64] Loop in KiInitiateUserApc tkreuzer/Fix-KiConvertToGuiThread
Timo Kreuzer [Mon, 25 Mar 2024 20:23:19 +0000 (22:23 +0200)]
[NTOS:KE/x64] Loop in KiInitiateUserApc

This is required since while interrupts are enabled, another user APC could get queued and we want to guarantee that those are all delivered before returning to user mode.

3 weeks ago[SHELL32] pl-PL.rc: Fix IDD_FILE_PROPERTIES & IDD_FOLDER_PROPERTIES (#6678)
Joachim Henze [Wed, 27 Mar 2024 20:08:17 +0000 (21:08 +0100)]
[SHELL32] pl-PL.rc: Fix IDD_FILE_PROPERTIES & IDD_FOLDER_PROPERTIES (#6678)

- This removes an ancient polish-only workaround/extrawurst of 0.4.13-dev-1171-g c81af08 which made the dialog bigger than allowed in y, and which reduced its usability on small monitor resolution.
- Sync the dialogs dimensions back to en-US and all other localizations. Notice also that both dialogs have the same height again afterwards.
- Maximizes the available space for the dynamic parts of the dialog on the right side. Historically even 160 turned out to be too short for that, e.g. EDITTEXT 14009, the dynamic part of "Lokalizacja:". and also EDITTEXT 14007, the dynamic part of "Program:". Therefore we used 170 everywhere for those widths in all other languages. But due to the polish workaround it was crippled to 155 here. Not good!
- Notice also how now the leftmost checkboxes position of the Attributes is perfectly aligned with the other dynamic content of that column above after the fix. This will be important in the future when we will restore the vertical layout of Attribute-checkboxes in both dlgs (Plik vs. checkbox, and Katalog vs. checkbox) to match 2k3sp2
---------
Co-authored-by: Adam Słaboń <asaillen@protonmail.com>
3 weeks ago[CONFIGURE] Add support for MSVC Toolset 19.4x (#6677)
Gleb Surikov [Wed, 27 Mar 2024 18:04:18 +0000 (20:04 +0200)]
[CONFIGURE] Add support for MSVC Toolset 19.4x (#6677)

The MSVC toolset will increment its minor version number from 19.39 (VS 2022 v17.9) to 19.40 (VS 2022 v17.10). The MSVC toolset will be version 19.40.33521.0 in the preview 1 release. For more details, see the MSVC Toolset Minor Version Number 14.40 in VS 2022 v17.10 blog post: https://aka.ms/msvc-ver14.40

3 weeks ago[SHELL32] CQueryAssociation: Add slash check (#6676)
Katayama Hirofumi MZ [Wed, 27 Mar 2024 08:36:48 +0000 (17:36 +0900)]
[SHELL32] CQueryAssociation: Add slash check (#6676)

Follow-up to #6656. I had forgotten to check the slash.
JIRA issue: CORE-19493
Add StrChrW(pszAssoc, L'\\') check before PathFindExtensionW call.

3 weeks ago[SHELL32] Improve FindExecutableW (#6635)
Katayama Hirofumi MZ [Wed, 27 Mar 2024 08:04:49 +0000 (17:04 +0900)]
[SHELL32] Improve FindExecutableW (#6635)

Follow-up to #6656. An approach to
implement ShellExecuteEx correctly.
JIRA issue: CORE-19493
- Rewrite code by using AssocQueryStringW
  and PathResolveW functions.

3 weeks ago[SHELL32] *.rc: Anonymize the "LIST2" control in IDD_AUTOPLAY1 (#6672)
Joachim Henze [Tue, 26 Mar 2024 22:39:46 +0000 (23:39 +0100)]
[SHELL32] *.rc: Anonymize the "LIST2" control in IDD_AUTOPLAY1 (#6672)

same as it is already the case in IDD_MIXED_CONTENT1, just 10 lines below it.
The controls name is not referenced from code. Will save a few bytes in the binary and shortens the rc-line.

3 weeks ago[SHELL32] *.rc: accelerator fixes, FIXMEs, drive-properties bg-BG and fr-FR (#6591)
Joachim Henze [Tue, 26 Mar 2024 16:07:33 +0000 (17:07 +0100)]
[SHELL32] *.rc: accelerator fixes, FIXMEs, drive-properties bg-BG and fr-FR (#6591)

* en-US.rc: create the TODO-list for the required menu-accel-changes

* some accelerator fixes, and add many FIXMEs for stuff that still needs to be improved

* beg the translators to shorten the "On Disk:" string in IDD_FILE_PROPERTIES and IDD_FOLDER_PROPERTIES

* strip superfluous spaces at some strings end and ':' within groupboxes, MS never does that

* bg-BG.rc & fr-FR.rc: Fix text-truncation, It got worse by 0.4.15-dev-5993-g a5bff2457a1014c266ce9c808d22a9967a4baca2 (#5239) A suggestion of Stasm, personally I dislike moving/resizing controls to dimenstions != en-US

* zh-CN.rc: China is the new land of capitalism, so CAPITALIZE the S. Grab another &W used in en-US/zh-TW

* he-IL.rc: strip a useless comment which just does repeat the string 1:1

* zh-TW: This taiwanese question-mark here is wrong, because the question spans over multiple controls, and the last one already ends with such a question mark.

* pt-PT.rc: Name the attributes-column 'Atributos', as that is the same name that is used in the file-properties-dlg

* sk-SK.rc: strip a comment that does not exist in any other lang

* Fix some lines which had 2 accelerators each, e.g. de-DE.
 IDD_FOLDER_OPTIONS_GENERAL has 100% correct german accelerators now (checked against german XPSP3).

* es-ES.rc: remove a stone-age-workaround, and use the height from en-US again here. The text fits the single line fine now.

* no-NO.rc: Fix a regression of 0.4.9-dev-794-g bf88116252071487289235ca803540e61d685d84 which added the 70 to the 3 PUSHBUTTONS for all languages, but for no-NO.rc the third button was forgotten

* pt-PT.rc: Fix 2 wrong accelerators. They have been added by a pt-PT.rc translator, but Windows doesn't have them. Windows uses ENTER and ESCAPE just here. And other translators are aware of that. The thing that actually SHOULD have an accelerator in that dialog is the LTEXT "Abrir", but ironically that one was forgotten / intentionally removed by the pt-PT.rc translator upon translation. A pity!

* pt-PT.rc: pt-PT.rc was crippled regarding accelerators, mostly during 0.4.14-dev'ing. Wisdom of the elders was trampled down here.

* pt-PT.rc: fix unintended "::"

* tr-TR.rc: During 0.4.15-dev'ing a lot of accelerators and capitalization were changed in this file, and during that the IDS_* accelerators at the bottom in that file in the
/* context menus */
section were changed, but the reminder-menu-layouts IDM_* and FCIDM_SHVIEW_* were forgotten to be kept in sync.
That is such a common pitfall. Happened to all of us more than one time already.
Sync the capitalization for that file at least. While knowing that there is still a lot of async left for other files.

* tr-TR.rc: Point with 2 FIXMEs to some accelerator-issues that only somebody with a real turkish Windows will be able to fix properly. Actually most likely at least 6 lines in this file are involved into that collision. Try to mention them within the comment at least.
IDM_COPY
IDM_CREATELINK
IDM_DELETE
and
IDS_COPY
IDS_CREATELINK
IDS_DELETE
This bug does only affect master, and no older releases in this form.

* en-US.rc: And finally add a big fat TODO comment for my future self, regarding dlg redesign where attrubutes will need to be laid out vertically in IDD_FILE_PROPERTIES and IDD_FOLDER_PROPERTIES

3 weeks ago[NOTEPAD] Update Slovenian (sl-SI) translation (#6599)
Maj Soklič [Mon, 25 Mar 2024 17:02:15 +0000 (18:02 +0100)]
[NOTEPAD] Update Slovenian (sl-SI) translation (#6599)

Reviewed-by: Rok Mandeljc <rok.mandeljc@gmail.com>
Reviewed-by: Jaka Kranjc <smgl@lynxlynx.info>
3 weeks ago[SHELL32] IQueryAssociations: Fix path and length (#6656)
Katayama Hirofumi MZ [Sun, 24 Mar 2024 22:35:15 +0000 (07:35 +0900)]
[SHELL32] IQueryAssociations: Fix path and length (#6656)

Implementing correct FindExecutable...
JIRA issue: CORE-19493
- If there were filename extension, then skip to the extension
  by using PathFindExtensionW.
- Use "open" verb if there is no default action if possible.
- Set outlen at CQueryAssociations::ReturnString.

3 weeks ago[SHELL32] Fix FS folder assoc array class order (#6047)
Whindmar Saksit [Sun, 24 Mar 2024 20:37:59 +0000 (21:37 +0100)]
[SHELL32] Fix FS folder assoc array class order (#6047)

Fixes the reg class key order for FS items. The existing code was close,
but for some reason used `//` as the path separator for SystemFileAssociations!

- Fixed SystemFileAssociations.

- Swapped the order of `*` and `AllFilesystemObjects`. This is the documented
  order and can also be observed in Process Monitor.
  https://learn.microsoft.com/en-us/windows/win32/shell/fa-associationarray#about-association-arrays

- Removed `(..., L"%s//%s", extension, wszClass)`, this does not seem to be
  a valid thing (`.TestAAExtWeird` in my tests).

- Adds the `Unknown` class when appropriate. Not adding the `openas` verb
  to `Unknown` rgs registration now to mimic Windows, because ROS
  `CDefaultContextMenu` lacks verb de-duplication and the menu would end up
  with two "Open With" entries. This just uses `(cidl == 1)` to simulate
  Windows, while Windows on NT6 uses `MultiSelectModel=Single`, a NT6 feature
  not implemented in ROS.

- The class order for folders was wrong and is still "wrong" in this PR,
  but I chose to use the Windows menu display order until the exact mechanics
  required in `CDefaultContextMenu` can be understood.

- Extracts the extension from ANSI PIDLs.

3 weeks ago[SHLEXTDBG] Added IQueryAssociations, SHGetFileInfo and ShellExecute actions (#6030)
Whindmar Saksit [Sun, 24 Mar 2024 20:27:04 +0000 (21:27 +0100)]
[SHLEXTDBG] Added IQueryAssociations, SHGetFileInfo and ShellExecute actions (#6030)

Added multiple new actions, most of them will use the system default implementation but can be forced to use a specific CLSID or IShellFolder implementation.

-  /shgfi (SHGetFileInfo)
-  /assocq (IQueryAssociations)
-  /shellexec (ShellExecuteEx on pidl)
-  /dumpmenu (Dumps the HMENU of a IContextMenu with its menu ids and verbs)

Added /explorerinstance as a new wait mode and made it the default. All the other wait modes are hacks that just works around bugs in ROS.

3 weeks ago[NTOS:CM] Remove orphaned KCBs of keys during normal hive unload 6649/head
George Bișoc [Sat, 23 Mar 2024 19:40:56 +0000 (20:40 +0100)]
[NTOS:CM] Remove orphaned KCBs of keys during normal hive unload

A hive whose KCBs have a reference count of 0, meaning nobody is using these keys anymore, will not get removed from the cache table.
As a result during a normal hive unloading operation you will get orphaned KCBs which results in an unload failure.

This is wrong, because this is what a normal hive unloading is supposed to do. What it cannot do of course is that it cannot
scramble the references of opened keys by the users who use the Registry, as it is the job of force unloading mechanism to do that.

Also remove a misleading debug print. Force unloading works as intended by scrambling the references of keys and marking the KCB for deletion,
which is what how a force unload works. Namely Windows does exactly that.

CORE-10705

3 weeks ago[NTOS:CM] Lock the cached KCB before removing it from cache entries
George Bișoc [Sat, 23 Mar 2024 19:28:01 +0000 (20:28 +0100)]
[NTOS:CM] Lock the cached KCB before removing it from cache entries

- Annotate the CmpEnumerateOpenSubKeys function with SAL2
- When removing an orphaned cached KCB, ensure that it is locked before clearing it from cache table entries

3 weeks ago[ADVAPI32] Handle HKCR in RegDeleteValueA+W and RegDeleteKeyValueW (#6033)
Whindmar Saksit [Sun, 24 Mar 2024 17:28:26 +0000 (18:28 +0100)]
[ADVAPI32] Handle HKCR in RegDeleteValueA+W and RegDeleteKeyValueW (#6033)

- HKCR delete handling; delete the value in HKCU if it exists there, otherwise delete it in HKLM.
- Changed RegDeleteKeyValueW to just use the regular Reg functions to get HKCR handling for free.

3 weeks ago[SHELL32] Support IDropTarget handler in IContextMenu static verbs (#5860)
Whindmar Saksit [Sun, 24 Mar 2024 17:23:07 +0000 (18:23 +0100)]
[SHELL32] Support IDropTarget handler in IContextMenu static verbs (#5860)

This adds support for the `DropHandler` subkey in static verbs. `IDropTarget` is called when the verb is invoked. The advantage of this is that no library needs to be loaded until the verb is actually invoked unlike `IContextMenu` shell extensions that have to be loaded during menu creation.

This method is preferred for verb implementations that must work on Windows XP, see
https://learn.microsoft.com/en-us/previous-versions/windows/desktop/legacy/dd940354%28v%3Dvs.85%29?redirectedfrom=MSDN#description

3 weeks ago[TRANSLATION] Update Spanish (es-ES) translation (#6449)
Julen Urizar Compains [Sun, 24 Mar 2024 09:30:56 +0000 (10:30 +0100)]
[TRANSLATION] Update Spanish (es-ES) translation (#6449)

- [REACTOS] es-ES: Fixes and typos
- [USETUP] es-ES: Fixes and typos
- [HOTPLUG] es-ES: Fixes and typos
- [OPENGLCFG] Add Spanish (es-ES) translation
- [NETSHELL] es-ES: Fixes and typos
- [SHELL32] es-ES: Fixes and typos
- [SYSSETUP] es-ES: Fixes and typos

Reviewed-by: Ismael Ferreras Morezuelas <swyterzone@gmail.com>
3 weeks ago[USBOHCI] Fix broken indentation
Timo Kreuzer [Tue, 12 Mar 2024 17:06:25 +0000 (19:06 +0200)]
[USBOHCI] Fix broken indentation

3 weeks ago[USBUHCI] Fix broken indentation
Timo Kreuzer [Tue, 12 Mar 2024 17:03:55 +0000 (19:03 +0200)]
[USBUHCI] Fix broken indentation

3 weeks ago[SHELL32] SHOpenFolderAndSelectItems should handle children correctly (#6151)
Whindmar Saksit [Sat, 23 Mar 2024 21:24:04 +0000 (22:24 +0100)]
[SHELL32] SHOpenFolderAndSelectItems should handle children correctly (#6151)

- Free pidl from ILCombine.
- ILGetNext will never return NULL on valid input, it is not the correct way to check.

3 weeks ago[CALC] Update Romanian (ro-RO) translation (#6601)
Andrei Miloiu [Sat, 23 Mar 2024 21:22:50 +0000 (23:22 +0200)]
[CALC] Update Romanian (ro-RO) translation (#6601)

3 weeks ago[SOLITAIRE] Update Romanian (ro-RO) translation (#6600)
Andrei Miloiu [Sat, 23 Mar 2024 21:21:32 +0000 (23:21 +0200)]
[SOLITAIRE] Update Romanian (ro-RO) translation (#6600)

3 weeks ago[TIMEDATE] Update Romanian (ro-RO) translation (#6613)
Andrei Miloiu [Sat, 23 Mar 2024 21:20:24 +0000 (23:20 +0200)]
[TIMEDATE] Update Romanian (ro-RO) translation (#6613)

3 weeks ago[SNDVOL32] Update Romanian (ro-RO) translation (#6612)
Andrei Miloiu [Sat, 23 Mar 2024 21:18:51 +0000 (23:18 +0200)]
[SNDVOL32] Update Romanian (ro-RO) translation (#6612)

3 weeks ago[HOTPLUG] Add Romanian (ro-RO) translation (#6644)
Andrei Miloiu [Sat, 23 Mar 2024 21:17:20 +0000 (23:17 +0200)]
[HOTPLUG] Add Romanian (ro-RO) translation (#6644)

3 weeks ago[MSCONFIG] Update Romanian (ro-RO) translation (#6533)
Andrei Miloiu [Sat, 23 Mar 2024 21:16:14 +0000 (23:16 +0200)]
[MSCONFIG] Update Romanian (ro-RO) translation (#6533)

3 weeks ago[APPWIZ] Improve Romanian (ro-RO) translation (#6532)
Andrei Miloiu [Sat, 23 Mar 2024 21:12:30 +0000 (23:12 +0200)]
[APPWIZ] Improve Romanian (ro-RO) translation (#6532)

3 weeks ago[CLIPBRD] Update Romanian (ro-RO) translation (#6535)
Andrei Miloiu [Sat, 23 Mar 2024 20:18:20 +0000 (22:18 +0200)]
[CLIPBRD] Update Romanian (ro-RO) translation (#6535)

3 weeks ago[DEVMGR] Update Romanian (ro-RO) translation (#6529)
Andrei Miloiu [Sat, 23 Mar 2024 20:17:24 +0000 (22:17 +0200)]
[DEVMGR] Update Romanian (ro-RO) translation (#6529)

3 weeks ago[NOTEPAD] Update Romanian (ro-RO) translation (#6528)
Andrei Miloiu [Sat, 23 Mar 2024 20:16:07 +0000 (22:16 +0200)]
[NOTEPAD] Update Romanian (ro-RO) translation (#6528)

3 weeks ago[WININET] Update Romanian (ro-RO) translation (#6527)
Andrei Miloiu [Sat, 23 Mar 2024 20:14:12 +0000 (22:14 +0200)]
[WININET] Update Romanian (ro-RO) translation (#6527)

3 weeks ago[EVENTVWR] Update Romanian (ro-RO) translation (#6518)
Andrei Miloiu [Sat, 23 Mar 2024 20:12:52 +0000 (22:12 +0200)]
[EVENTVWR] Update Romanian (ro-RO) translation (#6518)

3 weeks ago[MSPAINT] Update Romanian (ro-RO) translation (#6511)
Andrei Miloiu [Sat, 23 Mar 2024 20:12:23 +0000 (22:12 +0200)]
[MSPAINT] Update Romanian (ro-RO) translation (#6511)

3 weeks ago[DISKPART][MC] Update Romanian (ro-RO) translation for message table (#6509)
Andrei Miloiu [Sat, 23 Mar 2024 20:09:42 +0000 (22:09 +0200)]
[DISKPART][MC] Update Romanian (ro-RO) translation for message table (#6509)

3 weeks ago[OPENGLCFG] Update Romanian (ro-RO) translation (#6507)
Andrei Miloiu [Sat, 23 Mar 2024 20:07:32 +0000 (22:07 +0200)]
[OPENGLCFG] Update Romanian (ro-RO) translation (#6507)

3 weeks ago[NET][MC] Update Romanian (ro-RO) translation for message table (#6506)
Andrei Miloiu [Sat, 23 Mar 2024 20:07:05 +0000 (22:07 +0200)]
[NET][MC] Update Romanian (ro-RO) translation for message table (#6506)

3 weeks ago[BOOTVID] Don't NTAPI non-exported functions; remove useless `@implemented` (#6650) 6650/head
Hermès Bélusca-Maïto [Tue, 19 Mar 2024 20:29:05 +0000 (21:29 +0100)]
[BOOTVID] Don't NTAPI non-exported functions; remove useless `@implemented` (#6650)

3 weeks ago[BOOTVID] Add file copyright information headers (#6650)
Hermès Bélusca-Maïto [Wed, 12 Jul 2023 15:12:55 +0000 (17:12 +0200)]
[BOOTVID] Add file copyright information headers (#6650)

3 weeks ago[RSYM/x64] Sync UNW_FLAG_* values (#6653)
Serge Gautherie [Sat, 23 Mar 2024 14:13:23 +0000 (15:13 +0100)]
[RSYM/x64] Sync UNW_FLAG_* values (#6653)

Follow-up to PR #6641 and commit d45876b81

3 weeks ago[EXPLORER] Start menu: Fix Small Icons flag (#6651)
Katayama Hirofumi MZ [Fri, 22 Mar 2024 12:15:22 +0000 (21:15 +0900)]
[EXPLORER] Start menu: Fix Small Icons flag (#6651)

Follow-up to #6646.
Fix wrong flag use: #6646 (comment)
JIRA issue: CORE-19494
- Delete SmallStartMenu flag (wrong) from
  _TW_STUCKRECTS2.
- Rename _TW_STUCKRECTS2.SmallIcons as
  SmSmallIcons.
- Use SmSmallIcons flag.

4 weeks ago[SHELL32] Update Russian (ru-RU) translation
Stanislav Motylkov [Wed, 20 Mar 2024 09:26:58 +0000 (12:26 +0300)]
[SHELL32] Update Russian (ru-RU) translation

Addendum to ad748b0b3b6. CORE-19494

4 weeks ago[WIN32SS][USER32] Refactor USER32 callbacks (#6619)
Katayama Hirofumi MZ [Wed, 20 Mar 2024 00:45:04 +0000 (09:45 +0900)]
[WIN32SS][USER32] Refactor USER32 callbacks (#6619)

Refactoring kernel-to-USER32 callback code.
Localize USER32 callback entry definitions.
JIRA issue: N/A
- Add header file win32ss/include/u32cb.h and use it to define the
  USER32 callback entries.

4 weeks ago[SHLWAPI_APITEST] Add AssocQueryString testcase (#6648)
Katayama Hirofumi MZ [Tue, 19 Mar 2024 22:37:37 +0000 (07:37 +0900)]
[SHLWAPI_APITEST] Add AssocQueryString testcase (#6648)

JIRA issue: CORE-19493
- Add AssocQueryString testcase.
- Test AssocQueryStringA and AssocQueryStringW
  functions.

4 weeks ago[SHELL32_APITEST] Add RealShellExecuteEx testcase (#6647)
Katayama Hirofumi MZ [Tue, 19 Mar 2024 22:36:14 +0000 (07:36 +0900)]
[SHELL32_APITEST] Add RealShellExecuteEx testcase (#6647)

Follow-up to #5849.
JIRA issue: CORE-19278
- Add closewnd.cpp, closewnd.h, and
  RealShellExecuteEx.cpp files.
- In closewnd.cpp, close newly-opened windows.
- Add RealShellExecuteEx testcase.

4 weeks ago[EXPLORER][SHELL32] Smaller Start Menu (#6646)
Katayama Hirofumi MZ [Tue, 19 Mar 2024 22:32:52 +0000 (07:32 +0900)]
[EXPLORER][SHELL32] Smaller Start Menu (#6646)

Improve customization of Start Menu.
JIRA issue: CORE-19494
- Add SmallStartMenu flag to TW_STRUCKRECTS2
  structure.
- Add IDS_ADVANCED_SMALL_START_MENU
  resource string.
- Update g_TaskbarSettings.sr.SmallStartMenu via
  a callback function.
- Check g_TaskbarSettings.sr.SmallStartMenu
  when Start Menu is updated.

4 weeks ago[CRT] intrin_x86.h: Use movsl instead of movsd to fix a GCC 13 warning
Timo Kreuzer [Tue, 12 Mar 2024 17:06:33 +0000 (19:06 +0200)]
[CRT] intrin_x86.h: Use movsl instead of movsd to fix a GCC 13 warning

4 weeks ago[DBGHELP] Remove useless broken CMake defines
Timo Kreuzer [Fri, 15 Mar 2024 18:46:45 +0000 (20:46 +0200)]
[DBGHELP] Remove useless broken CMake defines

4 weeks ago[HDAUDBUS] Silence debug spam
Timo Kreuzer [Mon, 27 Nov 2023 20:19:55 +0000 (22:19 +0200)]
[HDAUDBUS] Silence debug spam

- Demote a DPRINT1 to a DPRINT
- Define NDEBUG

4 weeks ago[NTOS:EX] Fix a loop bug
Timo Kreuzer [Fri, 8 Mar 2024 18:53:12 +0000 (20:53 +0200)]
[NTOS:EX] Fix a loop bug

4 weeks ago[RTL/x64] Fix a GCC compiler warning
Timo Kreuzer [Fri, 8 Mar 2024 17:35:03 +0000 (19:35 +0200)]
[RTL/x64] Fix a GCC compiler warning

4 weeks ago[SHLWAPI] SHLWAPI_DEF_ASSOCF: Add ASSOCF_INIT_NOREMAPCLSID (#6636)
Katayama Hirofumi MZ [Tue, 19 Mar 2024 00:44:10 +0000 (09:44 +0900)]
[SHLWAPI] SHLWAPI_DEF_ASSOCF: Add ASSOCF_INIT_NOREMAPCLSID (#6636)

Step up to correct shell32!FindExecutable.
JIRA issue: CORE-19493

4 weeks ago[SHELL32][SDK] Implement RealShellExecute(,Ex)(A,W) (#5849)
Katayama Hirofumi MZ [Mon, 18 Mar 2024 23:58:07 +0000 (08:58 +0900)]
[SHELL32][SDK] Implement RealShellExecute(,Ex)(A,W) (#5849)

Implementing missing features...
JIRA issue: CORE-19278
- Modify shell32.spec.
- Implement RealShellExecuteA, RealShellExecuteW, RealShellExecuteExA,
  and RealShellExecuteExW functions.
- Add the prototypes to <undocshell.h>.
- Modify SEE_MASK_... constants.

4 weeks ago[SHELL32_APITEST] Enhance FindExecutable testcase (#6634)
Katayama Hirofumi MZ [Sun, 17 Mar 2024 22:36:17 +0000 (07:36 +0900)]
[SHELL32_APITEST] Enhance FindExecutable testcase (#6634)

I want to know the details of FindExecutable
behavior.
JIRA issue: CORE-19493
Enhance the tests of return values.

4 weeks ago[MSPAINT] Support JPEG/PNG/GIF/TIFF wallpapers (#6632)
Katayama Hirofumi MZ [Sun, 17 Mar 2024 22:32:47 +0000 (07:32 +0900)]
[MSPAINT] Support JPEG/PNG/GIF/TIFF wallpapers (#6632)

Improve usability.
JIRA issue: CORE-19485
- Enable the menu items to set the wallpapars.
- Save the current bitmap as file Wallpaper1.bmp
  in CSIDL_LOCAL_APPDATA folder.
- Support JPEG/PNG/GIF/TIFF files in
  RegistrySettings::SetWallpaper.

4 weeks ago[MSCTFIME] Use QISearch for QueryInterface (#6630)
Katayama Hirofumi MZ [Sun, 17 Mar 2024 03:44:03 +0000 (12:44 +0900)]
[MSCTFIME] Use QISearch for QueryInterface (#6630)

Simplify code and reduce binary size.
JIRA issue: CORE-19360
- Use shlwapi!QISearch for QueryInterface
  implementation.
- Add delay link to shlwapi.

4 weeks ago[MSUTB][SDK] Use QISearch for QueryInterface (#6631)
Katayama Hirofumi MZ [Sun, 17 Mar 2024 02:55:19 +0000 (11:55 +0900)]
[MSUTB][SDK] Use QISearch for QueryInterface (#6631)

Simplify code and reduce binary size.
JIRA issue: CORE-19363
- Use shlwapi!QISearch for QueryInterface
  implementation.
- Add delay link to shlwapi.
- Define QITABENT macro in <shlwapi.h>.

4 weeks ago[RAPPS][SHLWAPI][SDK] Un-escape URL filename (#6626)
Katayama Hirofumi MZ [Sat, 16 Mar 2024 23:15:08 +0000 (08:15 +0900)]
[RAPPS][SHLWAPI][SDK] Un-escape URL filename (#6626)

Choosing the better filename.
JIRA issue: CORE-19490
- Add UrlUnescapeAndMakeFileNameValid helper function.
- Use UrlUnescapeW and PathIsValidCharW.
- Add PATH_CHAR_CLASS_... flags for PathIsValidCharA/W.

4 weeks ago[TOOLS] gen_baseaddress.py: Add '.ime' to ALL_EXTENSIONS (#6628)
Katayama Hirofumi MZ [Sat, 16 Mar 2024 10:37:26 +0000 (19:37 +0900)]
[TOOLS] gen_baseaddress.py: Add '.ime' to ALL_EXTENSIONS (#6628)

We have dll/ime/msctfime for the DLL
file msctfime.ime.
JIRA issue: N/A
Add '.ime' to ALL_EXTENSIONS.

4 weeks ago[CMAKE] Update sdk/cmake/baseaddress(,_msvc).cmake (#6627)
Katayama Hirofumi MZ [Sat, 16 Mar 2024 04:46:10 +0000 (13:46 +0900)]
[CMAKE] Update sdk/cmake/baseaddress(,_msvc).cmake (#6627)

Follow-up to #6624 (fd96666). ReactOS got rekt in that PR
because kernel32.dll got so larger.
Fix base addresses of DLLs to boot successfully. Sorry.

(dll/ntdll/ldr/ldrutils.c:1423) Illegal DLL relocation!
C:\ReactOS\System32\ntdll.dll overlaps kernel32.dll
*** Fatal System Error: 0xc0000269

Proposed changes
After latest build:
python gen_baseaddress.py C:\Users\katahiromz\reactos-1\output-VS-i386
python gen_baseaddress.py C:\Users\katahiromz\reactos-1\output-MinGW-i386

4 weeks ago[SDK][MC] errcodes.mc: Add Japanese (ja-JP) translation (#6624)
Katayama Hirofumi MZ [Fri, 15 Mar 2024 15:11:53 +0000 (00:11 +0900)]
[SDK][MC] errcodes.mc: Add Japanese (ja-JP) translation (#6624)

Localize the error messages.
JIRA issue: CORE-18706
Modify errcodes.mc for Japanese localization.

4 weeks ago[SHELL32_APITEST] ShellExecuteEx: Fix command line checker (#6618)
Katayama Hirofumi MZ [Fri, 15 Mar 2024 14:46:14 +0000 (23:46 +0900)]
[SHELL32_APITEST] ShellExecuteEx: Fix command line checker (#6618)

Follow-up to #6617.
JIRA issue: CORE-19482
Add traces for error checking.

4 weeks ago[SHLWAPI] Implement SHSetDefaultDialogFont (#6620)
Katayama Hirofumi MZ [Fri, 15 Mar 2024 12:25:53 +0000 (21:25 +0900)]
[SHLWAPI] Implement SHSetDefaultDialogFont (#6620)

Implementing missing features...
JIRA issue: CORE-19278
- Implement SHSetDefaultDialogFont function.
- Add SHSetDefaultDialogFont prototype to
  <shlwapi_undoc.h>.

5 weeks ago[SHELL32] Add transparent icon resource (#6621) CORE-19471
Oleg Dubinskiy [Thu, 14 Mar 2024 19:58:12 +0000 (20:58 +0100)]
[SHELL32] Add transparent icon resource (#6621) CORE-19471

Add transparent 16x16 icon (just small picec of transparent background) as resource and use it for 50, 51, 52, 53 resource IDs.
Define it as IDI_SHELL_NONE_XX for all four IDs appropriately (since the icon displays nothing).
These resources are not used by anything yet, but they are confirmed to exist as resources with 50, 51, 52, 53 IDs in shell32.dll from Windows XP/Server 2003.
This allows to correct the ordering of all other resources those come starting from index 54, and hence it fixes the following icons displayed incorrectly after restoring to default system icon set via Stardock IconPackager 5.1:
- Control Panel folder icon;
- Folder Options item icon in Control Panel;
- My Music special folder in My Documents;
- several File extensions icons (.ini, .txt etc).
The icons are fixed as in the preview of IconPackager app, same in ReactOS itself.
Now only Web Browser item icon on the Desktop remains invalid. All other icons are restored correctly.
CORE-19471

5 weeks ago[BROWSEUI] Delete WS_BORDER and owner-drawing from IDC_SEARCH_COMBOBOX (#6610)
Katayama Hirofumi MZ [Wed, 13 Mar 2024 11:04:39 +0000 (20:04 +0900)]
[BROWSEUI] Delete WS_BORDER and owner-drawing from IDC_SEARCH_COMBOBOX (#6610)

Related to #6609.
Delete WM_BORDER and CBS_OWNERDRAWFIXED
styles from IDC_SEARCH_COMBOBOX.
JIRA issue: N/A

5 weeks ago[SHELL32_APITEST] Make ShellExecuteEx testcase stable (#6617)
Katayama Hirofumi MZ [Wed, 13 Mar 2024 08:09:20 +0000 (17:09 +0900)]
[SHELL32_APITEST] Make ShellExecuteEx testcase stable (#6617)

Making the tests trustworthy.
JIRA issue: ROSTESTS-389
- Enable command line checking.
- Rewrite the tests for better tests.
- Remove dependency with shell32_apitest_sub.
- Close the newly opened windows by Alt+F4 at ending.

5 weeks ago[NTUSER] Fix sticky mouse buttons (#6426)
Doug Lyons [Wed, 13 Mar 2024 06:16:02 +0000 (01:16 -0500)]
[NTUSER] Fix sticky mouse buttons (#6426)

Fix Mouse Buttons Sticking Down causing unexpected window dragging.
This is a patch supplied by @I_Kill_Bugs and seems to work well as tested by @julenuri.

JIRA issue: CORE-11775 'GIMP 2.6.12: Sticky issue when dragging with the mouse'
JIRA issue: CORE-14998 'Google Chrome 40.0.2214.115, when moving window position by dragging at the titlebar, the drag-end is not detected, the window may stick with the mouse pointer'
Improves JIRA issue: CORE-18511

Proposed changes
Add extra code into nonclient.c procedure DefWndDoSizeMove to drop tracking.
If we get a mouse move with the mouse left button down, then break out of testing.

5 weeks ago[FREELDR] Factor duplicated code into a GetOSLoadingMethod() helper
Hermès Bélusca-Maïto [Mon, 18 Apr 2022 22:09:49 +0000 (00:09 +0200)]
[FREELDR] Factor duplicated code into a GetOSLoadingMethod() helper

This removes duplicated code present in both LoadOperatingSystem()
and EditOperatingSystemEntry().

+ Add SAL annotations to the related functions.

5 weeks ago[COMDLG32] Improve Japanese (ja-JP) translation, Part 2
Katayama Hirofumi MZ [Tue, 12 Mar 2024 12:12:43 +0000 (21:12 +0900)]
[COMDLG32] Improve Japanese (ja-JP) translation, Part 2

Follow-up to 78f6179. CORE-18706

5 weeks ago[SHELL32] Update Polish (pl-PL) translation (#6597)
Piotr Hetnarowicz [Tue, 12 Mar 2024 12:02:29 +0000 (13:02 +0100)]
[SHELL32] Update Polish (pl-PL) translation (#6597)

Addendum to 71285dff489 and 0241b5c4e93. CORE-16956

5 weeks ago[SHELL32] Update Russian (ru-RU) translation
Stanislav Motylkov [Tue, 12 Mar 2024 11:54:24 +0000 (14:54 +0300)]
[SHELL32] Update Russian (ru-RU) translation

Addendum to 71285dff489 and 0241b5c4e93. CORE-16956

5 weeks ago[COMDLG32] Improve Japanese (ja-JP) translation
Katayama Hirofumi MZ [Tue, 12 Mar 2024 11:55:47 +0000 (20:55 +0900)]
[COMDLG32] Improve Japanese (ja-JP) translation

CORE-18706

5 weeks ago[BROWSEUI] Search: Add WS_BORDER to IDC_SEARCH_COMBOBOX (#6609)
Katayama Hirofumi MZ [Tue, 12 Mar 2024 11:06:24 +0000 (20:06 +0900)]
[BROWSEUI] Search: Add WS_BORDER to IDC_SEARCH_COMBOBOX (#6609)

Fix a minor UI problem. IDC_SEARCH_COMBOBOX was border-less.
It was wrong.
JIRA issue: N/A
- Add WS_BORDER window style to IDC_SEARCH_COMBOBOX
  combo box in IDD_SEARCH_DLG dialog resource.

5 weeks ago[COMCTL32] TreeView: Fix selection display on checking checkbox (#6608)
Katayama Hirofumi MZ [Tue, 12 Mar 2024 09:49:52 +0000 (18:49 +0900)]
[COMCTL32] TreeView: Fix selection display on checking checkbox (#6608)

Fix checkboxed treeview selection display.
JIRA issue: CORE-19480
- Make the first argument of TREEVIEW_ToggleItemState non-const.
- Select the item by calling TREEVIEW_SelectItem in TREEVIEW_ToggleItemState.

5 weeks ago[USER32] Show Debug Log Message when unhandled PNG found in ICO file. (#5566)
Doug Lyons [Tue, 12 Mar 2024 07:45:22 +0000 (02:45 -0500)]
[USER32] Show Debug Log Message when unhandled PNG found in ICO file. (#5566)

Detect the PNG data in ICO files and print an appropriate message to the debug log.
JIRA issue: CORE-19107

5 weeks ago[SHELL32] CGuidItemContextMenu: Fix pwszCLSID leak (#6607)
Katayama Hirofumi MZ [Tue, 12 Mar 2024 07:10:59 +0000 (16:10 +0900)]
[SHELL32] CGuidItemContextMenu: Fix pwszCLSID leak (#6607)

Fix memory leak.
JIRA issue: CORE-19478
- Use CoTaskMemFree for pwszCLSID to avoid memory leak
  in CGuidItemContextMenu_CreateInstance function.

5 weeks ago[SHELL32] Start Menu: Enhance context menu (#6606)
Katayama Hirofumi MZ [Tue, 12 Mar 2024 06:58:22 +0000 (15:58 +0900)]
[SHELL32] Start Menu: Enhance context menu (#6606)

Improve Start Menu usability.
JIRA issue: CORE-19477
- Add CSIDLFromID helper function.
- Return a context menu interface at CShellMenuCallback::OnGetContextMenu.
FIXME: CSIDL_CONTROLS, CSIDL_NETWORK, and CSIDL_PRINTERS context menu
wrongly open My Computer.

5 weeks ago[MSUTB] Implement CLangBarItemList (#6605)
Katayama Hirofumi MZ [Tue, 12 Mar 2024 02:40:02 +0000 (11:40 +0900)]
[MSUTB] Implement CLangBarItemList (#6605)

Supporting the Language bar...
JIRA issue: CORE-19363
- Define LANGBARITEMSTATE structure.
- Implement CLangBarItemList class.

5 weeks ago[SHELL32] Start Menu Customize: Fix bMustHideAdminTools (#6604)
Katayama Hirofumi MZ [Mon, 11 Mar 2024 23:26:07 +0000 (08:26 +0900)]
[SHELL32] Start Menu Customize: Fix bMustHideAdminTools (#6604)

Follow-up to #6603. Fix a bug in Admin Tools display.
JIRA issue: CORE-16956
Fix the value of bMustHideAdminTools in CMenuSFToolbar::FillToolbar.

5 weeks ago[EXPLORER] Start Menu Customize: Use TreeView_GetRoot (#6603)
Katayama Hirofumi MZ [Mon, 11 Mar 2024 23:17:05 +0000 (08:17 +0900)]
[EXPLORER] Start Menu Customize: Use TreeView_GetRoot (#6603)

Follow-up to #6596. Enable the Favorite menu setting.
JIRA issue: CORE-16956
- Use TreeView_GetRoot instead of TreeView_GetFirstVisible in
  CustomizeClassic_OnOK function.

5 weeks ago[FREELDR] Deduplicate common message-box creation code.
Hermès Bélusca-Maïto [Mon, 11 Mar 2024 20:44:45 +0000 (21:44 +0100)]
[FREELDR] Deduplicate common message-box creation code.

Also, make the (T)uiSave/RestoreScreen() helpers manage themselves the
temporary memory buffer used to store the temporary screen snapshot.

5 weeks ago[FREELDR] Minor formatting for MsgBox functions + add SAL annotations
Hermès Bélusca-Maïto [Mon, 11 Mar 2024 16:22:37 +0000 (17:22 +0100)]
[FREELDR] Minor formatting for MsgBox functions + add SAL annotations

5 weeks ago[FREELDR] Move the arch-specific intrin_i.h inclusions to where they are actually...
Hermès Bélusca-Maïto [Sun, 10 Mar 2024 15:39:40 +0000 (16:39 +0100)]
[FREELDR] Move the arch-specific intrin_i.h inclusions to where they are actually needed (NTLDR)

5 weeks ago[FREELDR] FrLdrHeapCreate: Show the memory type in the ERR().
Hermès Bélusca-Maïto [Sun, 10 Mar 2024 15:35:25 +0000 (16:35 +0100)]
[FREELDR] FrLdrHeapCreate: Show the memory type in the ERR().

5 weeks ago[FREELDR] Initialize CandidatePageCount to zero, needed if the while-loop is not...
Hermès Bélusca-Maïto [Sun, 10 Mar 2024 15:20:16 +0000 (16:20 +0100)]
[FREELDR] Initialize CandidatePageCount to zero, needed if the while-loop is not run.

Granted, if the while-loop is not run, this means there is no memory
available at all on the computer where FreeLdr is running, which is
quite unexpected. But do the initialization anyways, in order to avoid
more obscure bugs down the line.

On the other hand, PageLookupTableMemAddress doesn't need to be
pre-initialized, since it gets initialized unconditionally afterwards.

5 weeks ago[FREELDR] pcat.cmake: minor cleanup
Hermès Bélusca-Maïto [Sat, 9 Mar 2024 10:52:33 +0000 (11:52 +0100)]
[FREELDR] pcat.cmake: minor cleanup

5 weeks ago[FREELDR] Pre-initialize the INI section list, improve loops over sections and items.
Hermès Bélusca-Maïto [Sat, 9 Mar 2024 10:45:27 +0000 (11:45 +0100)]
[FREELDR] Pre-initialize the INI section list, improve loops over sections and items.

Avoids dereferencing list entries to sections/items when these lists are empty.

IniParseFile(): Emit an error to the debug log when a candidate setting
is outside a section and skip it, instead of popping up an error on the UI.

5 weeks ago[FREELDR] ueficon.c: Add missing support for HOME and END keys.
Hermès Bélusca-Maïto [Sat, 9 Mar 2024 10:27:37 +0000 (11:27 +0100)]
[FREELDR] ueficon.c: Add missing support for HOME and END keys.

And reserve INSERT, PAGE_UP and PAGE_DOWN for future handling.

5 weeks ago[FREELDR] Minor code cleanup in arch/uefi files
Hermès Bélusca-Maïto [Sat, 9 Mar 2024 10:27:00 +0000 (11:27 +0100)]
[FREELDR] Minor code cleanup in arch/uefi files

5 weeks ago[FREELDR] i386/hwdisk.c: Use FIRST_BIOS_DISK and FIRST_PARTITION macros like what...
Hermès Bélusca-Maïto [Sat, 9 Mar 2024 10:25:10 +0000 (11:25 +0100)]
[FREELDR] i386/hwdisk.c: Use FIRST_BIOS_DISK and FIRST_PARTITION macros like what's done in UEFI code.

5 weeks ago[DESK] SetScreenSaver(): Remove remnant 'DeleteMode' variable (#6593)
Serge Gautherie [Mon, 11 Mar 2024 14:35:34 +0000 (15:35 +0100)]
[DESK] SetScreenSaver(): Remove remnant 'DeleteMode' variable (#6593)

Addendum to commit d21e3a1d2 (r58360).

5 weeks ago[NTUSER] Fix PeekMessageA for MsgFilterLow/High mouse clicks (#6427)
Doug Lyons [Mon, 11 Mar 2024 13:34:34 +0000 (08:34 -0500)]
[NTUSER] Fix PeekMessageA for MsgFilterLow/High mouse clicks (#6427)

Fix MSO and Word Viewer not closing when "X" on title bar is clicked.
This is another @I_Kill_Bugs patch.

CORE-14436 , CORE-16985

5 weeks ago[EXPLORER][SHELL32] Show/hide 'Admin tools' menu (#6598)
Katayama Hirofumi MZ [Mon, 11 Mar 2024 12:58:30 +0000 (21:58 +0900)]
[EXPLORER][SHELL32] Show/hide 'Admin tools' menu (#6598)

Improve Start Menu customization.
JIRA issue: CORE-16956
- Add IsPidlPrograms helper function.
- Specify a PIDL for Programs menu.
- Check the "StartMenuAdminTools" registry value.
- Don't add "Admin Tools" menu item into
  CMenuSFToolbar::FillToolbar if necessary.

5 weeks ago[EXPLORER][SHELL32] Fix and improve Start Menu customization (#6596)
Katayama Hirofumi MZ [Mon, 11 Mar 2024 11:18:07 +0000 (20:18 +0900)]
[EXPLORER][SHELL32] Fix and improve Start Menu customization (#6596)

Correct the details of Start Menu customization.
JIRA issue: CORE-16956
- Hide the setting item if the item is restricted.
- Don't change restriction in Explorer.
- Fix Start Menu settings for restriction and registry.
- Fix and simplify code.

5 weeks ago[EXPLORER][SHELL32] Expand/unexpand Control Panel menu (#6595)
Katayama Hirofumi MZ [Mon, 11 Mar 2024 07:19:46 +0000 (16:19 +0900)]
[EXPLORER][SHELL32] Expand/unexpand Control Panel menu (#6595)

Follow-up to #6594. Improve Start Menu customization.
JIRA issue: CORE-16956
- Add IDS_ADVANCED_EXPAND_CONTROL_PANEL, IDS_ADVANCED_EXPAND_PRINTERS,
  and IDS_ADVANCED_EXPAND_NET_CONNECTIONS resource strings.
- Check the "CascadeControlPanel", "CascadeNetworkConnections", and "CascadePrinters"
  registry values.
- Modify Start Menu by using AddOrSetMenuItem and AddStartMenuItems helper
  functions in CShellMenuCallback::OnGetSubMenu.

5 weeks ago[EXPLORER][SHELL32] Expand/unexpand My Documents menu (#6594)
Katayama Hirofumi MZ [Mon, 11 Mar 2024 04:18:58 +0000 (13:18 +0900)]
[EXPLORER][SHELL32] Expand/unexpand My Documents menu (#6594)

Follow-up to #6592. Improve Start Menu
customization.
JIRA issue: CORE-16956
- Add IDS_ADVANCED_EXPAND_MY_DOCUMENTS
  and IDS_ADVANCED_EXPAND_MY_PICTURES
  resource strings.
- Check L"CascadeMyDocuments" and
  L"CascadeMyPictures" registry values.
- Add GetAdvancedValue helper function.
- Implement CreateRecentMenu function.

5 weeks ago[BOOT] Don't create CSIDL_ADMINTOOLS folder in initial (#6551)
Katayama Hirofumi MZ [Mon, 11 Mar 2024 02:24:26 +0000 (11:24 +0900)]
[BOOT] Don't create CSIDL_ADMINTOOLS folder in initial (#6551)

We shouldn't create an empty CSIDL_ADMINTOOLS folder at initial status.
JIRA issue: CORE-12328
- Modify boot/boot_images.cmake.

5 weeks ago[EXPLORER][SHELL32][SDK] Show/hide 'Run' menu item (#6592)
Katayama Hirofumi MZ [Mon, 11 Mar 2024 01:54:12 +0000 (10:54 +0900)]
[EXPLORER][SHELL32][SDK] Show/hide 'Run' menu item (#6592)

Improve Start Menu customization.
JIRA issue: CORE-16956
- Add SHSettingsChanged prototype to
  <undocshell.h>.
- Add SetRestriction helper function.
- Implement showing/hiding Run menu
  item of Start Menu.

5 weeks ago[SHELL32][SHLWAPI][SDK] Implement SHRestricted etc. (#6560)
Katayama Hirofumi MZ [Sun, 10 Mar 2024 23:29:04 +0000 (08:29 +0900)]
[SHELL32][SHLWAPI][SDK] Implement SHRestricted etc. (#6560)

shell32!SHRestricted is necessary to make shell working well.
JIRA issue: CORE-11515
- Add dll/win32/shell32/wine/PolicyData.h to define the shell policy data.
- Define POLICYDATA structure and SHELL_NO_POLICY constant
  in <shlwapi_undoc.h>.
- Fix shell32!SHRestricted, shell32!SHSettingsChanged,
  shlwapi!SHGetRestriction, and shlwapi!SHRestrictionLookup functions.

5 weeks ago[KILL] ExecuteKill(): Return '1' on failures
Serge Gautherie [Tue, 27 Feb 2024 21:42:54 +0000 (22:42 +0100)]
[KILL] ExecuteKill(): Return '1' on failures

and add a related 'CloseHandle()' call.

Also, enforce PID 'unsigned' type.

5 weeks ago[KILL] main(): Return actual return value
Serge Gautherie [Tue, 27 Feb 2024 21:42:54 +0000 (22:42 +0100)]
[KILL] main(): Return actual return value

and get rid of 'tail' variable, which had wrong type anyway.

Also, be strict about parameter number: only 1 PID is supported.

5 weeks ago[FORMATTING][KILL] kill.c: reformat it
Serge Gautherie [Tue, 27 Feb 2024 21:42:54 +0000 (22:42 +0100)]
[FORMATTING][KILL] kill.c: reformat it