Commit graph

85685 commits

Author SHA1 Message Date
Katayama Hirofumi MZ
1ffce3eb6d
[CMD][CMDUTILS][REPLACE] Make 'replace' command external (#7097)
JIRA issue: CORE-9444
- Delete 'replace' internal command.
- Add 'replace' external command into
  base/applications/cmdutils/replace
  folder.
- Add control break handler.
2024-07-09 04:30:43 +09:00
Katayama Hirofumi MZ
3dcae2ce0c
[CMD] Support dynamic trace (#7093)
Based on Hans Harder's patch.
Realize tracing cmd on console
output.
JIRA issue: CORE-6669
- Add FEATURE_DYNAMIC_TRACE
  feature.
- Add CmdTrace function.
- Re-define FIXME, ERR, WARN,
  and TRACE macros.
- Check CMDTRACE environment
  variable. If it was "ON", then enable
  dynamic trace.
2024-07-09 04:25:30 +09:00
Katayama Hirofumi MZ
6c74e69d12
[NTUSER][USER32] Populate dwExpWinVer (#7095)
This value is needed for
SetWindowPlacement and IMM.
JIRA issue: CORE-19675
JIRA issue: CORE-19268
- Add RtlGetExpWinVer function
  into win32ss/user/rtl/image.c.
- Add RtlGetExpWinVer prototype
  into win32ss/include/ntuser.h.
- Delete RtlGetExpWinVer
  definition in
  win32ss/user/user32/windows/window.c.
- Populate THREADINFO.dwExpWinVer
  and CLIENTINFO.dwExpWinVer
  by using RtlGetExpWinVer in
  InitThreadCallback function.
2024-07-09 04:22:14 +09:00
Tomáš Veselý
a9bdd62d84
[GDI32] SetBkMode: Avoid invalid input. CORE-19656 (#7089)
Fixes a bug in Midori 0.5.11 installer which caused bad rendering
that was making the text hard to read (no background).
In Windows it's visible as FillRect(0x89011a1f, 0x0019f87c, 0xabababab),
and in ReactOS as SetBkMode(0xb5010fce, -1546139919).

After a number of attempts to get the same behavior, I haven't found a way
to fix it without a hack to make the installer look identical to Windows.

At least I added handling for the incorrect value in SetBkMode.
This shouldn't matter anywhere. It may not look the same as on Windows,
but the text will at least be readable.
2024-07-08 21:34:36 +03:00
Whindmar Saksit
4da2e78319
[SHELL32] Display Desktop folder name in IShellBrowser correctly (#7105)
- When the address-bar asks for FORADDRESSBAR, that should prioritized over FORPARSING.

- DefView should not enter special status-bar mode when viewing the Desktop as a shell folder in the normal IShellBrowser (DefView in Progman/desktop continues to use the old mode).
2024-07-08 18:22:59 +02:00
Václav Zouzalík
cabeda8f00
[TIMEDATE] Fix a typo in English (en-US) locale (#7098)
Fix a typo in IDS_INETTIMESUCFILL and IDS_INETTIMEWELCOME strings.
The indefinite article is 'an' when it is followed by a vowel sound.
2024-07-08 18:20:14 +03:00
Katayama Hirofumi MZ
0bd933c28c
[SHELL32] Drive Property Sheet: Run in another thread (#7107)
The drive property sheet was modal,
so it used to lock the main thread.
This PR will unlock by using another
thread.
JIRA issue: CORE-4217
JIRA issue: CORE-11547
In dll/win32/shell32/dialogs/drive.cpp:
- Add DRIVE_PROP_DATA structure.
- Call SHCreateThread function in
  SH_ShowDriveProperties function.
- Clean up the data when they should
  be released.
2024-07-08 23:11:02 +09:00
Jose Carlos Jesus
f9d8665328
[CRYPTEXT] Add Portuguese (pt-PT) translation (#7102) 2024-07-08 16:12:54 +03:00
Katayama Hirofumi MZ
efe42074cc
[USER32][USER32_APITEST] CopyImage: Check flags (#7075)
JIRA issue: N/A
- Check CopyImage flags.
- If there is any invalid flag, then set ERROR_INVALID_PARAMETER
  and return NULL.
- Add CopyImage testcase.
2024-07-08 19:24:15 +09:00
Jose Carlos Jesus
dbdd2b1a79
[MSCTFTIME] Add new Portuguese (pt-PT) translation (#7101) 2024-07-08 03:29:34 +02:00
Joachim Henze
543a38bd9f
[NOTEPAD] *.rc: Tweak AUTORADIOBUTTONS (#7103)
- When AUTORADIOBUTTON is used, then BS_AUTORADIOBUTTON is not needed.
- Add WS_GROUP | WS_TABSTOP to the first of the 2 ARBs.
2024-07-08 03:25:11 +02:00
Katayama Hirofumi MZ
172d65327b
[USER32_APITEST] Add SetWindowPlacement testcase (#7082)
Verify behavior of NtUserSetWindowPlacement
function.
JIRA issue: N/A
Add SetWindowPlacement testcase into
user32_apitest.
2024-07-08 00:34:18 +09:00
Václav Zouzalík
073f594749
[INPUT] Update Czech (cs-CZ) translation (#7070)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2024-07-07 14:29:24 +02:00
Joachim Henze
9a25ee24ca
[RAPPS] *.rc: Strip "Progress1" string (#7091)
That saves a tiny bit of binary size, and makes a long line shorter.
2024-07-07 13:20:47 +02:00
Joachim Henze
6d2b667a94
[REGEDIT] Strip unneeded WM_TIMER, formatting (#7040)
Strip unneeded WM_TIMER and a tab-character before toggle_child

Just clean up and
and addendum to 0.4.15-dev-7915-g d383b20b01
where the WM_TIMER has also been stripped from childwnd.c

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
2024-07-07 13:09:23 +02:00
Joachim Henze
416bfc4308
[RAPPS] *.rc: Strip 2x "popup"-strings (#7092)
This shrinks the binary size a tiny bit.
2024-07-07 13:07:01 +02:00
Jose Carlos Jesus
75f6334300
[SYSDM] Improve pt-PT translation (#7059)
* Add file header
* Improve Portuguese (pt-PT) translation
* Fix accel collisions. Add missing accell keys.
* Remove accel from Ok and Cancel buttons.

Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2024-07-07 13:05:58 +02:00
Václav Zouzalík
384b4df433
[TIMEDATE] Update Czech (cs-CZ) translation (#7085)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-07-07 01:07:06 +02:00
Jose Carlos Jesus
c181d31bc1
[DESK] Improve pt-PT Translation (#7029)
* Add file header. Change SUBLANG to NEUTRAL
* Improve Portuguese (pt-PT) translation
* Add missing accel keys and fix some others accel collisions.

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-07-07 00:03:54 +02:00
Katayama Hirofumi MZ
92551f540c
[EXPLORER] Check IsHungAppWindow before minimizing (#7080)
Reduce system freezing on Win+D.
Normal minimizing causes message
transfer. If the window was hanging,
then it fell into endless message loop.
JIRA issue: CORE-19673
2024-07-07 06:50:46 +09:00
Katayama Hirofumi MZ
0cfd7bde9b
[USER32] TileWindows: Adjust timeout of QuerySizeFix (#7081)
Since my machine performance
became lower, we have to adjust
timeout to get correct pattern of
user32!TileWindows function.
JIRA issue: CORE-19674
Adjust timeout value in QuerySizeFix
function.
2024-07-07 06:48:36 +09:00
Joachim Henze
42780b19c1
[RAPPS] *.rc: Fix accel collisions, improve accel consistency to en-US (#7072)
* improve some accels in consistency to en-US (we are free to change them in rapps to our hearts desire, because there is no MS rapps), in general:
where nothing speaks against use &B for ID_RESETDB, because &t looks poor with Tahoma
where nothing speaks against use &E for ID_REGREMOVE (because &R is often used for &Refresh and tends to collide)
where nothing speaks against use &R for ID_REFRESH
where nothing speaks against use &I for ID_INSTALL
where nothing speaks against use &U for ID_UNINSTALL
where nothing speaks against use &M for ID_MODIFY

* Fix some accelerator collisions:
* en-US.rc: fix an accelerator collision between "&Refresh" and "&Remove from Registry" in 2 menus
* et-EE.rc: Fix accel collision between "&Desinstalli" and ""Uuenda an&dmebaasi"
* hu-HU.rc: Fix an existing accel collision between "&Telepítés" and "Ada&tbázis frissítése", by using the english accelerator for the ID_INSTALL for best consistency
* pl-PL.rc: Fix an accel collision between "&Plik" and "&Programmi", stick with the english accels for uninstall and "remove from registry" for consistency.
* pt-BR.rc: Fix an accel collision between "A&tualizar" and "Update Da&tabase", stick with the english accel also for "R&emover do Registro" for consistency.
* pt-PT.rc: Fix an inconsistency between "&Instalar" and "I&nstalar" between 2 menus, which is not only unintuitive, but also will hurt string pooling. Other changes are for consistency to en-US.
* ru-RU.rc: Reduce inconsistency between the 2 ID_INSTALL in 2 different menus, this will help string-pooling. It will also avoid defining "&Установить" next to "&Удалить" in the same dlg, although that might not be necessarily a collision here, as I am not sure whether Install/Uninstall is even both displayed as activated at the same time. Still better like that.
* sv-SE.rc: Fix accel collision between "&Ta bort från Registret" and "Update Da&tabase", the rest is for improving consistency to en-US
* tr-TR.rc: Fix inconsistency in the accels between "Uyg&ulama" and "Uy&gulama", as that will hurt string-pooling. Use "Uygulama Veri &Tabanını Yenile\tCtrl+F5" for both menus instead. That's the english accel also.
* uk-UA.rc: Fix accel inconsistency between the 2 menus for ID_UNINSTALL. This will help with string-pooling.
* uk-UA.rc: Use "Вида&лити з реєстру" in both menus for ID_REGREMOVE, because that will help with string pooling and improves user experience
* ja-JP.rc: Fix accel collision between "レジストリから削除(&R)" ID_REGREMOVE and "更新(&R)" ID_REFRESH in both menus, also this syncs the accels to en-US. Also add an accel for ID_ABOUT, just because I am friendly.
* A bunch of accel-changes for the sole purpose of matching en-US more closely. Those are only really important for the 3 chinese languages which always aim to follow en-US accels to the point, and for zh-TW that stuff was unintentionally offsync also between their 2 ID_RESETDB in the different menus. For all other languages this is just a nice addition for consistency to en-US. But no absolute must-have.
* The small &t within "Da&tabase" renders poorly in Tahoma because it is a very small-in-x-letter. By using &b in majority of languages, same as ru-RU and pt-BR.rc did already, we can make that look much better. I checked that this will not cause any new collisions.
* fr-FR.rc: Hermes' feedback: A french extrawurst for ID_REGREMOVE doesn't hurt me at all.
* de-DE.rc: Avoid accels of the kind &Ä &Ö &Ü. They are not wrong strictly speaking, but they are suboptimal.
* Strip some comments from sk-SK
* Strip some whitespace from ja-JP
2024-07-06 23:40:03 +02:00
Jose Carlos Jesus
c3a45b679d
Fix return value from GetObject gdi32_apitest (#7046) 2024-07-06 22:55:06 +02:00
Jose Carlos Jesus
cdb438552c
[MAIN] *.rc: accel-tweaks & DEFPUSHBUTTON (#7043)
- Update Portuguese (pt-PT) translation
- Add missing accelerators and fix some collisions.
- Add file header.
- Change IDOK button to DEFPUSHBUTTON
- Also remove accelerators from IDOK and IDCANCEL buttons
2024-07-06 22:44:48 +02:00
Jose Carlos Jesus
004757469c
[INTL] Improve portuguese (pt-PT) translation (#7044)
* Add file header.
* Fix typos and improve portuguese (pt-PT) translation.
* Fix accel collisions
* Remove leading space

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-07-06 22:40:26 +02:00
Jose Carlos Jesus
41d8be86d7
[POWERCFG] Improve pt-PT translation (#7058)
* Add file header
* Improve Portuguese (pt-PT) translation
* Remove accell from Ok and Cancel buttons
* Fix accel collisions. Add missing accels keys.

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-07-06 22:32:00 +02:00
Václav Zouzalík
f852ac2e5d
[INTL] Update Czech (cs-CZ) translation (#7066)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-07-06 22:14:59 +02:00
Václav Zouzalík
9c1fc8595d
[USERINIT] Update Czech (cs-CZ) translation (#7078) 2024-07-06 22:13:28 +02:00
Václav Zouzalík
21044834fe
[USERINIT] Update Slovak (sk-SK) translation (#7079) 2024-07-06 22:12:07 +02:00
Katayama Hirofumi MZ
61cdd02d1c
[NTGDI] Fix MaskBlt error code and check pattern usage (#7083)
Follow-up to #7074. Fix MaskBlt behaviour.
JIRA issue: CORE-13133
- Fix MaskBlt error code.
- Fix MaskBlt pattern usage check.
2024-07-06 13:28:26 +09:00
Katayama Hirofumi MZ
c536664666
[EXPLORER][COMCTL32] Fix wrong title on taskbar if it has '&' in it (#7073)
The ampersand (&) a.k.a. prefix of
DrawText are specially treated for
adding underscores.
We have to fix drawing on toolbar
button with BTNS_NOPREFIX style.
JIRA issue: CORE-11619

- Delete DT flags hack in taskswnd.cpp.
- Add TOOLBAR_GetButtonDTFlags
  helper function.
- Extend TOOLBAR_DrawString
  parameters for the button info.
- Fix DrawText flags for drawing
  when the button has
  BTNS_NOPREFIX style.
2024-07-06 10:38:04 +09:00
Whindmar Saksit
8a7b99c184
[REGEDIT] Display REG_NONE as binary (#7084) 2024-07-05 22:11:16 +02: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
Katayama Hirofumi MZ
80c170d7bc
[IMM32][NTUSER] Reduce a little IMM spams (#7077)
Reduce log spams that @julenuri reported.
JIRA issue: CORE-19268
- Use Imm32IsCrossThreadAccess
  instead of IS_CROSS_THREAD_HIMC in
  ImmSetCompositionWindow function.
- Reduce ERR logging in
  NtUserQueryInputContext function.
2024-07-05 05:07:49 +09:00
Katayama Hirofumi MZ
84e84c29a9
[GDI32_APITEST] Enhance MaskBlt testcase for error code (#7074)
JIRA issue: CORE-13133
Add ok_err tests for error code.
2024-07-05 05:04:37 +09:00
Hermès Bélusca-Maïto
7639cb750a
[SETUPLIB][USETUP] Reduce duplicated code
- ScrollDownPartitionList() and ScrollUpPartitionList()
  --> ScrollUpDownPartitionList()

- GetPrimaryPartitionCount() and GetLogicalPartitionCount()
  --> generic GetPartitionCount() and macros.

- GetPrevUnpartitionedEntry() and GetNextUnpartitionedEntry()
  --> GetAdjUnpartitionedEntry() ("Adj" == Adjacent)
2024-07-04 17:14:32 +02:00
Hermès Bélusca-Maïto
97821f00d5
[SETUPLIB] Fix for GetPartition() 2024-07-04 17:14:31 +02:00
Hermès Bélusca-Maïto
5efe123d5f
[WELCOME] Silence useless editbin warning LNK4241 2024-07-04 17:13:14 +02:00
Katayama Hirofumi MZ
06b6833cf1
[SHELL32] shlexec.cpp: Automate buffer alloc/free (#7068)
Reduce code. Simplify code logic.
Ensure leak zero.
JIRA issue: CORE-17482
- Use CHeapPtr<WCHAR, CLocalAllocator>
  for allocation/freeing.
2024-07-03 23:03:31 +09:00
Katayama Hirofumi MZ
b41332349a
[SHELL32] Refresh UI on assoc change (SHOpenWithDialog) (#7076)
Fix file association UX.
JIRA issue: CORE-19670
- Check the return value of
  shell32!SHOpenWithDialog function.
- If changed, then update the UI display
  and internal data.
- Use OAIF_FORCE_REGISTRATION flag.
2024-07-03 23:01:50 +09:00
Katayama Hirofumi MZ
edf6b805a7
[USERINIT] LiveCD: Set UI language (#7069)
The LiveCD start dialog was not localized.
JIRA issue: N/A
- Just call SetThreadLocale after
  InitializeDefaultUserLocale call.
2024-07-02 18:55:37 +09:00
Katayama Hirofumi MZ
caf117d496
[FONTS] Improve 'Microsoft Sans Serif' Part 2 (#7067)
Follow-up to #7055.
JIRA issue: N/A
Improve micross.ttf font ("Microsoft Sans Serif") file.
Version: 4
License: SIL Open Font License Version 1.1
2024-07-02 11:21:31 +09:00
Oleg Dubinskiy
c9aca501e4 [WINMINE] Remove unneeded cast
Remove unneeded cast when loading the cusror for the WineMine's main window class.
Addendum to 1a10250.
2024-07-01 18:34:01 +02:00
Oleg Dubinskiy
1a1025011f
[REACTOS] Fix LoadCursorW() incorrect usage cases (#7053)
Fix wrong MAKEINTRESOURCEW() macro usage cases in LoadCursorW() system-wide.
MSDN documentation for this function states we need to use MAKEINTRESOURCEW() macro only for internal application-defined cursors (loaded from the app instance specified by hInstance parameter), but not for system-defined cursors (those begin with IDC_* prefix), in case when hInstance is NULL.
So get rid from MAKEINTRESOURCEW() macro usage for all cases when hInstance parameter is NULL. And on the contrary, when hInstance is valid and points to the application instance, then use it for the resource identifier.
2024-07-01 18:05:46 +02:00
Hermès Bélusca-Maïto
f57601d14b
[SETUPLIB][USETUP] FS utilities: Use the ISO C and C++ conformant name: _wcsicmp
Stop using non-conforming wcsicmp.
See also PR #6925 by Timo Kreuzer.
2024-07-01 16:28:17 +02:00
Hermès Bélusca-Maïto
a7a7e6a09c
[SETUPLIB][USETUP] Isolate and decouple the filesystem operations code from the UI (#7049)
The idea is reminiscent of the SetupCommitFileQueue() function:
filesystem volume operations are "queued" and processed via a
"commit queue".

The commit queue uses a user-specified callback, that is used to
interact with the user whenever an operation (filesystem formatting,
checking) is started, ended, or fails, for example by displaying
appropriate UI screens and choices, etc.
2024-07-01 16:18:57 +02:00
Katayama Hirofumi MZ
a207a3c931
[NTGDI][FREETYPE] Fix FontLink freeze (#7063)
#7009 introduced unexpected freezing on gdi* bot tests.
JIRA issue: CORE-19667
Fix the locking-related assertions by adding/removing
lock/unlock.
2024-07-01 22:34:59 +09:00
Katayama Hirofumi MZ
0f9e889736
[NTGDI][FREETYPE][SETUP][INF] Support FontLink (#7009)
If East Asian people were unable
to see the Latin characters, it
becomes a barrier to mutual
understanding.
FontLink will break that barrier.
JIRA issue: CORE-9616
JIRA issue: CORE-15480
- Modify font substitutes.
- Unify the lock variables.
- Add FONTLINK and
  FONTLINK_CHAIN structures.
- Add FontLink_Create and
  FontLink_Destroy functions.
- Add FontLink_Chain_Init,
  FontLink_Chain_Free,
  FontLink_Chain_LoadReg,
  FontLink_Chain_Populate, and
  FontLink_Chain_FindGlyph
  functions.
- Implement FontLink.
- Add font file DroidSansFallback.ttf
  for LiveCD.
2024-06-30 22:15:34 +09:00
Katayama Hirofumi MZ
f28e983932
[FONTS] Improve our 'Microsoft Sans Serif' font (#7055)
Improve font file micross.ttf for better
compatibility.
Eliminate blurry font rendering.
JIRA issue: N/A
- Edit the font file with FontForge.
- Improve vector glyphs.
- Add 8px, 9px, 10px, 11px, 12px,
  and 13px bitmap glyphs.
- Cover English alphabet, digits,
  French, German, Cyrillic, and
  Greek characters.

Version: 3
License: SIL Open Font License, Version 1.1
2024-06-30 20:28:49 +09:00
Hermès Bélusca-Maïto
7e89227a00
[MOUNTMGR] Fix initial sending of device online notification (#7030)
1. MountMgrMountedDeviceArrival():
   Fix the conditions under which the device's online notifications
   are skipped (SkipNotifications == TRUE) and fix the code comments.
   Now, things make much more sense:
   online notifications are skipped when the device is already offline
   or is a legacy (NT <= 4) fault-tolerant volume (see point 2 below),
   or is NOT mounted (doesn't have a drive letter).
   Previously, we were sending an online notification if the device
   was NOT mounted (why?!...) or if it was deemed as "valid" (wrongly
   determined, see point 2 below).

2. QueryDeviceInformation():
   * The usage of the "Valid" parameter didn't make much sense. Indeed,
     when a partition/volume device is reported to the Mount Manager,
     it's already valid. (Also, setting "Valid" to TRUE only in the case
     of an MBR partition while ignoring GPT ones, and resetting it to
     FALSE if IOCTL_STORAGE_GET_DEVICE_NUMBER returned success, pointed
     to something incorrect was going on.)
     Instead, what we are checking here is whether the device is a
     legacy fault-tolerant volume: such volume can only reside on an
     MBR disk, have the expected partition type, and does not really
     reside on a specific storage device (hence the check for
     IOCTL_STORAGE_GET_DEVICE_NUMBER returning failure).

   * Take also the opportunity to SAL2-ify the function.
2024-06-25 22:51:08 +02:00