Commit graph

85956 commits

Author SHA1 Message Date
Tomáš Veselý
fd327db20f
[NTUSER] IntSetTimer: Update HintIndex on each call (#7087)
* fix CORE-9141 - adding a change to IDEvent after each pass
If the first index is 0 the first returned ID will be 0x8000, which is fine.
Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2024-08-27 01:14:51 -05:00
Tomáš Veselý
938adaad22
[WIN32KNT_APITEST] Add NtUserSetTimer API tests (#7100)
Test 1 - test of creating/canceling 20 timers and comparing the raw number of returned messages - without parent window
Test 2 - test of creating/cancelling 20 timers and comparing the raw number of returned messages - with parent window
Test 3 - test creation/cancellation of 40000 timers - without parent window
Test 4 - test of creation/cancellation of 40000 timers - with parent window
Test 5 - test creation/cancellation of 2 timers and compare their index to see if they differ - without parent window

Covers the case in CORE-9141 (see #7087).
2024-08-26 22:34:30 +03:00
Hermès Bélusca-Maïto
6f15802af7
[SETUPLIB][REACTOS][USETUP] Split FS-volume-specific functionality from partitions (#7258)
CORE-13525

This greatly helps in reducing code complexity in some areas: code that
previously iterated over all partitions of a given disk, just to find
which ones were partitioned and contained a valid file system, now just
have to iterate over mounted volumes.
See in particular, `lib/utils/osdetect.c` and `lib/fsutil.c` .

- Remove FORMATSTATE "Preformatted" enum value;
- Cleanup osdetect code after introducing Volume support;
- Some simplifications for FormatState.

- Differentiate between 'new' partition and 'new' volume:

  * "New" partition: it has been created and added in the cached list,
    but not yet actually written into the disk.

  * "New" volume: newly-created volume (may be backed by a partition or
    not), not yet formatted. May exist on either new, or not new partition,
    or elsewhere.

- Cache partition and volume NT device names.

  These do not change across repartitioning operations, as long as the
  partition or the filesystem volume hasn't been deleted/recreated.
  This avoids doing \Device\Harddisk%u\Partition%u sprintf's everytime
  we need to retrieve the given partition or volume device name.

  When a partition/fileysystem volume is "virtually" created (i.e. in
  the partition list, but not yet committed to disk and exposed to the
  OS), no device partition number and device name are available yet.
  In particular, validate that no manipulation of \Device\HarddiskM\Partition0
  (i.e. the whole disk) is being made.
2024-08-26 16:42:47 +02:00
Hermès Bélusca-Maïto
0f8dc6b2df
[SETUPLIB] Add some device utility functions; to be used later (#7258) 2024-08-26 16:42:46 +02:00
Oleg Dubinskiy
c59e2d20d9 [NTOS:FSRTL] Check for the correct return status when inserting a new Filter Context entry
According to our declaration/definition, IoChangeFileObjectFilerContext returns NTSTATUS, not BOOLEAN. Zero return (which was actually checked before) for BOOLEAN means failure, but for NTSTATUS it's success. So it should (and now actually does) free and fail appropriately only in failure case, but not in success, when it shouldn't.
This fixes most of problems with fltmgr.sys driver from Windows XP/Server 2003 and a lot of 3rd party filter drivers which use it from many apps (Avast Free Antivirus all versions, Avira AntiVir Personal 8.2, Dr. Web Security Space 8.0, Kaspersky Antivirus 2012 etc. etc.).
CORE-14157, CORE-14635, CORE-19318
2024-08-26 11:16:49 +02:00
Timo Kreuzer
c948ea859b [CMD] Convert to explicitly unicode 2024-08-25 16:17:17 +03:00
Whindmar Saksit
cca9acfa1d
[SHELL32] Create link must ask for a parsing name for file targets (#7267) 2024-08-24 19:01:27 +02:00
Joachim Henze
5506a8e170
[MSPAINT] it-IT.rc: Fix compiler warning (#7270)
GCC8.4.0dbg warns about:
C:/ros/reactos/base/applications/mspaint/lang/it-IT.rc:267: unrecognized escape sequence

Fix that.

the regression was introduced by
0.4.15-dev-8555-g fbcbbd8768 from (#7248)
2024-08-24 06:04:48 +02:00
Whindmar Saksit
29c8dc82f6
[SHDOCVW] CNSCBand must specify a ShowWindow command (#7268) 2024-08-24 02:45:19 +02:00
Joachim Henze
ec653caf54
[REGEDIT] *.rc: Strip useless WS_VISIBLE STYLE from dlgs (#7251)
360 matches, exactly 12 matches for each language, 30 languages.

This will not shrink the binary, it just shortens some long lines within the rc-sources.
2024-08-23 21:05:06 +02:00
Whindmar Saksit
0e0f99744f
[RAPPS] Refreshing the Installed list should restore the selected item (#5676) 2024-08-22 23:21:59 +02:00
Whindmar Saksit
3b73d62eaa
[SHELL32] Pass correct lParam to DFM_INVOKECOMMAND (#6765) 2024-08-22 21:04:48 +02:00
Hermès Bélusca-Maïto
ea5728b5f3
[SETUPLIB] SetupCreateDirectory(): Don't assume the form of the directory prefix (#7257)
Addendum to commit 32e6eed760 (r63715)
CORE-5982

The function assumed that the directory path name to be created
always starts with a harddisk-partition root device name of the form:

  \Device\HarddiskX\PartitionY\

Indeed, it can be (when using the volume manager) of the form:

  \Device\HarddiskVolumeN\

and could even have a different format if trying to install ReactOS
on an external removable drive or other weird device.

Since the format of this prefix is not 100% always the same,
a different way to create the sub-directories is needed.
The nested-directory creation algorithm is changed as follows:

Suppose that the directory to be created is:

  \Device\HarddiskVolume1\ReactOS\system32\drivers

The function first loops backwards each path component in order
to find the deepest existing sub-directory: it will try to verify
whether each of the following sub-directories exist, successively:

  \Device\HarddiskVolume1\ReactOS\system32\drivers
  \Device\HarddiskVolume1\ReactOS\system32\
  \Device\HarddiskVolume1\ReactOS\
  \Device\HarddiskVolume1\

(Notice the trailing path separators kept in this step.)
In principle, this root device FS directory must exist (since the
volume has been formatted previously). Once found, the function will
then create each of the sub-directories in turn:

  \Device\HarddiskVolume1\ReactOS
  \Device\HarddiskVolume1\ReactOS\system32
  \Device\HarddiskVolume1\ReactOS\system32\drivers

----

An alternative to the fix could be to always specify the root device
name in a separate parameter, but this hasn't been pursued here so as
to not modify all the callers of this function.
2024-08-22 20:40:35 +02:00
Hermès Bélusca-Maïto
00ddae49d5
[SETUPLIB] SetupCreateSingleDirectory(): Remove '\.' trailing sequence handling hack
It was introduced in commit 703eb5e8c9 (r7756) in order to hack around
the "dot"-path added in the reactos.dff generator file by the earlier
commit 3bd689f185 (r7269).
Its aim was to describe the installation directory itself, instead of
one of its sub-directories.

That _invalid_ "dot"-path was removed later by commit 027e2bfa3a (r15423);
however the '\.' hack stayed for quite a while in our code.

The correct way to describe the installation directory itself is to use
instead "\", compatible with Windows' setup, as was originally done in
txtsetup.sif, and fixed in reactos.dff(.in) in commit 97bb83fcd9 (r66604).
2024-08-22 20:40:34 +02:00
Whindmar Saksit
d009de44ad
[SHELL32] CDefaultContextMenu must forward the .lnk path (#7264)
Forward the .lnk path (if any) so consrv gets STARTF_TITLEISLINKNAME and can apply console properties and icon from the shortcut.
2024-08-22 14:34:22 +02:00
Serge Gautherie
44662eaf62 [CMAKE] Use COMPILE_OPTIONS instead of superseded COMPILE_FLAGS
for set_source_files_properties().
2024-08-21 11:34:48 +03:00
Gabriele Lo Re
fbcbbd8768
[TRANSLATION] Improve Italian (it-IT) translation part 2 (#7248) 2024-08-21 01:29:34 +02:00
Timo Kreuzer
7765ff89ff [CRT] Fix prototype of _Strftime 2024-08-20 13:47:10 +03:00
Andrei Miloiu
fd1a48d497
[RAPPS] Improve Romanian (ro-RO) translation (#6858) 2024-08-19 23:54:05 +02:00
Doug Lyons
24517d5258
[DESK] Fix 3dtext screensaver restart after opening settings (#7213) 2024-08-18 20:09:47 -05:00
Whindmar Saksit
e639d7c1e7
[SHELL32] Handle SHCreateShellFolderViewEx callback function (#7240)
The caller supplied callback function is wrapped in a IShellFolderViewCB so we can use (the newer) SHCreateShellFolderView.
2024-08-19 00:34:05 +02:00
Whindmar Saksit
53e930e97f
[SHLWAPI] SHInvokeCommandOnContextMenu[Ex] and SHInvokeCommandWithFlagsAndSite (#7228) 2024-08-19 00:32:46 +02:00
Andrei Miloiu
e83ec236fa
[NETCFGX] Improve Romanian (ro-RO) translation (#6863) 2024-08-19 00:03:18 +02:00
Andrei Miloiu
0b5d8a0045
[CLIPBRD] Update Romanian (ro-RO) translation (#7252) 2024-08-18 23:33:41 +02:00
Andrei Miloiu
02989eae41
[MATRIX] Improve Romanian (ro-RO) translation (#7253) 2024-08-18 23:21:17 +02:00
Joachim Henze
d34b058d26 [COMCTL32] pt-PT: Those 2 buttons shall not have an accel 2024-08-18 06:40:41 +02:00
Joachim Henze
275c128f30 [COMDLG32] ro-RO: Addendum to last 2 commits 2024-08-18 02:53:52 +02:00
Joachim Henze
4b4a6b3b90 [COMCTL32] *.rc: trivial improvements and added FIXMEs 2024-08-18 02:50:13 +02:00
George Bișoc
95b1893b27
[COMDL32] Fix build
Fix the wrong usage of CONTROL resource control, introduced by 1a9af23
2024-08-18 00:10:28 +02:00
Andrei Miloiu
31267a97da
[REGEDIT] Update Romanian (ro-RO) translation (#7246) 2024-08-17 23:45:18 +02:00
Andrei Miloiu
1a9af2334c
[COMDLG32] Update Romanian (ro-RO) translation (#6816) 2024-08-17 23:43:39 +02:00
Andrei Miloiu
68c678e1c0
[INTL] Update Romanian (ro-RO) translation (#6757) 2024-08-17 23:34:38 +02:00
Vitaly Orekhov
4e03eaeb02
[PSDK] Add 'Network Connections' CLSID (#7249)
This will be used soon by the WLAN WIZARD
dll/shellext/wlanwiz
2024-08-17 11:25:19 +02:00
Andrei Miloiu
c2b295fdce
[WINMM] Update Romanian (ro-RO) translation (#6830) 2024-08-16 21:44:30 +02:00
Andrei Miloiu
67ed91acbf
[SYSDM] Update Romanian (ro-RO) translation (#6838) 2024-08-16 21:41:57 +02:00
Andrei Miloiu
cde8eddaaa
[NETID] Update Romanian (ro-RO) translation (#6839) 2024-08-16 21:38:08 +02:00
Andrei Miloiu
9aed201c2f
[SHDOCLC] Update Romanian (ro-RO) translation (#6873) 2024-08-16 21:34:41 +02:00
Andrei Miloiu
f43c4680cf
[TAPIUI] Improve Romanian (ro-RO) translation (#6857) 2024-08-16 21:31:16 +02:00
Andrei Miloiu
be1121d9cc
[MODEMUI] Update Romanian (ro-RO) translation (#6775) 2024-08-16 21:29:08 +02:00
Joachim Henze
6e86daa703
[REGEDIT] *.rc: Dedupe ID_HELP_HELPTOPICS & ID_HELP_ABOUT (#7198)
ID_HELP_HELPTOPICS & ID_HELP_ABOUT are statusbar helptexts, and they do exist
twice for no good reason since 10+ years. Dedupe that.

Also add a few missing accelerators for it-IT.rc

Also strip the trailing dots for some languages for the statusbar helptexts (5 langs: ja-JP,tr-TR,zh-*)
Vast majority of languages did not have them at all (24 languages).
Also en-US was such a good role-model.

Some had it just for some of those texts, but for others not (e.g. pt-PT). Inconsistent.

All statusbar helptexts are within those exact 3 STRINGTABLEs now.
2024-08-16 18:37:23 +02:00
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
Whindmar Saksit
82a45262bf
[NTUSER] Correctly store original unsnap position (#7244)
A small change before PR #5705 was merged caused a severe downgrade in the snap/unsnap handling. Win key handling should work correctly now.

CORE-19165 CORE-19166
2024-08-15 12:33:17 +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
Whindmar Saksit
1061e7f7db
[BROWSEUI] Don't access callers invalid PIDL during browse (#7242)
The interaction between the shell browser and its address bar causes the browser to read from a freed PIDL, sometimes causing a crash.

CORE-19697
2024-08-13 20:57:58 +02:00
George Bișoc
07a76b3dec
[STOBJECT] Do not report the remaining battery capacity if it is unknown
Support for system batteries in ReactOS is really minimal to the point of non-existing. We are detecting the presence of any upcoming battery but since there's lacking in critical code that deals with communication
between PO and the battery class driver as the battery systray icon uses GetSystemPowerStatus to gather battery info which in turn inquires the power manager via NtPowerInformation(SystemBatteryState), we have
to report to the user that the remaining capacity is unknown rather than returning a pseudo capacity value.

Technically this so called "pesudo" value is just a construct denoted as BATTERY_PERCENTAGE_UNKNOWN. Not reporting the actual remaining capacity makes sense, as there could be a scenario where the battery may not
properly report its real datum, therefore it's best to be honest to the user what's really going on.

CORE-19452
CORE-18969
2024-08-13 14:17:04 +02:00
Hermès Bélusca-Maïto
fae7c0f70e
[SETUP:REACTOS] Fix advanced installation options dialog style. 2024-08-13 13:30:58 +02:00
Serge Gautherie
6756c2ad03 [*_VISTA] Add/Improve version resources 2024-08-13 12:39:42 +02:00
Katayama Hirofumi MZ
ec38a8637a [SHIMGVW] Improve Japanese (ja-JP) translation
CORE-18706
2024-08-13 17:04:02 +09:00