Commit graph

3011 commits

Author SHA1 Message Date
Whindmar Saksit
d5f6b8c50b
[SHELL32] Implement the Select verb in CommDlgBrowser (#7225)
- Use Select instead of Open default menu item.
- Support CDB2GVF_NOSELECTVERB, CDB2GVF_NOINCLUDEITEM and CDB2GVF_SHOWALLFILES flags.
2024-08-15 18:40:32 +02:00
Serge Gautherie
7d532f8792 [SOUND] mmebuddy_debug.h: Match WCHAR type 2024-08-15 17:50:12 +02:00
Serge Gautherie
b30fde3797 [SOUND] mmebuddy_debug.h: Sort out macro inclusions
- POPUP() is used on DBG only.
- SND_ERR() and SND_ASSERT() are wanted even when defined(NDEBUG).
- Add a FIXME as !defined(NDEBUG) code compilation remains broken.

Follow-up of c7a4984 (0.4.15-dev-8414).
2024-08-15 17:50:12 +02:00
Katayama Hirofumi MZ
7ede534910
[SHDOCVW][SDK] Support Favorites bar Part 2 (#7223)
Implement Favorites bar.
JIRA issue: CORE-19686
- Introduce CNSCBand class to commonize
  some code of CFavBand and CExplorerBand
  classes.
- Implement Favorites bar.
- Fix IBandNavigate and INamespaceProxy
  interfaces.
2024-08-14 12:00:47 +09:00
Hermès Bélusca-Maïto
50986d8470
[SDK] commctrl.h: Add missing Vista+ TTI_(INFO|WARNING|ERROR)_LARGE defines 2024-08-11 17:54:05 +02:00
Serge Gautherie
ea291af409
[MMEBUDDY][MMENT4][SNDBLST] Add missing \n to SND_*() calls (#7224) 2024-08-09 20:50:51 +02:00
Whindmar Saksit
ea60890961
[NETSHELL][SHELL32] Make NetShell PIDL format more Windows compatible (#7183)
- The PIDL format needs to be Windows compatible so that wlanwiz can get the connection GUID.
- SHELL32::ILIsEqual cannot deem PIDL formats it does not understand as invalid.
- DefView must ask the folder when comparing PIDLs.
2024-08-08 22:00:03 +02:00
Whindmar Saksit
724b20d414
[SHELL32] Don't add the file to the parameters if the registry command did not ask for a file (#7139)
Bugs fixed:
 - fDefault detection of default verb is flawed because it checks the ici struct after conversion instead of the source sei struct.
 - The command to execute should not have the filename appended just because %1 nor %L did not appear in the registry command template.
2024-08-08 19:30:14 +02:00
Katayama Hirofumi MZ
960a305e5c
[BROWSEUI][SHDOCVW] Move CExplorerBand to shdocvw (#7163)
CExplorerBand should be
implemented in shdocvw.dll.
894ad4f17d/modules/rostests/apitests/com/shdocvw.c (L37)
JIRA issue: CORE-19698
- Move CExplorerBand code
  from browseui to shdocvw.
- Delete IDS_FOLDERSLABEL
  resource string from browseui.
- Add IDS_FOLDERSLABEL
  resource string to shdocvw.
- Adapt code to these changes.
- Add sdk/include/reactos/
 shdocvw_undoc.h.
- Implement IEILIsEqual function.
2024-08-02 04:12:02 +09:00
Katayama Hirofumi MZ
dcf0788f59
[IMM32][SDK][USER32] Fix ImmFreeLayout parameter (#7195)
JIRA issue: CORE-19268
- Define ImmFreeLayout parameter special
  values (HKL_SWITCH_TO_NON_IME and
  HKL_RELEASE_IME) at <imm32_undoc.h>.
- Make ImmFreeLayout parameter an HKL.
2024-07-30 11:45:23 +09:00
Katayama Hirofumi MZ
7dd081e945
[SDK][NTUSER] s/KLF_UNLOAD/KL_UNLOAD/ (#7196)
JIRA issue: CORE-19268
- Rename KLF_UNLOAD as KL_UNLOAD.
- Move it from win32ss/user/ntuser/input.h
  to sdk/include/reactos/undocuser.h.
- Add UKL_NOACTIVATENEXT constant
  and use it.
2024-07-29 19:30:49 +09:00
Whindmar Saksit
d5aca44042
[SHELL32] Forward CDefaultContextMenu::InvokeCommand parameters to ShellExecute (#7172) 2024-07-23 18:58:02 +02:00
Katayama Hirofumi MZ
39077a7bf0
[BROWSEUI][SHDOCVW][SDK] Fix INamespaceProxy interface (#7156)
Use correct interface definition for standardization.
JIRA issue: CORE-19686
Use INamespaceProxy interface
that is documented in the
Microsoft official site
( https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/ee318424%28v=vs.85%29 )
and Windows 10 PSDK
(see um/ienamespacecontrol.idl file).
2024-07-20 19:59:48 +09:00
Serge Gautherie
c7a4984595
[MMEBUDDY][MMIXER] Fix NDEBUG support (#7039)
- Remove unwanted value.
- Use add_compile_definitions().
- NDEBUG "depends" on DBG.
2024-07-20 12:05:56 +02:00
Whindmar Saksit
802dc9714b
[SHELL32][SHLWAPI][BROWSEUI][EXPLORER] Save folder view state (#7127)
Saves/restores the Listview icon mode, columns and sort info per-folder.
2024-07-19 14:40:20 +02:00
Whindmar Saksit
39305cc79c
[SDK][MC] errcodes.mc: Added more COM error messages (#7142) 2024-07-16 21:52:23 +02:00
Eric Kohl
36bf934fbe [NDK][REGEDIT][ROSTESTS:ACPI] Make IO_RESOURCE_REQUIREMENTS_LIST accessible to user mode code
- Copy IO_RESOURCE_REQUIREMENTS_LIST to the NDK.
- Remove local copies of IO_RESOURCE_REQUIREMENTS_LIST
2024-07-14 14:31:41 +02:00
Whindmar Saksit
5b78381a53
[BROWSEUI][SHELL32] Implement BrowseObject flags (#7086)
* [BROWSEUI][SHELL32] Implement BrowseObject flags

Respect CABINETSTATE::fNewWindowMode if no other flags are relevant
2024-07-09 20:00:54 +02:00
Raúl Gutiérrez
d4433ee0c9
[SDK][INCLUDE] Don't navigate over size grip control with keyboard (#6914)
Add WS_GROUP style to the size grip to avoid the keyboard selection stuck.

Fixes keyboard navigation bug in the "Move to..." & "Copy to..." dialogs
that was making the button lose selection focus. CORE-19585
2024-07-09 15:34:37 +03:00
Timo Kreuzer
fcbccaa194 [GCC-COMPAT] Add support library for GCC's libsupc++ and libstdc++
__throw_out_of_range_fmt is implemented in libstdc++, but it is needed by libsupc++ and that would mean we would have to link all C++ code to libstdc++.
2024-07-09 12:01:24 +02:00
Timo Kreuzer
486a20dbc4 [CMAKE] Add imported library winpthread 2024-07-09 12:01:24 +02:00
Timo Kreuzer
6291c5325a [CMAKE] Some compiler flags for GCC 13 2024-07-09 12:01:24 +02:00
Timo Kreuzer
43dad82fcd
[RTL] Sync actctx.c to wine-5.18 (#6848)
* [WINESYNC] ntdll: Add support for parsing application settings in manifests.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fc14442970dc6b97032c3cdd76cab33d774dc1a2 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Implement RtlQueryActivationContextApplicationSettings.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 14b9a5af0b44d7e2ca5232ad810c77e561d5d30c by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Propagate the error through the XML buffer in manifest parser.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7b871727e5cbb8581167acbaae2f4e34dc4ee59e by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Check the namespace in RtlQueryActivationContextApplicationSettings.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e46259fb823f55aa331381fe56916d20049d52f2 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use the ARRAY_SIZE() macro.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 10f23ddb58b0583c8bce99e59d879c653b389363 by Michael Stefaniuc <mstefani@winehq.org>

* [WINESYNC] ntdll/actctx: Don't stop looking for manifest if dll without manifest is found.

Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 56b3304a019486b52681a05d4b5454b475275e51 by Fabian Maurer <dark.shadow4@web.de>

* [WINESYNC] ntdll: Use the current platform as processorArchitecture instead of a wildcard.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6abf99b4803003812d4fcf7bf9effc99030cbec9 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use strncmpiW instead of memicmpW for strings without embedded nulls.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6fc259a57dafab9e72af13980c021e2a59257935 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Avoid dead initialization (scan-build).

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6ea282c7e1abd7ab09a5f0a18a437e63f909da96 by Alex Henrie <alexhenrie24@gmail.com>

* [NDK] Add RtlUTF8ToUnicodeN for user mode

* [WINESYNC] ntdll: Use the Rtl UTF8 conversion functions.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f46fa9c92d08c6e656bc22b94e09aa9dbe7d3be9 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use module path as assembly path for manifests embedded in resources.

Fixes Office 2016 installer, which removes its .exe directory from load
path, but expects to be able to load files listed in manifest.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2d764e90dd2c624f7a2d863ab29bd418ed33d252 by Jacek Caban <jacek@codeweavers.com>

* [WINESYNC] ntdll: Store the default process activation context into the PEB.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e95d0813fdfcfcac2bb1761e62e1d54e6f73cd6d by Gabriel Ivăncescu <gabrielopcode@gmail.com>

* [WINESYNC] ntdll: Use wcsicmp() instead of strcmpiW() where possible.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3e049b6b962b8e6f048101b9910c09d5b1d8f167 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcsnicmp() instead of strncmpiW() where possible.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f831b3bd3d6b013893be7645df3a9cd05289c415 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use RtlEqualUnicodeString() instead of strcmpiW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4d93bafe961ed53488ff0fb4b44cb1ad085531fe by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Avoid using memchrW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 186f189107972b739311f95a4ba3833838349b32 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Avoid using atoiW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8f3d869d784753d814a3493d01c3650f45389eda by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Avoid using sprintfW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id eb1b2e548656dc3d08cbf3c35454621491b84126 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcscpy() instead of strcpyW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 18411a19b4ea3a68234980c56d4c252670dfc000 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcscat() instead of strcatW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 80005ee016aeed42967adfe5b3042803d008c50d by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcschr() instead of strchrW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6de0ab276b3b79db4331993316f529a43f67c29a by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcsrchr() instead of strrchrW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 285c5490a4c0ee4a92d042a3e6ab32e6bc14fb49 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcslen() instead of strlenW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e003b9884edcccc417d41d30073b312648741aaa by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcscmp() instead of strcmpW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4501ab0a7c80e31e602c540a446809e8ae3ebade by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcsncmp() instead of strncmpW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e36b97e1d0644f90606d27f5104bb09a910540d2 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Make the windows directory a global variable.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ca13f489e18fb1f7944e3bdcfdfc4a810bf80994 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use single field for misc flags in ComClass redirection section.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 72d055854b59db9059a3465f1e65247c0cc5e94e by Nikolay Sivov <nsivov@codeweavers.com>

* [WINESYNC] ntdll: Create class section for proxy-stub interface entries.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id dd9295b415345f2b686b65bd05fae0320cf6dc39 by Nikolay Sivov <nsivov@codeweavers.com>

* [WINESYNC] ntdll: Use the standard C library names for the printf functions.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4478ba258e45559ac97353ab27951e84dd9865c1 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Implement RtlActivateActivationContextEx().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c71da19d24a5d6f01e65b3b3691a9d7dd17a2278 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Fix a memory leak (Valgrind).

Signed-off-by: Chao Long <longchao@uniontech.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d0946955ec21e4da57aaec92459f81f131b27a49 by Chao Long <longchao@uniontech.com>

* [WINESYNC] rtl is now in sync with wine-staging wine-5.18

---------

Co-authored-by: winesync <ros-dev@reactos.org>
Co-authored-by: winesync <rosdev@reactos.org>
2024-07-09 11:35:41 +03:00
Doug Lyons
7983297bd6
[RTL] Avoid some corner case ASSERT's in heap.c and fix heap allocations larger than MAXUSHORT. (#5750)
CORE-18196

With most code copied from Thomas Faber's PR #4915 as follows:
[RTL] Correctly initialize segments larger than MAXUSHORT.
GuardEntry->PreviousSize would overflow in this case.
RtlpInsertFreeBlock already handles this correctly by creating multiple free entries.
So we just let it return the last entry and use that for the PreviousSize.

This does not include all of the ASSERT's in PR #4915.
2024-07-08 23:09:34 -05:00
Whindmar Saksit
71a3be2497
[SHELL32][EXPLORER][SHLWAPI][SDK] Implement SHGetSetSettings (#6982)
These settings are cached per-process (and invalidated by the global counter). This should reduce the number of registry reads performed by DefView and CFSFolder.
2024-07-05 20:35:45 +02:00
Hermès Bélusca-Maïto
2cdd5eca7b
[PSDK] ntdddisk.h, winioctl.h: Improve/sync partition types and Is[FT|Recognized]Partition() macros (#7033)
- Synchronize PARTITION_*** definitions between ntdddisk.h and winioctl.h

- Make IsFTPartition() macro definition more accurate with Win2003/Vista+
  WDK definition. In particular, partition types that would conflict with
  3rd-party ones are not present in this macro. (See comment in header
  for more details.)
  Simplify also its definition by factoring the common
    ((PartitionType) & PARTITION_NTFT)
  piece.

- It can be recognized, in all DDK/WDK versions, that the first part of
  the IsRecognizedPartition() macro definition is basically the definition
  of IsFTPartition(). So, take this opportunity to simplify the definition
  of IsRecognizedPartition() accordingly without losing any functionality.
2024-06-24 16:29:13 +02:00
Whindmar Saksit
674136bcd0
[BROWSEUI] Save/Restore ShellBrowser bar states (#7035)
Save/Restore the state of the ShellBrowser toolbar/addressbar/statusbar.

Windows shares the state of the Go button and the locked state between Explorer and Internet Explorer but the bar states are not shared.

Notes:
- Seems to fix CORE-17236.
- The stream layout does not match Windows so it uses a different name. The toolbar customize dialog needs to be fixed before it makes sense trying to save the toolbar state and the layout of other bands.

CORE-17236
2024-06-21 19:17:13 +02:00
Hermès Bélusca-Maïto
6aed3b5117
[PSDK] ntdddisk.h: Add missing global parentheses around IsFTPartition() definition
CORE-16499

Addendum to commit 0a0e6a9f0 that introduced the problem.

Thanks to Hervé Poussineau for having caught it.

Fixes logic errors, and resulting compilation warnings/errors with GCC
in situations like the following one:
```c
if ((PartitionInfo.PartitionStyle == PARTITION_STYLE_MBR) &&
    IsFTPartition(PartitionInfo.Mbr.PartitionType))
{ ... }
```
error: suggest parentheses around '&&' within '||' [-Werror=parentheses]
 if ((PartitionInfo.PartitionStyle == PARTITION_STYLE_MBR) &&
cc1: all warnings being treated as errors
2024-06-17 17:18:18 +02:00
Hermès Bélusca-Maïto
50271949e7
[PSDK] winioctl.h fixes; make ntddvol.h winioctl.h-compatible (#7010)
winioctl.h:
- Re-organize definitions according to the
  NT DDK headers they have been taken from.
- Add missing include guards to some definitions.
- Add missing IsFTPartition() macro.
- Add missing volume definitions.

ntddvol.h:
- Guard definitions duplicated in winioctl.h.
- Add missing NTDDI_VERSION checks.
  Note: IOCTL_VOLUME_POST_ONLINE is Win8+.
2024-06-13 19:53:23 +02:00
Hermès Bélusca-Maïto
ed27d733f7
[MOUNTMGR][DDK] Fix some IOCTLs definitions to Win2k3+ compatibility (#6959)
Fix IOCTL_MOUNTDEV_LINK_CREATED, IOCTL_MOUNTDEV_LINK_DELETED,
IOCTL_MOUNTDEV_UNIQUE_ID_CHANGE_NOTIFY, to Win2k3+ compatible definitions.
The previous versions of these IOCTLs (in Win2000 and XP) were defined without any access protection.

This was noticed here:
https://community.osr.com/t/ioctl-mountdev-link-created-definition-changed/29428
2024-06-12 12:31:32 +02:00
Hermès Bélusca-Maïto
7930bed0a1
[MPR][MOUNTMGR][DDK] Remove unused wine-specific code (#6958)
Usage of these in MPR was already inside #ifndef __REACTOS__ block,
so, "This Is Fine".
2024-06-12 12:29:22 +02:00
Hermès Bélusca-Maïto
e47d08fc5a
[DDK] mountdev.h, mountmgr.h: Minor cleanup (#6957)
- Add missing file info headers.
- Make the headers C++ friendly.
2024-06-12 12:28:50 +02:00
Justin Miller
bc6c731db3
[KERNEL32_VISTA][SDK] Move SRW definitions to NDK (#6806)
Move SRW and condition variable definitions out of kernel32_vista and into the NDK.

Essentially grabbed from PR #1190
Trying to reduce diff needed for Rtl/ntdll sync.
2024-06-11 22:03:57 +02:00
Hermès Bélusca-Maïto
0b366ea122
[CMAKE][REACTOS] Introduce a utf16le_convert() cmake helper (#6904)
Used when we convert files to UTF16-LE during our build process.
Removes duplicated code.
2024-06-10 21:23:12 +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
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
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
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
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
Ratin Gao
ce0460b131
[CMAKE] Update sdk/cmake/baseaddress[_msvc].cmake (#6869)
Fix system boot crash with `STATUS_ILLEGAL_DLL_RELOCATION` when compiled with `-DDLL_EXPORT_VERSION=0x600`
2024-05-24 16:10:05 -07:00
Katayama Hirofumi MZ
53518bbab3
[SHLWAPI][SHLWAPI_APITEST][SDK] Implement IShellFolder_GetDisplayNameOf (#6918)
This export function is needed to implement
shell32!SHGetRealIDL function correctly.
JIRA issue: CORE-19278
- Implement IShellFolder_GetDisplayNameOf
  function (This function is not inline function in
  this case) with retry data.
- Add SFGDNO_RETRYALWAYS flag to
  <shlwapi_undoc.h>.
- Add IShellFolderHelpers testcase.
2024-05-23 22:57:31 +09:00
George Bișoc
0b97a997d2
[DDK] Add the GUID_DEVICE_FAN identifier
This identifier will be used to regiser incoming ACPI fans with the I/O PnP manager from the ACPI driver.
2024-05-22 20:22:56 +02:00
Timo Kreuzer
60f4493a68 [SPEC2DEF] Implement support for import symbol aliases 2024-05-22 17:55:38 +02:00
Oleg Dubinskiy
09965760e0 [MMIXER] Remove duplicated MIXERCONTROL_CONTROLTYPE_MUX handling
Don't check for KSNOTETYPE_MUX and don't return MIXERCONTROL_CONTROLTYPE_MUX twice.
2024-05-19 10:46:02 +02:00
Katayama Hirofumi MZ
6c2d1c31dd
[SHLWAPI][SDK] Add IShellFolder_... helper functions (#6893)
Implementing missing features...
JIRA issue: CORE-19278
- Implement IShellFolder_GetDisplayNameOf,
  IShellFolder_ParseDisplayName, and
  IShellFolder_CompareIDs functions.
- Add them to <shlwapi_undoc.h>.
- Modify shlwapi.spec.
- Add some SHCIDS_... macros into shobjidl.idl.
- Provide a macro option
  SHLWAPI_ISHELLFOLDER_HELPERS to
  avoid conflict with <shobjidl.h>
  IShellFolder_... inline functions. Ugly hack
  but effective!
2024-05-18 21:33:33 +09:00
Maj Soklic
f22704ad4f [CRT] Fix ARM64 VS2022 debug build (#6899)
__globallocalestatus is missing on VS2022/ARM64 just like on Clang-cl.

Addendum to 861360c65f. CORE-14042 CORE-18200
2024-05-17 12:06:17 +03:00
Katayama Hirofumi MZ
3285f698fd
[SHELL32][SDK] SHChangeNotify: Re-work Part 1 (#6898)
Making shell change notification implementation better.
Now recycle bin icon change is working.
JIRA issue: CORE-13950
JIRA issue: CORE-19591
JIRA issue: CORE-11453
- Delete SHSimpleIDListFromPathA/W hacks.
- Translate simple PIDLs (coming from SHSimpleIDListFromPathA/W)
  in CDefView::OnChangeNotify method.
- Add CDefView::LV_RefreshIcons method for SHCNE_UPDATEIMAGE
  change event.
- Rename CDefView::LV_ProdItem method as CDefView::LV_UpdateItem.
- Call SHUpdateRecycleBinIcon in SHFileOperationW function.
- Half-implement SHUpdateRecycleBinIcon.
- Call SHChangeNotify in DeleteExt function.
2024-05-17 08:10:15 +09:00