Commit graph

83355 commits

Author SHA1 Message Date
Katayama Hirofumi MZ fa322c2e14 [RAPPS] Improve Japanese translation
CORE-18706
2023-04-08 17:32:11 +09:00
Katayama Hirofumi MZ 994732c4bb
[RUNDLL32][SHELL32] Rename 'rundll32_window' as 'RunDLL' (#5229)
Improve compatibility.
- Rename window class "rundll32_window" as "RunDLL".
- Delete some shell32 codes about this window class.
CORE-13895, CORE-18350
2023-04-08 15:20:07 +09:00
Hermès Bélusca-Maïto f8f9c170b1
[KDGDB] Fix GCC build. Addendum to commits b577ac07 and de81021ba.
See also PR #5217.
2023-04-05 03:33:42 +02:00
Hermès Bélusca-Maïto 30369b8005
[NTOS] "Bugzilla" --> "Jira" 2023-04-05 03:33:41 +02:00
Hermès Bélusca-Maïto dfc2cc4e42
[NTOS:KD] Fix buffer overflow for the signon in KdPortInitializeEx.
The built string can be:
°°Kernel Debugger: Serial port found: COM1 (Port 0x000003F8) BaudRate 115200°°°°
(with ° representing the \r and \n in the message)
and you can verify that this is more than 80 characters in total.
2023-04-05 03:33:39 +02:00
Hermès Bélusca-Maïto 641c89d834
[KDVBOX] Fix port name comparison. 2023-04-05 03:33:38 +02:00
Hermès Bélusca-Maïto 2b27d08576
Grmbl... 2023-04-05 01:53:32 +02:00
Hermès Bélusca-Maïto 143f8549a5
[NTOS:IO] ... and fix build by adding missing header. 2023-04-05 01:45:32 +02:00
Hermès Bélusca-Maïto 4c6f7c01e5
[NTOS:IO] Avoid magic value in LdrProcessDriverModule. 2023-04-05 01:39:32 +02:00
Hermès Bélusca-Maïto 8b35e46903
[SHIMGVW] Update the display window when selecting the Previous/Next picture. (#5223)
Patch by KRosUser.
CORE-18905
2023-04-04 22:14:14 +02:00
Joachim Henze 99e5f51d5b
[SDK] Shorten autogenerated Copyright strings (#5210)
that we do compile into almost every dll and exe.
Reduces unnecessary scrolling in the
Versions tab of file properties dlg, which precedes the Copyright phrase anyway.

MS also uses shorter strings and therefore doesn't require to scroll at all.
See attached screenshots in the PR.
2023-04-04 12:10:59 +02:00
Katayama Hirofumi MZ 2b356adbc5
[COMCTL32][USER32] EDIT: WM_SETFONT for IME (#5214)
- Call ImmSetCompositionFontW in WM_SETFONT handling of EDIT controls if necessary.
- If the specified font is NULL, then use DEFAULT_GUI_FONT.
CORE-11700
2023-04-04 19:09:21 +09:00
Katayama Hirofumi MZ d0c657074d
[MSPAINT] Allow paletteWindow to be bottom-aligned (#5216)
The user will be able to move the palette window to bottom by dragging.
- Add Bar1ID registry setting.
- Move paletteWindow to top or bottom in mainWindow's WM_SIZE handling.
- Track the mouse dragging on paletteWindow.
- If the dragging is beyond the center point, then move paletteWindow.
CORE-18867
2023-04-04 19:06:06 +09:00
Justin Miller ccef43f3b0
[FREELDR] Implement the memory managment functions for UEFI (#5174)
CORE-11954

- EFI binaries have a different subsystem in the PE header;
- ENVIRON: Make sure INTN and UINTN are 64bit for 64bit platforms;
- Handle UEFI Memory maps and translate it for freeldr;
- Add FAILED_TO_EXIT_BOOTSERVICES Freeldr BSoD code.
2023-04-03 17:33:20 +02:00
Katayama Hirofumi MZ 83e83bfd2c
[MSPAINT] Allow ToolBox to be right-aligned (#5213)
The user will be able to move ToolBox in the main window by dragging.
- Add Bar2ID registry setting.
- Add CPaintToolBar class to encapsulate the toolbar code.
- Capture and track the mouse dragging in CToolBox.
- Move the ToolBox if dragging is beyond the center position.
CORE-18867
2023-04-03 14:34:56 +09:00
Atharva Kulkarni ce562727b8
[MSI] Fix empty disc costing (Terragen, ...) (#5201)
JIRA issue: CORE-18749
2023-04-02 19:19:21 +02:00
Atharva Kulkarni e13c3e856f
[MSI] Revert to previous working solution for disk usage display in dialog.c (#5194)
There is a bug, which displays empty optical drive as a valid Drive where applications can be installed, which is wrong. This change will skip displaying any drives that are not fixed in the disk usage table in the msi installer UI.

JIRA issue: CORE-18758

Proposed changes

Revert to old solution from Doug Lyons which was working fine.
2023-04-02 19:16:18 +02:00
hpoussin 1bdefebc9e
Enable framebuf_new driver (#4775)
Replace framebuf display driver by framebuf_new display driver
Compile framebuf_new as framebuf.dll, and add it to bootcd/livecd
Remove old framebuf from compilation, to not conflict
2023-04-02 23:33:15 +09:00
Joachim Henze 9ee9f73369
[NTUSER] Fix BSOD 0x1E nullptr deref CORE-18899 (#5212)
fix authored by JIRA-user "TANGaming". I do suspect that the possibility of that nullptr deref was introduced on the master branch by 0.4.13-dev-962-g 4193b8d. Doug Lyons signalled his "ok" regarding the fix in chat already. CORE-18899
2023-04-02 23:27:42 +09:00
Joachim Henze c37addcbf5
[CONSOLE] Harmonize IDC_LBOX_FONTTYPE height to 40 for *.rc (#5211)
40 is what en-US uses, and most other langs used that meanwhile as well. Some were forgotten to be synced though.
While comparing all the files, use the opportunity to slightly improve some headers also.
2023-04-02 23:25:43 +09:00
fulup29 14cf589cbc
[SHELL32] Improve French (fr-FR) translation (#5179)
CORE-18382

Original patch is used to fix and improve french translation and layout.
The original (erroneous) horizontal shift of the second checkbox is kept.
It should be fixed homogeneously in all translations at once later.
2023-04-02 00:07:52 +02:00
Jérôme Gardou 573d579873
[NTOSKRNL] Flush file to disk when deleting file mappings (#4302)
CORE-17627
When closing a file, fastfat zeroes it out from ValidDataLength up to the end of the file.
The ValidDataLength field is updated when the file content is actually written to disk.
There is currently a race between the file-close path and the page out path, leading to potential file corruptions when the zeroing happens after the memory has been flushed to disk.

Fix this by actually flushing the file to disk when unmapping files, with file lock acquired. This way, the FS driver cannot zero out the tail of the file while we're actually flushing it to disk.
2023-04-01 23:56:49 +09:00
Katayama Hirofumi MZ 84e580b67e
[REGEDIT] Fix ListView selection and finding (#5150)
We will check the data size correctly, instead of 3 NUL byte appending hack. Add bSelectNone parameter to UpdateAddress and RefreshListView functions. If bSelectNone is TRUE, then select nothing of ListView. Fix item selection of ListView. Rename CompareData helper function as MatchData and improve it. Improve the search algorithm. If the item selection of ListView changed, scroll down to the item. Follow up to #5146. CORE-15986, CORE-18230
2023-04-01 22:21:59 +09:00
Katayama Hirofumi MZ aac89519ec
[MSPAINT] Make selection window-less (#5208)
- Delete selection.cpp and selection.h and selectionWindow.
- Extend ColorKeyedMaskBlt function.
- Implement selection resizing.
CORE-18867
2023-04-01 22:01:04 +09:00
Katayama Hirofumi MZ 3f5bcf5775
[KERNEL32] LCMapString: Fullwidth/halfwidth conversion (#5206)
- Add file dll/win32/kernel32/winnls/string/dakuten.h.
- Add file dll/win32/kernel32/winnls/string/full2half.h.
- Support LCMAP_FULLWIDTH and LCMAP_HALFWIDTH in LCMapString.
CORE-11700
2023-04-01 11:33:36 +09:00
valmorflores 2687c1b415
[NOTEPAD][OSK] Improve/Add Portuguese (Brazilian pt-BR and Portugal pt-PT) translations (#5124)
Co-authored-by: Julen Urizar Compains <julenuri@hotmail.com>
2023-03-31 01:37:45 +02:00
Doug Lyons c8fc8264fe
[SHELL32_APITESTS] Add ROS.ico test file. Improve shell32:ExtractIconEx tests (#5169)
Improve shell32:ExtractIconEx tests by updating it and adding more test files and 1 new icon file.

JIRA issue: ROSTESTS-381

Add new ROS.ico file which has both a normal icon and a PNG one.
Update testing to test for count of icons in file and separately extract the 0th one.
Add tests for sysicon.ico, explorer.exe and the new ROS.ico files.
2023-03-30 13:31:13 +02:00
Hermès Bélusca-Maïto 1bb4167211
[NTOS:KD] Fix build, addendum to commit f3dd7133.
This one was more subtle because the prompt (KdIoReadLine) functionality
makes a call-back to KDBG own command history getter function KdbGetHistoryEntry.
It is planned for this to become a registered optional callback pointer.
2023-03-29 03:36:24 +02:00
Hermès Bélusca-Maïto 3c0ba6b22c
Fix build, addendum to commit 35180b3a 2023-03-29 02:55:06 +02:00
Hermès Bélusca-Maïto 35180b3ad2
[NTOS:KDBG] Isolate terminal and input-related routines from the rest of KDBG. (#5188)
This is done in preparation for moving all this functionality in a
separate KDTERM "KD Terminal Driver" DLL.

Additionally:

- Flush the terminal input before sending ANSI escape sequences.

- In KDBG pager, always use the correct reading-key function (the
  same used also for reading keys for a line of user input), and not
  the simplistic two-call KdbpGetCharSerial + KdbpTryGetCharSerial
  that would split the \r \n across calls.

- Call KdbpGetCommandLineSettings() in KdbInitialize() at BootPhase 0,
  which is indirectly called by KdDebuggerInitialize0(). And fix its
  command-line parsing too.
2023-03-29 02:42:31 +02:00
Joachim Henze 56bf3969cd
[SYSSETUP] Tweak IDD_COMPUTERPAGE positioning (#5198)
- make all 3 input boxes IDC_COMPUTERNAME, IDC_ADMINPASSWORD1, IDC_ADMINPASSWORD2 on this page the same length for all languages and start and end at same x-coord, e.g. sk-SK.rc, uk-UA.rc
- let the input boxes end at the same x as the edits in the previous dlg IDD_OWNERPAGE
- respect the right margin of the dialog with all controls for all languages, makes it look more harmonic to previous and next dlg, see video:
- make the input fields as wide as possible, but not wider, depending on what the language allowed I used width of 139, 148, 163 (163 is same as the EDITs in IDD_OWNERPAGE used)
- fix too small x offset for some controls in some languages like bg-BG.rc, that looked very off
- in zh-CN.rc fix the maximum allowed length for computer name from 63 to 15
- ja-JP.rc 15 is max chars for computer name, not 63
- Fix it-IT text truncation "Organizzazione" in IDD_OWNERPAGE
- pl-PL.rc Steal some wisdom from 0.4.9 to better stick with en-US.rc dimensions.
2023-03-29 01:23:00 +02:00
Hermès Bélusca-Maïto f3dd713382
[NTOS:KD:KDBG] Isolate the read-line (prompt) functionality in a separate file.
Rename KdbpReadCommand as KdIoReadLine. Extract the last-command
repetition functionality out of KdIoReadLine and put it where it
belongs: only in the KDBG command main loop KdbpCliMainLoop.
2023-03-28 16:14:40 +02:00
Hermès Bélusca-Maïto 430d7ebb93
[NTOS:KDBG] Use KdbpSendCommandSerial() to send specific ANSI escape sequences.
Use this function instead of KdpDprintf(), otherwise, we send them to
**ALL** the display providers, including for example dmesg. Replaying
the listing with dmesg would then cause the terminal to misbehave later.
For example, it would send the answer of a "Query Device Attributes"
command, as the response to a query for terminal size...
2023-03-28 16:14:39 +02:00
Katayama Hirofumi MZ 29e147beca
[MSPAINT][ATL] Encapsulation: mainWindow (#5178)
- Add DoCreate methods to CFullscreenWindow, CMiniatureWindow, and CMainWindow classes.
- Do encapsulation around mainWindow and _tWinMain.
- Add GetOpenFileName, GetSaveFileName, and ChooseColor helper methods to CMainWindow class.
- Move some code in WinMain into CMainWindow::OnCreate.
- Delay creation of CFullscreenWindow and CMiniatureWindow.
- Extend ATL CImage class as CImageDx in newly-created atlimagedx.h of mspaint.
CORE-18867
2023-03-28 22:31:26 +09:00
Katayama Hirofumi MZ 0569bbd4a7
[KERNEL32] LCMapString: Sync to Wine a little (#5203)
Preparation for LCMAP_FULLWIDTH and LCMAP_HALFWIDTH support.
Slightly synchronize lang.c to locale.c in Wine's dlls/kernelbase.
CORE-11700
2023-03-28 21:09:27 +09:00
Katayama Hirofumi MZ 3b82b8370d [NTOSKRNL] Fix build in Release; #include 'kd.h' 2023-03-28 17:20:42 +09:00
Katayama Hirofumi MZ ab5aff5948 [KERNEL32] Follow-up of #5200 (5d1ae45)
Add "Voiced Iteration Marks" to convert.
CORE-11700
2023-03-28 10:00:22 +09:00
Hermès Bélusca-Maïto 412037a2e2
[NTOS:KD] Use local print-like functions for output, instead of the kernel-internal KdpDprintf.
Indeed, the latter won't be accessible once those KD IO functions
get moved out into a separate KDTERM.DLL.
2023-03-28 02:42:53 +02:00
Katayama Hirofumi MZ 5d1ae45b83
[KERNEL32] LCMapString: Hiragana/Katakana conversion (#5200)
Implement LCMAP_KATAKANA and LCMAP_HIRAGANA flags. CORE-11700
2023-03-28 08:37:17 +09:00
Katayama Hirofumi MZ 3526ffc094
[BLUE] Optimize ScrIoControl for speed (#5185)
Optimize IOCTL_CONSOLE_FILL_OUTPUT_ATTRIBUTE and IOCTL_CONSOLE_FILL_OUTPUT_CHARACTER for speed by using cache. CORE-18838
2023-03-28 08:12:38 +09:00
Hermès Bélusca-Maïto 6084da8c84
[NTOS:KDBG] Move command history management in a separate file. Simplify duplicated code in KdbpReadCommand. 2023-03-27 23:31:34 +02:00
Hermès Bélusca-Maïto eb02a85214
[NTOS:KD] Split internal/kd.h into a part shared in the whole kernel and a private part only used within ntoskrnl/kd. 2023-03-27 23:31:34 +02:00
Hermès Bélusca-Maïto bfd07a02f1
[NTOS:KD] Update file headers. 2023-03-27 23:31:33 +02:00
Hermès Bélusca-Maïto 6fafe54f89
[NTOS:KD:KDBG] Move some files to a better place. 2023-03-27 23:31:28 +02:00
Katayama Hirofumi MZ 6d650bfc8f
[COMCTL32][USER32] WM_IME_CHAR: Rely on DefWindowProc... (#5191)
Use DefWindowProc... for WM_IME_CHAR handling. CORE-15289, CORE-11700
2023-03-27 19:42:47 +09:00
Joachim Henze 7c755d9b84 [SYSSETUP] Delete obsolete lt-LT.rc
syssetup/lang/lt-LT.rc is a 100% copy of en-US.rc. Not a single string or path within did differ.
The file emerged once during some refactoring when parts from userenv were moved to syssetup in SVN r73518 == git c24dcb3ff2 .

By deduplicating that file syssetup.dll shrinks for GCC8.4.0dbg RosBEWin2.2.2
and it will speed up the development of that module if one rc-file less has to be groomed everytime something is added into syssetup.dll.
It is quicker to recreate that file later if some use for translation would evolve in the module.

I linked this commit against CORE-18893 although my commit did neither introduce
nor would solve that bug of 'the language not generating any startmenu entries'!

I stumbled over the file being a total copy of en-US
after that ticket was created already and then compared the contents of lt-LT.rc to en-US.rc
So I though the linking would make kind of sense.

I installed in lithuanian before and after my commit. No change!

lt-LT.rc was the last one of such rc copy-pastes in [SYSSETUP], I double-checked them all now.
2023-03-27 01:09:31 +02:00
Joachim Henze c762234546
[SYSSETUP] Fix font glitch in ja-JP.rc (#5192)
CORE-18706
2023-03-26 12:04:41 +09:00
George Bișoc f364bfc8f4
[KMTESTS:OB] Refactor OBJ_DIRECTORY_TYPE_INFO_SIZE define construct
Object types are mere type names with no backslash. Also remove wcslen()
from the define, it's not needed.
2023-03-25 19:47:26 +01:00
Joachim Henze b373b7a11e [SYSSETUP] Fix typo in german de-DE.rc
That typo was introduced by 0.4.15-dev-3638-g 3f053db3e7
and did only affect the master branch.
2023-03-25 18:21:39 +01:00
Joachim Henze 3963d7d5f2 [SYSSETUP] Delete obsolete fi-FI.rc
syssetup/lang/fi-FI.rc is a 100% copy of en-US.rc. Not a single string or path within did differ.
The file emerged once during some refactoring when parts from userenv were moved to syssetup in SVN r73518 == git c24dcb3ff2 .

By deduplicating that file syssetup.dll shrinks from 1.374.208 -> 1.361.920 for GCC8.4.0dbg RosBEWin2.2.2
and it will speed up the development of that module if one rc-file less has to be groomed everytime something is added into syssetup.dll.
It is quicker to recreate that file later if some use for translation would evolve in the module.

I linked this commit against CORE-18893 although my commit did neither introduce
nor would solve that bug of 'the language not generating any startmenu entries'!

I stumbled over the file being a total copy of en-US
after I saw that glitch and created the ticket and then compared the contents of fi-FI.rc to en-US.rc
So I though the linking would make kind of sense.

I installed in finnish before and after my commit. No change!
2023-03-25 14:16:03 +01:00