Commit graph

85563 commits

Author SHA1 Message Date
Maj Soklič
6c7974d91f
[GITHUB] Fix toolset version for MSVC 17.10 (#6997)
MSVC 17.10 now uses 14.4x for its toolset version.
GitHub just upgraded to this version as seen here:
- https://github.com/actions/runner-images/releases/tag/win22%2F20240603.1

Use latest toolset instead of clamping to a specific minor version.
2024-06-07 01:22:20 +03:00
Katayama Hirofumi MZ
5a159ad1cc
Revert "[BOOTDATA][INF] Add Tahoma entry to Asian FontLink (#6985)" (#6996)
Reverts #6985
JIRA issue: CORE-9616
Forgot a comma and a backslash.
I will retry.
2024-06-07 01:48:22 +09:00
Katayama Hirofumi MZ
8079fa1a3d
[BOOTDATA][INF] Add Tahoma entry to Asian FontLink (#6985)
Follow-up to #6929.
Latin accented characters will be able to
be mixed in East Asian text by FontLink
framework in the future.
JIRA issue: CORE-9616
- Modify boot/bootdata/hivesft.inf.
- Add "tahoma.ttf,Tahoma" entry to
  Asian FontLink registry values.
2024-06-07 00:43:55 +09:00
Katayama Hirofumi MZ
77d05dd552
[WALLPAPERS] Restructuring (#6967)
Respect the original directory structure.
JIRA issue: CORE-19617
- Make Angelus, Angelus/ReactOS, and
  Mizu folders.
- Move image files.
- Add LICENSE.txt and suggestion.txt files.
- Revive modules/wallpapers/Angelus/
  ReadMe.txt.
2024-06-06 18:56:17 +09:00
Anderson Rodrigues
a061747295
[TASKMGR] Fix orthographic error in Portuguese Brazilian (pt-BR) translation (#6980) 2024-06-05 21:30:49 +03:00
Whindmar Saksit
82721de625
[SHELL32] Don't add folder verbs to non-folder RegItems (#6991)
RegItems that pretend to be files should not have Folder verbs
2024-06-05 02:12:58 +02:00
Hermès Bélusca-Maïto
ee92f4b28e
[SDK:CMAKE/IDL] Fix dependency tracking in generate_idl_iids() and extra cleanup.
Do the same in add_idl_reg_script() (currently unused helper) as well.

This is an addendum to commit b587e7b32, where the removal of the
IDL_FILE_FULL variable definition, broke dependency tracking with
the DEPENDS option. Now we use the correct variable.

The problem was caught after doing a partial (non-clean) build after
commit 0d10fb814. In this commit, two new interfaces, IExecuteCommand
and IObjectWithSelection, were added in the psdk/shobjidl.idl file
and used elsewhere. Recompilation correctly regenerated the corresponding
header, psdk/shobjidl.h, but did not trigger a regeneration of the uuid
static library (via the regeneration of sdk/lib/uuid/shobjidl_i.c),
due to broken dependency tracking on the shobjidl.idl file.
Because of this, the shobjidl_i.c did not contain the new GUID
definitions for these new interfaces, IID_IExecuteCommand and
IID_IObjectWithSelection, and triggered linking errors for the
com_apitest, actxprxy and shell32 modules:

```
error LNK2001: unresolved external symbol _IID_IExecuteCommand
error LNK2001: unresolved external symbol _IID_IObjectWithSelection
fatal error LNK1120: 2 unresolved externals
```
2024-06-04 22:21:59 +02:00
Whindmar Saksit
c97c1ad4c5
[SHELL32][BROWSEUI] Implement ShellBrowser Apply/Reset default folder settings (#6912) 2024-06-04 18:37:19 +02:00
Carl J. Bialorucki
ad73e17418
[USER32] Introduce user32_vista and stubplement GetDpiForWindow() (#6208)
Add user32_vista.dll to introduce new NT6+ User32 features without changing the existing User32.dll when compiled as NT5.x. Also implements a stub for GetDpiForWindow(). The GetDpiForWindow() function will be required to Wine-sync common controls to modern Wine versions.

Changes:
Expose GetDpiForWindow() function and USER_DEFAULT_SCREEN_DPI to appropriate versions in winuser.h
Introduce a basic user32_vista library that can be expanded as needed.
2024-06-04 10:19:32 -06:00
Whindmar Saksit
063997f2e0
[REGEDIT] Implement the "Go to HKCU/HKLM" feature (#6900) 2024-06-04 15:40:14 +02:00
Whindmar Saksit
0d10fb814f
[SHELL32] Implement DelegateExecute verb handler and basic IShellItemArray (#6972) 2024-06-04 15:38:49 +02:00
Serge Gautherie
01fbf25dab
[DBGHELP][NDK][RTL] *RtlComputeCrc32(): Add 'const' to 2nd parameter (#6973)
and sync SAL2 annotations.

It didn't always warn in the past, our gutfeeling (we have *not* double-checked that thesis!) is that the warnings might have been triggered when 0.4.15-dev-958-g 237aa3a9c1 was committed
2024-06-04 13:35:57 +02:00
Julen Urizar Compains
1cd08eee52
[MSI] CORE-18707 hack. Allow MSI under ROS amd64 to continue when GetSystemWow64DirectoryW is called (#6887) 2024-06-04 13:10:09 +02:00
Thamatip Chitpong
b631c5d3b1 [WINMINE] Add EXE version info 2024-06-04 00:36:04 +07:00
Thamatip Chitpong
b399f7d5b4 [SPIDER] Add EXE version info 2024-06-04 00:36:04 +07:00
Thamatip Chitpong
a01cbc3ac2 [SOLITAIRE] Add EXE version info 2024-06-04 00:36:04 +07:00
Oleg Dubinskiy
4ad83ef095 [WINMINE] Update Ukrainian (uk-UA) translation
Translate the "Sound" menu item to Ukrainian.
2024-06-03 18:45:04 +02:00
Oleg Dubinskiy
94a25e66de [WINMINE] Update Russian (ru-RU) translation
Translate the "Sound" menu item to Russian.
2024-06-03 18:41:04 +02:00
Thamatip Chitpong
580574fba8
[WINMINE] Add sound effects (#6969)
- Sound is disabled by default
- Use WinXP-compatible registry key and value
2024-06-03 21:57:44 +07:00
Katayama Hirofumi MZ
890b9c0b93
[NTGDI][FREETYPE] Simplify get_glyph_index_flagged (#6977)
Simplify code.
JIRA issue: CORE-9616
- Reduce one parameter of get_glyph_index_flagged function.
2024-06-03 09:28:52 +09:00
Jose Carlos Jesus
51f3cf0509
[NOTEPAD] pt-PT: Fix accel collisions. Improve menu cmd translation (#6978)
* [NOTEPAD] Fix accel collisions. Improve menu cmd translation (pt-PT)
* [NOTEPAD] Update portuguese (pt-PT) translation
2024-06-02 20:02:33 +02:00
Jose Carlos Jesus
abd34b6d90
[REGEDIT] pt-PT.rc: Fix accels collisions (#6975)
accels compatibility closer to Win2003 Server

Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2024-06-02 12:06:13 +02:00
George Bișoc
fe23a4aaeb
[NTOS:CM] Lock the entire registry down when we unload a hive
The PR #6649 which fixed an issue with orphaned KCBs leaking in memory which also pointed to unloaded registry hives, it also brought a problem.
In CmpEnumerateOpenSubKeys there is a risk of getting hit by a deadlock as we enumerate the cache table to remove empty cache entries.

Fundamentally CmpEnumerateOpenSubKeys locks down a KCB from cache for exclusive use in order to tear down its contents from memory but it doesn't address the fact a KCB might have already been locked in the same calling thread, leading to a recursion.
This leads to random hangs when unloading a hive during system startup (tipically on a clean install).

The solution here is to simply lock the whole registry when we unload a hive so that we don't have to worry the KCBs are getting tampered by anybody else. This also simplifies the code.
Although locking the entire registry while other apps are doing registry related operations to other hives can cause overhead. If this turns out to be bad then we have to rethink the locking mechanism here.

CORE-19539
2024-06-01 16:17:47 +02:00
George Bișoc
5d0117de90
[NTOS:CM] Annotate CmUnloadKey with SAL2 2024-06-01 16:17:47 +02:00
Oleg Dubinskiy
a55e9ce19c
[AC97] Use individual Decibel range for Master Volume control (#6950)
Add ReactOS change to use the same Decibel (dB) sound loudness range for Master Volume control as for WaveOut Volume Control.
This fixes incompatible volume level change scaling when changing the volume in Fox Audio Player 0.10.2 from Rapps and Winamp 2.95 with WaveOut output plugin.
Now it is identical to the one when using original AC97 driver from Windows XP/Server 2003.
CORE-14780
2024-06-01 12:31:53 +02:00
Oleg Dubinskiy
9046cc97ee
[AUDIO] Implement volume control support (#6922)
Implement volume level changing for Aux/MidiOut/WaveOut devices. It's represented the following WINMM functions:
- auxGetVolume,
- auxSetVolume,
- midiOutGetVolume,
- midiOutSetVolume,
- waveOutGetVolume,
- waveOutSetVolume,
which are calling the followind messages appropriately:
- AUXDM_GETVOLUME,
- AUXDM_SETVOLUME,
- MODM_GETVOLUME,
- MODM_SETVOLUME,
- WODM_GETVOLUME,
- WODM_SETVOLUME.
This fixes volume control for several 3rd-party programs (like Fox Audio Player 0.10.2 from Rapps, Winamp 2.95 with WaveOut plugin). However it does not fix changing the volume in system volume mixers (SndVol32, MMSys), since they are using their own functionality instead. They technically do the same things, but apart from the functions mentioned above.
CORE-14780
2024-06-01 12:30:33 +02:00
Joachim Henze
e1db293f12
[REGEDIT] *.rc Improve accels and harmonize a bit, especially de-DE (#6964)
- all languages: Strip unintended accelerators for Cancel-buttons
- many languages: had accel collision between "&File"-menu and "&Favorites" menu. It must be "F&avrites" for those!
- de-DE: "&Wertname:" -> "&Name:" was done because this is what Windows does and to fix an accel collision between "&Wert" and "&Wertname"
- de-DE: use the same name for String, DWORD, MULTISTRING, EXPANDABLESTRING in all 3 dialogs (each of the 3 dlgs used different names before), which also fixes an accel collision between "&Schlüssel" and "&String"
- de-DE: structurally use "Sc&hlüssel", instead of mixed things
- de-DE: "&Trennen" -> "&Teilen" is what Windows does
- de-DE "&Ändern" -> "Än&dern" is what Windows does, and avoids accel at a special character
- de-DE "&Über" -> "Inf&o" is what Windows does, and avoids accel at a special character
- de-DE "S&chlüsselnamen kopieren" -> "Schlüsselnamen &kopieren" is to match another already existing "Schlüsselnamen &kopieren" in the file
- de-DE "A&lles auswählen" -> "Alles &markieren" is what Windows does
- all languages: fix 26x wrong capitalization for "Ms Shell Dlg" -> "MS Shell Dlg"
- use the correct fonts for some asian languages (font-size9) this was for 5 new dlgs from 0.4.15-dev'ing
- fix many accelerator collisions for many languages, or leave FIXMEs for them where I found it to be better for the native speakers to act on their own in the future

JIRA issue: none
2024-05-31 17:28:39 +02:00
Serge Gautherie
3cc4361cca
[CMAKE] Clang*: Add '-Werror=unknown-warning-option' for C/CXX (#6383)
* [UDFS] Clang: Fix a #pragma

'warning: unknown warning group '-Wstringop-overflow', ignored [-Wunknown-warning-option]'

Follow-up to 612b1f2e6 (0.4.15-dev-1129).

* [CREATESPEC] Clang: Fix a target_compile_options()

'warning: unknown warning option '-Wno-stringop-overflow'; did you mean '-Wno-shift-overflow'? [-Wunknown-warning-option]'

Addendum to 00ed72d7e (0.4.15-dev-1169).

* [MSVCRT_WINETEST] Clang*: Fix a target_compile_options()

'warning: unknown warning option '-Wno-stringop-truncation'; did you mean '-Wno-string-concatenation'? [-Wunknown-warning-option]'

Addendum to commits 00ed72d7e (0.4.15-dev-1169) then f155b9377 (0.4.15-dev-4612).

* [TELNET] Clang*: Fix a target_compile_options()

'warning: unknown warning option '-Wno-restrict' [-Wunknown-warning-option]'

Addendum to 447ef2aa4 (0.4.15-dev-4613).
2024-05-31 16:26:11 +02:00
Katayama Hirofumi MZ
b50ab0dc68
[SHELL32] brfolder.cpp: Refresh items (#6965)
Refresh the items in the tree-view
control of SHBrowseForFolderA/W
functions against change notifications.
JIRA issue: CORE-17340
- Add BrFolder_IsTreeItemInEnum and
  BrFolder_TreeItemHasThisChild helper
  functions.
- Add BrFolder_Refresh,
  BrFolder_RefreshRecurse, and
  BrFolder_UpdateItem functions to
  refresh items.
- Call BrFolder_Refresh in
  BrFolder_OnChangeEx function and on
  keyboard F5 and Ctrl+R actions.
2024-05-31 22:40:56 +09:00
Whindmar Saksit
c3ec1b9ac6
[SHELL32_APITEST] Stricter SHSimpleIDListFromPath tests (#6894)
The first x number of bytes in PIDLs for drive letters, folders and files are set in stone and should match Windows.
2024-05-30 18:18:39 +02:00
Whindmar Saksit
3da9e7e251
[SHELL32] Implement SHBrowseForFolder items contextmenu (#6952)
* [SHELL32] Implement SHBrowseForFolder items contextmenu

CORE-16944 CORE-19597
2024-05-30 17:53:44 +02:00
Whindmar Saksit
6d7648d723
[SHELL32] CDefView::InvokeContextMenuCommand must specify a showcmd (#6966)
ZeroMemory causes nShow to be SW_HIDE. This causes shell extensions that propagates the nShow all the way, will start child processes hidden.
2024-05-30 15:22:29 +02:00
Whindmar Saksit
dc0ed6de1e
[SHELL32] SHBrowseForFolder must rename using IShellFolder (#6953)
To support renaming My Computer and other non-FS folders, one cannot convert the pidl to a path.

CORE-19622
2024-05-29 16:00:28 +02:00
Katayama Hirofumi MZ
a541a468ba
[NTGDI][FREETYPE] Unload font engine on system shut-down (#6955)
Check system integrity by explicitly
releasing the font engine.
JIRA issue: CORE-9616
- Use RTL_STATIC_LIST_HEAD against
  g_FontListHead and
  g_FontCacheListHead variables and
  omit initialization of them.
- Implement FreeFontSupport function.
- Call FreeFontSupport in win32k!
  DriverUnload function.
- Fix some usages of
  CONTAINING_RECORD macro.
2024-05-29 09:41:39 +09:00
Katayama Hirofumi MZ
817f89466d
[BOOTDATA][IMM32][NTUSER] Follow-up to #6961 (#6962)
JIRA issue: CORE-19320
- Delete "(brain-dead)".
- Fix "despite of" as "despite".
- Use "%S" instead of debugstr_w.
2024-05-29 01:14:52 +09:00
Katayama Hirofumi MZ
c8a3c919e5 [BOOTDATA][IMM32][NTUSER] Set "LoadIMM" to zero
We set "LoadIMM" to zero in order to disable Cicero.
The name of "LoadIMM" is a brain-dead name. This name
means Cicero despite of its name (brain-dead).
They use a human-confusing name intentionally.

JIRA issue: CORE-19320

- Set HKLM\SOFTWARE\Microsoft\Windows NT\
  CurrentVersion\IMM:LoadIMM to 0.
- Add warning comments to the brain-dead name "LoadIMM".
2024-05-28 23:17:22 +09:00
Katayama Hirofumi MZ
4225717dc9 [IMM32][NTUSER] Fix NtUserGetThreadState call of Imm32InquireIme
There was a mistake of parameter value for NtUserGetThreadState
call in Imm32InquireIme function. This affected the logon process.

JIRA issue: CORE-19320

- Replace THREADSTATE_ISWINLOGON2 with THREADSTATE_ISWINLOGON in
  NtUserGetThreadState call in Imm32InquireIme function.
- Rename THREADSTATE_ISWINLOGON2 as THREADSTATE_UNKNOWN_0x10.
- Adapt NtUserGetThreadState to this change.
2024-05-28 23:17:22 +09:00
Katayama Hirofumi MZ
20f1bb4ab8
[WALLPAPERS] Reduce wallpapers (#6947)
We reduce our wallpapers in Release bundle.
Reduce the cost of downloading the release images.
See also: reactos/rapps-db#243
JIRA issue: CORE-19617
- Reduce some wallpapers (7 MB to 253 KB).
- Modify CMakeLists.txt to reduce wallpapers.
- Update ReadMe.txt.
- Add ReadMe.txt to reactos/Web/Wallpaper.
2024-05-28 23:06:15 +09:00
Katayama Hirofumi MZ
522c02f335
[SHELL32] Fix CDefView::OnChangeNotify for My Documents (#6935)
Follow-up to #6916. My Documents change notification was not working
due to this bug.
JIRA issue: CORE-19615
- Use _ILIsSpecialFolder for checking PIDLs.
- Simplify ILIsParentOrSpecialParent helper function.
- Add SFVM_FSNOTIFY, SFVM_QUERYFSNOTIFY, and SFVM_GETNOTIFY
  callback calls.
2024-05-28 23:04:21 +09:00
Whindmar Saksit
47d17f59bf
[SHELL32] Refactor DefView column handling (#5767)
This refactor decouples the previous assumption that the ListView column index is the same thing as the IShellFolder column index. By doing this, support for turning columns on or off becomes possible. The SHCOLSTATE_ONBYDEFAULT and SHCOLSTATE_HIDDEN flags are also respected.

I also fixes the "Arrange icons by" submenu.

CORE-18526
2024-05-28 11:39:00 +02:00
Katayama Hirofumi MZ
1e75ea8a82
[SHELL32] CDefView: Implement SFVM_GETNAMELENGTH callback (#6942)
Implementing missing folder view callbacks...
JIRA issue: CORE-19616
- Call _DoFolderViewCB on LVN_BEGINLABELEDITW message.
- Send EM_SETLIMITTEXT message if the limit was set.
2024-05-28 08:14:36 +09:00
Katayama Hirofumi MZ
38b7a6816c
[SHELL32][BROWSEUI] CDefView: Implement SFVM_ADDPROPERTYPAGES callback (#6944)
Implementing missing folder view callbacks...
JIRA issue: CORE-19616
- Add SFVM_PROPPAGE_DATA structure to "shobjidl.idl".
- Implement CDefView::AddPropertySheetPages by calling
  SFVM_ADDPROPERTYPAGES callback.
- Modify CShellBrowser::DoFolderOptions that uses AddPropertySheetPages.
2024-05-28 08:07:29 +09:00
Katayama Hirofumi MZ
4696996ee2
[SHELL32] brfolder.cpp: Remove pEnumIL member (#6946)
Refactoring. Simplify item insertion code.
JIRA issue: CORE-17340
- Remove pEnumIL member from BrItemData structure.
- Add BrFolder_GetChildrenEnum helper function.
- Remove IEnumIDList* argument from BrFolder_InsertItem and
  BrFolder_Expand functions.
- Add BrFolder_OnOK function and use it.
2024-05-28 08:00:12 +09:00
Katayama Hirofumi MZ
1bc6c90086
[SHELL32] CDefView: Implement SFVM_CANSELECTALL callback (#6945)
Implementing missing folder view callbacks...
JIRA issue: CORE-19616
- Call SFVM_CANSELECTALL callback on FCIDM_SHVIEW_SELECTALL.
- If it returned S_FALSE, then do not select all.
2024-05-27 09:05:44 +09:00
Katayama Hirofumi MZ
cdb970b653
[SHELL32] CDefView: Implement SFVM_COLUMNCLICK callback (#6943)
Implementing missing folder view callbacks...
JIRA issue: CORE-19616
- Call _DoFolderViewCB on LVN_COLUMNCLICK.
- If it returned S_OK, then don't sort items.
2024-05-27 07:35:20 +09:00
Katayama Hirofumi MZ
d56e507e95
[SHELL32] CDefView: Implement SFVM_GETCOMMANDIR callback (#6941)
Implementing missing folder view callbacks...
JIRA issue: CORE-19616
- In CDefView::InvokeContextMenuCommand,
  call SFVM_GETCOMMANDDIR callback and
  store the directory into 
  CMINVOKECOMMANDINFOEX structure.
2024-05-27 07:01:51 +09:00
Jose Carlos Jesus
ef693390ef
[SHELL32] Fix accelerator collision in Portuguese (pt-PT) translation (#6927)
closer to pt-PT 2k3sp2
2024-05-26 21:26:35 +02:00
Katayama Hirofumi MZ
4988de4b1d
[SHELL32] brfolder.cpp: Adopt SHCNRF_NewDelivery method (#6938)
New delivery method is better than old method
in performance. Now deletion notification
partially works.
JIRA issue: CORE-17340
- Specify (SHCNRF_ShellLevel |
  SHCNRF_NewDelivery).
- Rewrite BrFolder_OnChange function and
  add BrFolder_OnChangeEx helper function.
2024-05-26 04:58:30 +09:00
Katayama Hirofumi MZ
70e8653f23
[SHELL32] IDD_BROWSE_FOR_FOLDER: Use IDOK for 1, IDCANCEL for 2 (#6937)
Follow-up to #6934. Don't use magic numbers.
JIRA issue: N/A
Use IDOK and IDCANCEL instead of 1 and 2.
2024-05-25 17:28:59 +09:00
Katayama Hirofumi MZ
61fe74030b
[SHELL32] Reorder IDD_BROWSE_FOR_FOLDER dialog items (#6934)
By correctly ordering the items of the dialog, the dialog can use auto focus.
JIRA issue: N/A
- Change the ordering of IDD_BROWSE_FOR_FOLDER dialog items.
- Remove SetFocus call.
2024-05-25 16:45:06 +09:00