Commit graph

245 commits

Author SHA1 Message Date
Timo Kreuzer
5d8e834897 [REACTOS] Fix a number of MSVC warnings 2021-07-23 22:03:48 +02:00
Timo Kreuzer
b1c6c91d1f [USETUP] Fix invalid use of character count instead of byte count 2021-07-23 22:03:48 +02:00
Jose Carlos Jesus
2ccca7fe30 [USETUP] Update Portuguese PT translation 2021-07-03 21:50:13 +02:00
Joachim Henze
10e48faf1d [USETUP] Update de-DE
Translate the Copying-bootloader status bar text
that was added during 0.4.15-dev'ing
2021-06-21 07:37:58 +02:00
Piotr Hetnarowicz
ab1f844189
[USETUP] Polish translation update (#3715) 2021-06-07 10:31:32 +02:00
George Bișoc
9f3ed60ea4
[USETUP] Loop over MUI entries of the same ID
MUI entries can have the same ID pointed by TextID member of MUI_ENTRY structure. For this matter, altering a certain entry such as deleting a portion of text with MUIClearStyledText() only removes that portion of text when the given ID argument and the retrieved ID match.

However, MUIClearStyledText() only removes the first instance of text in the console leaving other entries with the same ID as is. Therefore we must ensure that we also iterate over other entries with the same ID as well. Besides the aforementioned function, do the same with MUIClearText(), MUISetText() and MUISetStyledText() too.
2021-05-05 19:30:53 +02:00
Hermès Bélusca-Maïto
33c210da37
[USETUP] Fix letter encoding in translation. (#3619)
CORE-17545

Fix Clang warning:

base/setup/usetup/lang/de-DE.h:1099:24: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
        "die Partition <E4>ndern, die derzeit als aktiv markiert ist.",
                       ^~~~
2021-05-05 17:23:57 +02:00
Stanislav Motylkov
eff05c34b7
[USETUP] Update Russian (ru-RU) translation
Addendum to 3ee9535e. CORE-17523
2021-04-26 02:06:14 +03:00
Tibor Lajos Füzi
ea04edce2d [TRANSLATION] Add/update Hungarian translation for solitaire, spider solitaire, rapps, usetup, cpl/timedate, shell32, user32 2021-04-14 16:16:24 +02:00
George Bișoc
3ee9535e05
[USETUP] Display some contents in the page whilst installing the bootloader (#3559)
CORE-17523
2021-04-07 10:11:07 +02:00
Victor Perevertkin
abbc5ba45a
[UMPNPMGR][USETUP] Use PlugPlayControlStartDevice in usetup and umpnpmgr
Instead of PlugPlayControlResetDevice, PlugPlayControlStartDevice should
be used for a newly installed device.
For usetup, add a device status check before starting attempt, so we're
not touching devices which are already started.

CORE-17463 CORE-17490
2021-03-16 03:17:58 +03:00
Victor Perevertkin
029accdcf7
[NDK] Change the data structure for PlugPlayControlResetDevice control class
PlugPlayControlResetDevice shares the input structure with several other
control classes.
Source: ProcessHacker sources e9c8121f41/ntpnpapi.h
2021-03-16 03:17:42 +03:00
George Bișoc
950f78635a
[USETUP] Display the "check the FS" section as a MUI page (#3474) 2021-02-22 16:48:03 +01:00
Hermès Bélusca-Maïto
3405cab9dd
[USETUP] Only check whether the system partition is of recognized type and if not, install FreeLdr on floppy/removable media. 2021-02-01 01:48:15 +01:00
Hermès Bélusca-Maïto
74c0a37e2f
[SETUPLIB][REACTOS][USETUP] Move partition types information to its dedicated file; update MBR partition types and add GPT GUID partition types. 2021-02-01 01:48:14 +01:00
Hermès Bélusca-Maïto
8f61f5c004
[USETUP] Add partition and disk description helpers to get standardized description strings. Replace and simplify USETUP code. 2021-02-01 01:48:10 +01:00
Mas Ahmad Muhammad
4ca7926093
[TRANSLATION] Fix format for Indonesian translation (#3418)
- USETUP: Fix alignment on translation.
- SHELL32: Update and fix translation.
2021-01-07 18:47:10 +01:00
Hermès Bélusca-Maïto
68182b2a52
[USETUP] Partial revert of 8b94515b for the ESCAPE key in the UpgradeRepairPage() screen.
The AsciiChar of the ESCAPE key should be 0x1B instead of zero; however
this is not the case due to the hacked keyboard layout currently being
used. This will be fixed later ...
2021-01-04 16:13:28 +01:00
Victor Perevertkin
e12233daf6
[USETUP] Do not put ImagePath to the service registry entry
It is supposed to be there already
2021-01-04 16:50:33 +03:00
Hermès Bélusca-Maïto
0abff65a55
[USETUP] Minor improvements when initializing the console.
- Use NT values for uninitialized handle values.
- Cache the STD_INPUT_HANDLE.
- Free the console if GetConsoleScreenBufferInfo() fails in CONSOLE_Init().
2021-01-03 00:27:54 +01:00
Hermès Bélusca-Maïto
8b94515bd3
[USETUP] Fix handling of the ESCAPE key.
Its AsciiChar is not zero in Console-compatible code.
2021-01-03 00:27:50 +01:00
Hermès Bélusca-Maïto
e8c9a73bb8
[USETUP] Free allocated memory after loading the new text-mode font from the .CAB file. 2020-12-27 00:51:56 +01:00
Victor Perevertkin
dd56e065bc
[REACTOS] Enable PnP storage stack
- Use PnP storage class drivers
- Make partmgr an upper filter driver for Disk class
- Fill upper filters in txtsetup and usetup/devinst
- Add cdrom driver to the critical device database

CORE-6264
2020-12-05 22:30:43 +03:00
Hermès Bélusca-Maïto
05cd77028c
[SETUPLIB][USETUP] Cleanup some code in USETUP. Redefine FormatPartition() and ChkdskPartition() helpers
so that they wrap the needed init steps for formatting/chkdsk'ing.

These helpers now accept a PPARTENTRY, together with the usual
formatting/chkdsk parameters. The helpers now determine the actual
NT path to use, and can perform the init steps on the partition
before performing the actual operation.

In particular, FormatPartition() is now made GPT-compliant. The
partition type retrieved by FileSystemToMBRPartitionType() is now
used as a hint for choosing FAT32 over FAT12/16, and only in the
case of a MBR partition that is *NOT* a recognized OEM partition,
it is used for updating the corresponding partition type. (OEM
partitions must retain their original type.)

The OEM partition types we (and NT) can recognize are specified
e.g. in the Microsoft Open-Specification [MS-DMRP] Appendix B
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-dmrp/5f5043a3-9e6d-40cc-a05b-1a4a3617df32

Introduce an IsOEMPartition() macro to help checking for these types
(its name is based on the Is***Partition() macros from ntdddisk.h,
and from a dmdskmgr.dll export of similar name).
2020-11-24 03:24:41 +01:00
Hermès Bélusca-Maïto
8d3e80e437
[FSLIB][FMIFS][AUTOCHK][SETUPLIB] Use more Windows-compatible (but not fully compatible yet) Format() and Chkdsk() ULIB functions.
[AUTOCHK] Add also support for scanning FATX volumes.

The Format(), FormatEx(), Chkdsk(), ChkdskEx() functions exposed by the
U*.DLL user-mode FS library dlls are different (and have different
prototypes) than the similarly-named functions exported by FMIFS.DLL .

In particular, what we used to call "xxxChkdskEx()" and "xxxFormatEx()"
in our U*.DLL libraries actually correspond more, from their arguments,
to the "Chkdsk()" and "Format()" functions in Windows' U*.DLL . Their
*Ex() counterparts instead take most of the parameters through a
structure passed by pointer.

On FMIFS.DLL side, while FMIFS!Chkdsk() calls U*.DLL!Chkdsk() and
FMIFS!ChkdskEx() calls U*.DLL!ChkdskEx() (and we do not implement these
*Ex() functions at the moment), both FMIFS!Format() and FMIFS!FormatEx()
call U*.DLL!Format() instead, while FMIFS!FormatEx2() calls
U*.DLL!FormatEx() (that we do not implement yet either) !!

To improve that, refactor the calls to these U*.DLL functions so as to
respect the more compatible prototypes: They contain the correct number
of parameters in a compatible order. However, some of the parameters do
not have the same types yet: the strings are kept here in PUNICODE_STRINGS,
while on Windows they are passed via an undocumented DSTRING struct, and
the FMIFS callback is instead a MESSAGE struct/class on Windows.
Finally, the MEDIA_TYPE parameter in U*.DLL!Format() is equivalent, yet
not fully 100% in 1-to-1 correspondence, with the FMIFS_MEDIA_FLAG used
in the corresponding FMIFS.DLL functions.

One thing to notice is that the U*.DLL!Format() (and the Ex) functions
support a BOOLEAN (a flag resp.) for telling that a backwards-compatible
FS version should be used instead of the (default) latest FS version.
This is used e.g. by the FAT FS, where by default FAT32 is selected
(depending also on other constraints like, the disk and the partition
sizes), unless that bit is set in which case, FAT16 (or 12) is used.
2020-11-22 21:57:07 +01:00
Hermès Bélusca-Maïto
f1a4a6e704
[USETUP] Introduce two helpers for formatting displayed disk and partition sizes in order to reduce code duplication. 2020-11-04 23:26:54 +01:00
Hermès Bélusca-Maïto
13dd01b44c
[USETUP] Use pointers to const strings where meaningful. 2020-11-04 23:26:53 +01:00
Hermès Bélusca-Maïto
6c94e4f487
[USETUP] Work around GCC's complaints (will be fixed properly later on). 2020-10-20 01:32:30 +02:00
Hermès Bélusca-Maïto
08924c1850
[USETUP][SETUPLIB] Continue hiding the FAT32 format in the format list, but take it into account anyway later on.
The formatter will select it anyway as soon as the partition size
permits it. We make it available internally however so as to "emulate"
FMIFS functionality.

Now rely on the partition filesystem for InstallVBRToPartition() instead
of the unreliable and deprecated partition type.
2020-10-20 01:19:58 +02:00
Hermès Bélusca-Maïto
434fa562ce
[USETUP] Do a trick to avoid visual "blinking" during screen clearing. (#3255)
CORE-17312

Hide everything under the same foreground & background colors, so that
the actual color and text blanking reset does not create a visual "blinking".
Then, blank the text and finally reset the actual foreground &
background colors.

We do this because we cannot do the screen scrolling trick that would
allow to change both the text and the colors at the same time (the
function is currently not available in our console "emulation" layer).
2020-10-02 00:20:21 +02:00
Hermès Bélusca-Maïto
66302e477c
[USETUP] Minor formatting only. 2020-10-02 00:04:11 +02:00
Hermès Bélusca-Maïto
ffc96d26ec
[UMPNPMGR][USETUP] Fix the way device-install events are queued and dequeued. Fixes CORE-16103.
Dedicated to the hard work of Joachim Henze! xD

This reverts part of commit 043a98dd (see also commit b2aeafca).

Contrary to what I assumed in commit 043a98dd (and was also assumed in
the older commit b2aeafca), we cannot use the singled-linked lists to
queue and dequeue the PnP device-install events, because:

- the events must be treated from the oldest to the newest ones, for
  consistency, otherwise this creates problems, as shown by e.g. CORE-16103;

- the system singled-linked lists only offer access to the top of the
  list (like a stack) instead of to both the top and the bottom of the
  list, as would be required for a queue. Using the SLISTs would mean
  that only the newest-received events would be treated first, while the
  oldest (which were the first received) events would be treated last,
  and this is wrong.

Therefore one must use e.g. the standard doubly-linked list. Also, using
locked operations (insertion & removal) on the list of device-install
events is necessary, because these operations are done concurrently by
two different threads: PnpEventThread() and DeviceInstallThread().
Since the interlocked linked list functions are not available in user-mode,
we need to use instead locking access through e.g. a mutex.
2020-10-01 01:52:09 +02:00
Kyle Katarn
a5634138c3
[SETUP] French translation of missing elements (#3111)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-09-03 21:20:54 +02:00
Jose Carlos Jesus
ea5c612b00
[REACTOS][USETUP] Update Portuguese PT translation (#3081)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2020-08-23 14:34:28 +02:00
Julen Urizar Compains
546862babc
[TRANSLATION] Update Spanish, and add Basque translation (#2667)
Add/update translation for:
charmap_new, logoff, mspaint, notepad, usetup, welcome,
hotplug.cpl, sysdm.cpl, aclui.dll, comctl32.dll, comdlg32.dll,
hhctrl.ocx, kernel32.dll, msi.dll, oledlg.dll, shell32.dll,
tapiui.dll, themeui.dll, wininet.dll, winmm.dll, wldap32.dll,
winsrv.dll.
2020-05-17 18:46:36 +02:00
Mark Jansen
1439bbdea0
[USETUP] Fix the build for msvc 2020-04-26 17:01:08 +02:00
Hervé Poussineau
2391e31cf0 [USETUP] Move loading of requested font from blue.sys to usetup 2020-04-26 14:59:04 +02:00
Hervé Poussineau
04ec14e23e [USETUP] Support a custom way to extract files for cabinet files
This will be used to extract files from cabinet to memory, instead of
writing them to disk.
2020-04-26 14:57:40 +02:00
Hervé Poussineau
0d51c71ed7 [USETUP] Optimize font loading
Reload a new font only if codepage changed.
2020-04-26 14:57:38 +02:00
Serge Gautherie
c62b7a67ef
[USETUP] Update now-redirected 'http' and 'www.reactos.org' URLs (#2622)
NB:
http://www.reactos.org/uk/
is not updated, as it returns
Error 404 - Page not found.
2020-04-22 14:44:13 +09:00
Victor Perevertkin
7e069ccdb2
[CMAKE] Replace custom functions to built-in ones
add_target_compile_definitions -> target_compile_definitions
add_target_compile_flags -> target_compile_options
add_target_include_directories -> target_include_directories
2020-04-16 15:59:38 +03:00
Julen Urizar Compains
d7a632a094
[TRANSLATION] Spanish minor fixes (#2547)
Translations for:
- Applications: clipbrd, dxdiag, rapps,
- cmdutils: attrib, find, help, label, reg, xcopy
- usetup
- dlls: browseui, shell32, syssetup

- Add Spanish translation for Accesibility Utility (utilman).

Update for the "Choose product options" strings in syssetup:

Originally "ProductType" and "ProductSuite" (typesetted without spaces) were the registry value names where these settings would go, but since it's meaningless to show these values it's better instead to use human-readable names with correct translation and spacing.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-04-15 13:27:36 +02:00
Mas Ahmad Muhammad
b8dd046ee4
[TRANSLATION] Add and update Indonesian translations (#2506)
- CMDUTILS: attrib, label (update translation)
- USETUP (add translation)
- HOTPLUG (add translation)
- CONSRV  (update translation)
- USERSRV (update translation)
- USER32  (update translation)
- ACLUI  (update translation)
- LICCPA  (update translation)
- SUBST  (update translation)
- REGSVR32  (update translation)
- REGEDIT-CLB  (update translation)
- ACPPAGE  (update translation)
- TIMEDATE  (update translation)
- SOLITAIRE  (update translation)
- FDEBUG  (update translation)
- SYSSETUP (update translation)
2020-04-09 18:49:45 +02:00
Joachim Henze
1fdf06c563 [USETUP] de-DE Whitespace nitpicking CORE-16792
To harmonize it to 3 separator-spaces how it is done
historically in other dlgs.
2020-04-06 21:28:45 +02:00
Joachim Henze
75edf1071a [USETUP] de-DE Fix typo CORE-16792
Fix typo in my last changeset
0.4.14-dev-1323-g
d079342e0a
2020-04-06 20:55:18 +02:00
Joachim Henze
d079342e0a [USETUP] de-DE Overhaul german translation CORE-16792 2020-04-06 20:49:44 +02:00
Joachim Henze
7ed0701983 [USETUP] de-DE Split a line of text into two parts CORE-16791 2020-04-06 17:11:45 +02:00
Julen Urizar Compains
d6e0fe78e7
[TRANSLATION] Updating Spanish translation (#2503)
Updating translation for:
notepad, reactos, usetup, explorer, netshell, msgina, setupapi, shell32.

- Complete and Fix the SPANISH TRANSLATION on Setup
- Correct the random names, fixing the denominations, translate of the English words, and fixing random and incorrect denominations like "Cabinet" or "distribuciones".
- Fixed the notepad shortcuts of "Save" (Ctrl+g) and "Replace".
2020-04-06 13:17:20 +02:00
Julen Urizar Compains
58d2b1f3f6
[TRANSLATION][USETUP] Update Spanish translation of USetup. (#2497)
Correct the random names, fixing the denominations, translate of the English words, and fixing random and incorrect denominations like "Cabinet" or "distribuciones".
2020-04-04 13:10:34 +02:00
Tibor Lajos Füzi
432a5ddc7f
[TRANSLATION] Update Hungarian translation of usetup, syssetup, explorer, netshell, userenv, shortcuts (#2442) 2020-03-20 17:52:46 +01:00