Commit graph

85219 commits

Author SHA1 Message Date
Katayama Hirofumi MZ f53d7eeb4c
[MSPAINT] Implement 'Crop Selection' (#6552)
Improve usability.
JIRA issue: CORE-19466
- Add IDM_CROPSELECTION command in "Edit" menu.
- If no selection, then disable IDM_CROPSELECTION.
2024-02-28 19:27:37 +09:00
Katayama Hirofumi MZ 059fd8e551
[SHELL32] Fix CMenuBand's context menu (#6548)
JIRA issue: CORE-17453, CORE-12328
In CMenuBand::_TrackContextMenu method:
- Use 100 for idCmdFirst, instead of zero.
- Use uCommand - idCmdFirst for cmi.lpVerb.
Zero is an invalid command ID.
2024-02-28 16:54:15 +09:00
Katayama Hirofumi MZ 1d1472c78e
[APPWIZ][SHELL32] Improve 'Create Shortcut' dialog (#6550)
Now we can open special folder shortcut, thanks to #6546.
Let's allow users to create various shortcut files.
JIRA issue: CORE-5866
- Remove BIF_RETURNONLYFSDIRS flag because
  the system can open special folder shortcuts now.
- Add LPITEMIDLIST pidlTarget to CREATE_LINK_CONTEXT
  structure.
- Use pidlTarget if the target is a special folder.
- Fix CShellLink::DoOpen for arguments.
2024-02-28 15:22:44 +09:00
Katayama Hirofumi MZ 776c3a3495
[SHELL32] SHBrowseForFolder: Fix pszDisplayName (#6549)
pszDisplayName is for display name, not for full path.
JIRA issue: CORE-5866
- If lpBrowseInfo->pszDisplayName is valid,
  use SHGetFileInfoW to get display name.
- Don't use SHGetPathFromIDListW to get
  display name. It's wrong.
2024-02-28 13:23:27 +09:00
Katayama Hirofumi MZ d634ef54e4
[SHELL32] Opening Special Folder shortcut (#6546)
Fix opening special folder.
JIRA issue: CORE-19464
In CShellLink::DoOpen, if there is a PIDL, then use it and set SEE_MASK_IDLIST flag.
2024-02-28 12:17:04 +09:00
Katayama Hirofumi MZ d1ac33a9bd
[EXPLORER][SHELL32] Strengthen Start Menu Customize Part 1 (#6544)
Strengthen customization of Start menu.
JIRA issue: CORE-16956
- Modify IDD_CLASSICSTART_CUSTOMIZE dialog.
- Add some resource strings to shell32.dll.
- Add some helper functions.
- Disable Clear button if necessary.
- Add "Display Favorites" and "Display Log Off"
  items into IDC_CLASSICSTART_SETTINGS treeview
  control.
- Implement two items' action.
- Recreate the start menu if WM_SETTINGCHANGE
  message received.
2024-02-27 20:41:43 +09:00
Katayama Hirofumi MZ 281f7c4e38
[BROWSEUI] Implement 'Add to Favorites' (#6543)
Implement Explorer's "Add to Favorites" feature.
JIRA issue: CORE-16857
- Add CreateShortcut helper function.
- Add CShellBrowser::OnAddToFavorites.
2024-02-27 19:55:57 +09:00
Katayama Hirofumi MZ 8209aa528b
[BROWSEUI] Enable Address bar access key (Alt+D) (#6534)
Retrial of #5052. Improve keyboard
interface usability.
JIRA issue: CORE-18823
- Add GetAddressBarAccessKey
  helper function to get the
  accelerator of Address bar from
  resource string
  IDS_ADDRESSBANDLABEL.
- Implement Alt+D (or something)
  accelerator in CAddressBand::
  TranslateAcceleratorIO method by
  handling WM_SYSKEYDOWN and
  WM_SYSCHAR messages.
2024-02-26 21:54:51 +09:00
Joachim Henze a08b83a90b
[SHELL32] Fix 2 compiler warnings for the rls-cfg 'unused variable' (#6539)
I noticed it on releases/0.4.10 with the RosBEWin2.1.6 GCC4.7.2 *rls* configuration:

C:/0410rls/reactos/dll/win32/shell32/dialogs/filetypes.cpp: In function 'BOOL FileTypesDlg_InsertToLV(HWND, LPCWSTR, INT, LPCWSTR)':
C:/0410rls/reactos/dll/win32/shell32/dialogs/filetypes.cpp:663:9: warning: variable 'iLargeImage' set but not used [-Wunused-but-set-variable]
C:/0410rls/reactos/dll/win32/shell32/dialogs/filetypes.cpp: In function 'BOOL EditTypeDlg_UpdateEntryIcon(HWND, PEDITTYPE_DIALOG, LPCWSTR, INT)':
C:/0410rls/reactos/dll/win32/shell32/dialogs/filetypes.cpp:1040:9: warning: unused variable 'iLargeImage' [-Wunused-variable]

But I do assume, that MSVC compilers would also complain about that in *rls* cfg.

Please notice that before 0.4.10-dev-202-g 698cbc6184 which did splitup and restructure the code
this function was placed within the file folder_options.cpp and was named
InsertFileType(HWND hDlgCtrl, WCHAR * szName, PINT iItem, WCHAR * szFile)
and not yet within file_types.cpp with the new name
FileTypesDlg_InsertToLV(HWND hListView, LPCWSTR szName, INT iItem, LPCWSTR szFile)
Back then it did not have the iLargeImage variable yet, and it also didn't warn upon rls-cfg-compilation.
Therefore 0.4.10-dev-202-g 698cbc6184 from (#582) is indeed the *guilty revision* (2018-06-06).
It was done in the very first commit of that PR 2fe0eab721
It's bad practice to move and refactor/extend code in functionality within the very same commit, as it makes reviewing the changes much harder.

That assert never fired for the last 6 years, therefore it would have been okay also to strip it together with the variable, but using DBG_UNREFERENCED_LOCAL_VARIABLE(iLargeImage); allows to keep the assert for master.
2024-02-26 13:42:13 +01:00
Hermès Bélusca-Maïto ed7dc31103
[SETUP:REACTOS] Set the default language and keyboard layout at startup
Retrieve the current ambient language and keyboard layout, that has been
chosen in the "General language and keyboard layout selection" dialog
when starting the LiveCD.

A more robust solution will be developed later.
2024-02-26 12:45:43 +01:00
Katayama Hirofumi MZ c0b4db14de
[BOOTDATA][NTUSER] Prepare for CTF IME Part 1 (#6524)
Supporting TIPs...
JIRA issue: CORE-19360
- Add "IME File" registry value
  as "msctfime.ime" at
  HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IMM.
- Modify UserIsCiceroEnabled
  function for preparation of
  CTF IME.
2024-02-24 01:53:16 +09:00
Katayama Hirofumi MZ 3768f0893d
[WIN32SS] Fix const-ness of registry helper functions (#6525)
Improve code quality.
JIRA issue: CORE-19360
- Fix const-ness of the arguments
  of win32k registry helper functions.
- Compact UserIsIMMEnabled function.
2024-02-23 21:26:12 +09:00
Katayama Hirofumi MZ febb589e00
[MSCTFIME] Finish msctfime.cpp (#6523)
Supporting TIPs...
JIRA issue: CORE-19360
- Add some CicBridge methods (stub).
- Implement ImeProcessKey,
  ImeToAsciiEx, ImeSetCompositionString,
  CtfImeEscapeEx, and CtfImeIsIME
  functions.
2024-02-23 19:58:21 +09:00
Katayama Hirofumi MZ 980ebf0694
[MSCTFIME] Implement CtfImeSetActiveContextAlways (#6522)
Supporting TIPs...
JIRA issue: CORE-19360
- Move code of functions.cpp
  into misc.cpp and delete functions.cpp.
- Add implementation to
  CicBridge::GetDocumentManager,
  CicBridge::CreateInputContext, and
  CicBridge::SetActiveContextAlways
  methods.
- Implement NotifyIME,
  CtfImeSetActiveContextAlways, and
  CtfImeCreateInputContext functions.
2024-02-23 17:43:13 +09:00
Katayama Hirofumi MZ 69b08be0e0
[MSCTFIME][CICERO] Half-implement CIMEUIWindowHandler (#6521)
Supporting TIPs...
JIRA issue: CORE-19360
- Add implementation to
  CIMEUIWindowHandler class.
2024-02-23 13:45:00 +09:00
Katayama Hirofumi MZ 353edbd3f4
[MSCTFIME] Add UIComposition Part 2 (#6520)
Supporting TIPs...
JIRA issue: CORE-19360
- Add implementation to
  UIComposition class.
2024-02-23 11:18:52 +09:00
Hermès Bélusca-Maïto 14d3b53cc6
[NTFS] Typo fix: "Steam" -> "Stream" 2024-02-22 22:43:40 +01:00
Hermès Bélusca-Maïto 59f8611321
[WINSRV] Delay-load psapi.dll
Note that it is used only in debug builds in order to display the list
of processes being terminated in the debug log.
2024-02-22 22:41:06 +01:00
Hermès Bélusca-Maïto 2c0af91ba1
[WINSRV] Use ARRAYSIZE() instead of hardcoding buffer size in GetProcessImageFileNameW call 2024-02-22 22:41:05 +01:00
Hermès Bélusca-Maïto e5db85276e
[PSAPI] Don't make the dll depend on MSVCRT
psapi.dll can also used by low-level DLLs, such as winsrv.dll,
therefore it is better to reduce its dependencies.
2024-02-22 22:41:04 +01:00
Hermès Bélusca-Maïto 047f1c3d55
[USETUP] Exchange SetupStartPage and LanguagePage 2024-02-22 22:41:03 +01:00
Katayama Hirofumi MZ 9262df661e
[MSCTFIME] Implement CModeBias (#6515)
Supporting TIPs...
JIRA issue: CORE-19360
- Rename compartment.cpp as
  misc.cpp.
- Implement CModeBias class.
2024-02-22 18:43:08 +09:00
Katayama Hirofumi MZ 7d0b5482f6
[MSCTFIME] Implement CicBridge::OnSetOpenStatus (#6514)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CicInputContext::EscbCompComplete
  method (stub).
- Implement CicBridge::OnSetOpenStatus
  method.
2024-02-22 17:28:40 +09:00
Katayama Hirofumi MZ f53f1334ed
[MSCTFIME][CICERO] Implement CFnDocFeed (#6513)
Supporting TIPs...
JIRA issue: CORE-19360
- Add missing CicInputContext methods.
- Implement CFnDocFeed class.
2024-02-22 15:46:05 +09:00
Serge Gautherie 0086d05007
[EXT2FS] Ext2Read(): Complete request on VCB_VOLUME_LOCKED case (#4770)
CORE-10645

Co-authored-by: Victor Martinez Calvo <vicmarcal@gmail.com>
2024-02-21 07:31:09 -08:00
Katayama Hirofumi MZ a55345be29
[MSCTFIME][CICERO] Implement CDefCompFrameWindow (#6512)
Supporting TIPs...
JIRA issue: CORE-19360
- Add delay link to uxtheme.dll.
- Implement CDefCompFrameGripper,
  CCompFinalizeButton,
  CCompButtonFrameWindow, and
  CDefCompFrameWindow classes.
2024-02-21 10:36:32 +09:00
Hermès Bélusca-Maïto b7ad4a2298
[SETUPLIB][USETUP] Some cleanup for partition code.
- Make the Create*Partition helpers take a size in bytes, not in sectors.

  This allows them to be easier to use by the caller, alleviating the
  need for making the size conversion into sectors. Instead it is done
  internally by the helpers.

- Introduce helper macros to easily retrieve the size of a partition
  entry or a disk in bytes, from their internal representation in number
  of sectors.

- The 'AutoCreate' variable being USETUP-specific, remove it from the
  PARTENTRY structure and use instead a flag set into the 'New' member.

- Rename IsDiskSizeValid to IsPartitionLargeEnough, to better describe
  what the function is for.
2024-02-20 15:52:37 +01:00
Katayama Hirofumi MZ b2ec78673d
[MSCTFIME] Restructuring (#6505)
Improve code flexibility. 3700+
lines of msctfime.cpp was too long.
JIRA issue: CORE-19360
- Split msctfime.cpp code to some
  source files and header files.
2024-02-20 21:11:08 +09:00
Jérôme Gardou 0610bcb3f9 [DBGHELP] Avoid call of wine_get_dos_file_name
CORE-19444
2024-02-20 08:56:53 +01:00
Jérôme Gardou e706083d50 [LIBWINE] Return empty path when given a UNIX path
CORE-19444
2024-02-20 08:56:53 +01:00
Katayama Hirofumi MZ 6bc40d36f8
[CTFMON][MSCTFIME][MSCTF][MSUTB][CICERO] Fix TFUninitLib (#6504)
Supporting the Language bar...
JIRA issue: CORE-19363
- Delete TFInitLib and TFUninitLib
  calls from ctfmon.exe.
- Delete TFUninitLib from Cicero
  library.
- Implement InitDisplayAttrbuteLib
  in msctfime.ime.
- Improve CIC_LIBTHREAD structure.
2024-02-20 14:36:24 +09:00
Joachim Henze 6f91b6c0fe [SHELL32] Tweak formatting and logging
Some style-improvements I wanted to apply before a planned backport.
E.g. The biggest source-file CDefView.cpp in [SHELL32] can be shrinked considerably by stripping some outdated
comments from 10 and more years ago, when this class was still non-OOP and named ShellView.
Less excessive line-lengths also here and there.

In case it is not obvious when reviewing: In the beginning of CDevView.cpp in the declaration-part I just
reduced the indentation-level by 4 spaces for a big block.

Some shell classes were touched during 0.4.15-dev'ing for fixes like the 'unkown'-typo in
0.4.15-dev-6323-g 3854a5d8e9 for example
or missing \n were added to dbgprints like in
0.4.15-dev-4492-g 03422451b3
Touched again here, because I want to port those improvements back,
but don't intend to increase the size in older releases.

The commit looks big, but does consist solely of trivialities.
There is no functional change in this commit, aside the logging ofc.
2024-02-20 02:08:56 +01:00
Hermès Bélusca-Maïto b02dd8eb22
[SETUPLIB] Make the settings' Process* functions take an actual value instead of a GENERIC_LIST
The reason is to avoid enforcing the usage of a specific list
container by the users of the setup library. This is a departure
of what I originally thought would be the best, in commits
92692eae3 (r74553), 8f2c4f7a6 (r75700)

This should actually make some parts of the GUI setup code simpler
(e.g. using the win32 comboboxes to store the list contents).
2024-02-18 16:30:46 +01:00
Katayama Hirofumi MZ fc3eeb61f3
[SDK:LIB] Introduce Cicero static library (#6492)
Refactoring and reduce binary size.
JIRA issue: CORE-19268
- Add cicero static library in sdk/lib/cicero folder.
- Delete sdk/include/reactos/cicero folder.
- Adapt the dependencies to these changes.
- Make ctfmon, msutb, and msctf modules UNICODE.
2024-02-17 09:53:50 +09:00
Oleg Dubinskiy 21e139d1d1
[UXTHEME] Add Ukrainian (uk-UA) translation (#6502)
Addendum to d11582f0e. CORE-5991
2024-02-16 22:50:13 +03:00
Stanislav Motylkov d8adb84641 [UXTHEME] Add Russian (ru-RU) translation
Addendum to d11582f0e. CORE-5991
2024-02-16 21:10:32 +03:00
Stanislav Motylkov d11582f0e2 [UXTHEME] Localize string resources
- Adapt SetWindowResourceText() function from
  `msconfig_new/utils.c` LoadResourceStringEx() function.
- Drop `version.rc` in favor of `uxtheme.rc` since we have forked uxtheme.

Addendum to 118869f69. CORE-5991
2024-02-16 21:10:21 +03:00
Dmitry Borisov e6cd9de3f1
[DC21X4] Recognize all ports emulated by VPC 2007 (#6501) 2024-02-16 16:56:07 +01:00
Adam Słaboń 20efea8fa4
[USBSTOR] Fix PdoHandleQueryInstanceId and increase serial number descriptor size to MAXIMUM_USB_STRING_LENGTH (#6413)
Serial number on some USB devices might exceed the number of 100 characters
(e.g. 120 characters on "SanDisk Ultra 3.2Gen1" pendrive) and cause buffer
overflow, resulting in usbstor.sys crash.

- Use pool allocation for instance ID generation.
  Fixes stack overflow on USB storage devices with large serial number.
- Print the LUN number as a hexadecimal, not as a character.
- Verify the serial number descriptor before using it.
- Increase the max descriptor size for serial number to
  MAXIMUM_USB_STRING_LENGTH. This fixes serial number string truncation.

Based on suggestions by disean and ThFabba.

CORE-17625
2024-02-16 18:48:33 +03:00
Katayama Hirofumi MZ 398201dca4
[NTUSER] Relax condition for IntImmProcessKey (#6500)
* [NTUSER] Loose condition for IntImmProcessKey

* key up

* improve

* improve 2

* improve 3
2024-02-16 21:31:13 +09:00
Katayama Hirofumi MZ e0b67a2990
[MSVIDC32] Keep using CRAM_MAGIC for info structure validation (#6498)
CRAM_MAGIC is being used to validate the info context structure contents
when the driver routines are being called, so partially revert 8be912147.

Just report "MSVC" as the main FourCC handler in CRAM_GetInfo() instead.

CORE-19453 CORE-15382
2024-02-15 17:08:47 +04:00
Stanislav Motylkov fa29a61271 [UXTHEME] nonclient.c: Formatting only 2024-02-15 14:22:02 +03:00
Ethan Rodensky 118869f69c
[UXTHEME] Implement the rest of DrawNCPreview 2024-02-13 21:20:49 +01:00
Katayama Hirofumi MZ 8ea93d2ab2
[REACTOS] Standardize <imm.h> and <immdev.h> (#6493)
Improve header compatibility and
code quality.
JIRA issue: CORE-19268
- Improve <imm.h> and <immdev.h>
  compatibility by correctly choosing
  the items.
- Use <immdev.h> instead of
  <ddk/immdev.h>.
- Move INPUTCONTEXTDX, IMEINFOEX,
  IMEDPI, and CLIENTIMC into
  <imm32_undoc.h>.
- Adapt to these changes.
2024-02-13 20:33:14 +09:00
Andrei Miloiu bdcfc6bc8e
[CRYPTUI] Update Romanian (ro-RO) translation (#6487) 2024-02-12 18:10:25 +01:00
Andrei Miloiu d8d4d8fa4e
[CMD] Update Romanian (ro-RO) translation (#6488) 2024-02-12 17:59:02 +01:00
Andrei Miloiu 16c6f9ecb9
[RAPPS] Improve Romanian (ro-RO) translation (#6489) 2024-02-12 17:58:43 +01:00
Andrei Miloiu 64f0423904
[RASDLG] Update Romanian (ro-RO) translation (#6483) 2024-02-12 17:58:22 +01:00
Andrei Miloiu 61abe81c2e
[FC] Update Romanian translation (#6491) 2024-02-12 17:56:09 +01:00
Katayama Hirofumi MZ 0ac79d7c45
[MSUTB] Improve English (#6473)
Follow-up to #6472. Improve UI/UX.
JIRA issue: CORE-19363
- Improve English text in resource.
- Reduce earth.ico icon file size.
2024-02-12 17:40:57 +09:00