Commit graph

5082 commits

Author SHA1 Message Date
Katayama Hirofumi MZ
1af0dbe36e
[MSUTB][SDK] Use QISearch for QueryInterface (#6631)
Simplify code and reduce binary size.
JIRA issue: CORE-19363
- Use shlwapi!QISearch for QueryInterface
  implementation.
- Add delay link to shlwapi.
- Define QITABENT macro in <shlwapi.h>.
2024-03-17 11:55:19 +09:00
Katayama Hirofumi MZ
1fbf09f531
[RAPPS][SHLWAPI][SDK] Un-escape URL filename (#6626)
Choosing the better filename.
JIRA issue: CORE-19490
- Add UrlUnescapeAndMakeFileNameValid helper function.
- Use UrlUnescapeW and PathIsValidCharW.
- Add PATH_CHAR_CLASS_... flags for PathIsValidCharA/W.
2024-03-17 08:15:08 +09:00
Katayama Hirofumi MZ
cbad6cef24
[SHLWAPI] Implement SHSetDefaultDialogFont (#6620)
Implementing missing features...
JIRA issue: CORE-19278
- Implement SHSetDefaultDialogFont function.
- Add SHSetDefaultDialogFont prototype to
  <shlwapi_undoc.h>.
2024-03-15 21:25:53 +09:00
Oleg Dubinskiy
c6b8638815
[SHELL32] Add transparent icon resource (#6621) CORE-19471
Add transparent 16x16 icon (just small picec of transparent background) as resource and use it for 50, 51, 52, 53 resource IDs.
Define it as IDI_SHELL_NONE_XX for all four IDs appropriately (since the icon displays nothing).
These resources are not used by anything yet, but they are confirmed to exist as resources with 50, 51, 52, 53 IDs in shell32.dll from Windows XP/Server 2003.
This allows to correct the ordering of all other resources those come starting from index 54, and hence it fixes the following icons displayed incorrectly after restoring to default system icon set via Stardock IconPackager 5.1:
- Control Panel folder icon;
- Folder Options item icon in Control Panel;
- My Music special folder in My Documents;
- several File extensions icons (.ini, .txt etc).
The icons are fixed as in the preview of IconPackager app, same in ReactOS itself.
Now only Web Browser item icon on the Desktop remains invalid. All other icons are restored correctly.
CORE-19471
2024-03-14 20:58:12 +01:00
Katayama Hirofumi MZ
2f6b17593f
[BROWSEUI] Delete WS_BORDER and owner-drawing from IDC_SEARCH_COMBOBOX (#6610)
Related to #6609.
Delete WM_BORDER and CBS_OWNERDRAWFIXED
styles from IDC_SEARCH_COMBOBOX.
JIRA issue: N/A
2024-03-13 20:04:39 +09:00
Katayama Hirofumi MZ
458ca7766f [COMDLG32] Improve Japanese (ja-JP) translation, Part 2
Follow-up to 78f6179. CORE-18706
2024-03-12 21:12:43 +09:00
Piotr Hetnarowicz
52d0494242
[SHELL32] Update Polish (pl-PL) translation (#6597)
Addendum to 71285dff48 and 0241b5c4e9. CORE-16956
2024-03-12 15:02:29 +03:00
Stanislav Motylkov
b4c77d377c [SHELL32] Update Russian (ru-RU) translation
Addendum to 71285dff48 and 0241b5c4e9. CORE-16956
2024-03-12 14:56:53 +03:00
Katayama Hirofumi MZ
78f6179051 [COMDLG32] Improve Japanese (ja-JP) translation
CORE-18706
2024-03-12 20:55:47 +09:00
Katayama Hirofumi MZ
9c8924c173
[BROWSEUI] Search: Add WS_BORDER to IDC_SEARCH_COMBOBOX (#6609)
Fix a minor UI problem. IDC_SEARCH_COMBOBOX was border-less.
It was wrong.
JIRA issue: N/A
- Add WS_BORDER window style to IDC_SEARCH_COMBOBOX
  combo box in IDD_SEARCH_DLG dialog resource.
2024-03-12 20:06:24 +09:00
Katayama Hirofumi MZ
bbc455f77c
[COMCTL32] TreeView: Fix selection display on checking checkbox (#6608)
Fix checkboxed treeview selection display.
JIRA issue: CORE-19480
- Make the first argument of TREEVIEW_ToggleItemState non-const.
- Select the item by calling TREEVIEW_SelectItem in TREEVIEW_ToggleItemState.
2024-03-12 18:49:52 +09:00
Katayama Hirofumi MZ
88e1675ace
[SHELL32] CGuidItemContextMenu: Fix pwszCLSID leak (#6607)
Fix memory leak.
JIRA issue: CORE-19478
- Use CoTaskMemFree for pwszCLSID to avoid memory leak
  in CGuidItemContextMenu_CreateInstance function.
2024-03-12 16:10:59 +09:00
Katayama Hirofumi MZ
5aaead3fdb
[SHELL32] Start Menu: Enhance context menu (#6606)
Improve Start Menu usability.
JIRA issue: CORE-19477
- Add CSIDLFromID helper function.
- Return a context menu interface at CShellMenuCallback::OnGetContextMenu.
FIXME: CSIDL_CONTROLS, CSIDL_NETWORK, and CSIDL_PRINTERS context menu
wrongly open My Computer.
2024-03-12 15:58:22 +09:00
Katayama Hirofumi MZ
7b304b5b86
[MSUTB] Implement CLangBarItemList (#6605)
Supporting the Language bar...
JIRA issue: CORE-19363
- Define LANGBARITEMSTATE structure.
- Implement CLangBarItemList class.
2024-03-12 11:40:02 +09:00
Katayama Hirofumi MZ
57592b7e22
[SHELL32] Start Menu Customize: Fix bMustHideAdminTools (#6604)
Follow-up to #6603. Fix a bug in Admin Tools display.
JIRA issue: CORE-16956
Fix the value of bMustHideAdminTools in CMenuSFToolbar::FillToolbar.
2024-03-12 08:26:07 +09:00
Serge Gautherie
6185c66c61
[DESK] SetScreenSaver(): Remove remnant 'DeleteMode' variable (#6593)
Addendum to commit d21e3a1d2 (r58360).
2024-03-11 15:35:34 +01:00
Katayama Hirofumi MZ
acb01cf568
[EXPLORER][SHELL32] Show/hide 'Admin tools' menu (#6598)
Improve Start Menu customization.
JIRA issue: CORE-16956
- Add IsPidlPrograms helper function.
- Specify a PIDL for Programs menu.
- Check the "StartMenuAdminTools" registry value.
- Don't add "Admin Tools" menu item into
  CMenuSFToolbar::FillToolbar if necessary.
2024-03-11 21:58:30 +09:00
Katayama Hirofumi MZ
8bd071a51e
[EXPLORER][SHELL32] Fix and improve Start Menu customization (#6596)
Correct the details of Start Menu customization.
JIRA issue: CORE-16956
- Hide the setting item if the item is restricted.
- Don't change restriction in Explorer.
- Fix Start Menu settings for restriction and registry.
- Fix and simplify code.
2024-03-11 20:18:07 +09:00
Katayama Hirofumi MZ
0241b5c4e9
[EXPLORER][SHELL32] Expand/unexpand Control Panel menu (#6595)
Follow-up to #6594. Improve Start Menu customization.
JIRA issue: CORE-16956
- Add IDS_ADVANCED_EXPAND_CONTROL_PANEL, IDS_ADVANCED_EXPAND_PRINTERS,
  and IDS_ADVANCED_EXPAND_NET_CONNECTIONS resource strings.
- Check the "CascadeControlPanel", "CascadeNetworkConnections", and "CascadePrinters"
  registry values.
- Modify Start Menu by using AddOrSetMenuItem and AddStartMenuItems helper
  functions in CShellMenuCallback::OnGetSubMenu.
2024-03-11 16:19:46 +09:00
Katayama Hirofumi MZ
71285dff48
[EXPLORER][SHELL32] Expand/unexpand My Documents menu (#6594)
Follow-up to #6592. Improve Start Menu
customization.
JIRA issue: CORE-16956
- Add IDS_ADVANCED_EXPAND_MY_DOCUMENTS
  and IDS_ADVANCED_EXPAND_MY_PICTURES
  resource strings.
- Check L"CascadeMyDocuments" and
  L"CascadeMyPictures" registry values.
- Add GetAdvancedValue helper function.
- Implement CreateRecentMenu function.
2024-03-11 13:18:58 +09:00
Katayama Hirofumi MZ
5daab33c59
[EXPLORER][SHELL32][SDK] Show/hide 'Run' menu item (#6592)
Improve Start Menu customization.
JIRA issue: CORE-16956
- Add SHSettingsChanged prototype to
  <undocshell.h>.
- Add SetRestriction helper function.
- Implement showing/hiding Run menu
  item of Start Menu.
2024-03-11 10:54:12 +09:00
Katayama Hirofumi MZ
ede65b88bc
[SHELL32][SHLWAPI][SDK] Implement SHRestricted etc. (#6560)
shell32!SHRestricted is necessary to make shell working well.
JIRA issue: CORE-11515
- Add dll/win32/shell32/wine/PolicyData.h to define the shell policy data.
- Define POLICYDATA structure and SHELL_NO_POLICY constant
  in <shlwapi_undoc.h>.
- Fix shell32!SHRestricted, shell32!SHSettingsChanged,
  shlwapi!SHGetRestriction, and shlwapi!SHRestrictionLookup functions.
2024-03-11 08:29:04 +09:00
Katayama Hirofumi MZ
0c65ceca3c
[MSCTF] Implement GetHKLSubstitute (#6589)
Implementing the back-end of
the Language bar...
JIRA issue: CORE-19361
- Rename GetLocaleInfoString
  as GetHKLName.
- Implement GetHKLSubstitute
  helper function.
- Fix GetHKLDesctription function.
2024-03-10 15:37:42 +09:00
Katayama Hirofumi MZ
fcbcc5b30c
[KBSWITCH][INPUT][SDK] Use <imm32_undoc.h>'s IS_IME_HKL (#6588)
Unify the private IMM32 macro
definitions. Refactoring...
JIRA issue: CORE-19361
- Define IS_SPECIAL_HKL macro
  in <imm32_undoc.h>.
- Use IS_IME_HKL and
  IS_SPECIAL_HKL macros of
  <imm32_undoc.h>,
  in kbswitch and input modules.
2024-03-10 12:15:56 +09:00
Katayama Hirofumi MZ
e25d7d724d
[MSCTF][SDK] Implement multi-language handling (#6587)
Implementing the back-end of
the Language bar...
JIRA issue: CORE-19361
- Add mlng.cpp and mlng.h.
- Modify msctf.spec.
- Implement MLNGINFO
  structure and CStaticIconList
  class.
- Implement TF_InitMlngInfo,
  TF_MlngInfoCount,
  TF_InatExtractIcon,
  TF_GetMlngIconIndex, and
  TF_GetMlngHKL functions.
2024-03-10 11:35:05 +09:00
Katayama Hirofumi MZ
efa86fff9f
[MSCTFIME] Implement CicBridge::Notify (#6586)
Supporting TIPs...
JIRA issue: CORE-19360
- Implement CicBridge::Notify
  method.
- Implement CicBridge::
  SetCompositionString method.
- Add some CicInputContext
  methods (stub).
2024-03-09 12:57:50 +09:00
Katayama Hirofumi MZ
1ee014525c
[MSCTFIME] Implement CicBridge::EscapeKorean (#6585)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CicBridge::EscHanjaMode.
- Add code to CicBridge::EscapeKorean.
2024-03-09 11:59:37 +09:00
Katayama Hirofumi MZ
299abf7c87
[MSCTFIME][SDK] Add CInputContextOwner (stub) (#6584)
Supporting TIPs...
JIRA issue: CORE-19360
- Add ITfContextOwner
  interface to "msctf.idl".
- Stub-implement
  CInputContextOwner class.
2024-03-08 20:43:32 +09:00
Stanislav Motylkov
a69b0c9fd5 [MAIN] Fix icon identifiers and their order
Additionally:
- Reuse printers and fonts folder icons from shell32,
  the same way as it was done in c0dbde0436.
  The printers folder icon was missing here though.
- Fix "look_key" => "lock_key" typos.

This fixes Administrative Tools and Fonts Folder icons in Control Panel
when being restored to defaults with Stardock IconPackager 5.1.

CORE-19471
2024-03-06 19:18:18 +03:00
Hermès Bélusca-Maïto
3a49e26f13
[KERNEL32][PSDK][NTVDM][CONSRV] Use now-documented ReadConsoleInputEx() flag names.
Addendum to commit b8b8819c7 (r60920)

ReadConsoleInputEx() and its flags used to be undocumented.
In the meantime they became documented on MSDN, see:
https://learn.microsoft.com/en-us/windows/console/readconsoleinputex

We can therefore adopt these now-documented flag names.
2024-03-06 12:28:27 +01:00
Oleg Dubinskiy
c0dbde0436
[MYDOCS] Add missing icons expected by 3rd party applications (#6576)
Add "My Documents" and "My Pictures" icons, with 100 and 101 identifiers
accordingly. They are duplicating the icons from shell32.

This fixes My Documents desktop icon becoming blank when reverting back
to the system default icons after applying 3rd party icon set in Stardock
IconPackager 5.1, and also fixes icons of some items in the application
preview dialog.

It's confirmed that mydocs.dll on Windows XP SP3 and Server 2003 SP2
includes these two icon resources with the said identifiers.
The icons there are being an exact copy from shell32 as well.

CORE-19471 CORE-14758
2024-03-06 13:56:26 +03:00
Katayama Hirofumi MZ
361bf39872
[BROWSEUI] Fix CExplorerBand Right-Dragging menu (#6579)
Display correct menu on right-dragging
an item in Folder explorer bar to Desktop.
JIRA issue: CORE-19474
In CExplorerBand::OnTreeItemDragging
method:
- Use GetAttributesOf to get the
  attributes of a folder item.
- Use correct dwEffect value for
  DoDragDrop call.
2024-03-06 08:11:32 +09:00
Katayama Hirofumi MZ
1cc721e6d5
[NTDLL][NTDLL_APITEST] Add LdrLoadDll testcase (#6563)
JIRA issue: CORE-6585
- Add one comment into LdrpLoadDll function.
- Add LdrLoadDll testcase.
2024-03-06 07:58:07 +09:00
Andrei Miloiu
4dc4ec2fe4
[MSHTML] Update Romanian (ro-RO) translation (#6519) 2024-03-05 04:46:29 +01:00
Katayama Hirofumi MZ
49b2b1dab1
[SHELL32] Use STDMETHOD macro and keyword override (#6570)
For simplicity and short typing.
JIRA issue: CORE-19469
- Replace "virtual HRESULT STDMETHODCALLTYPE
  m" with "STDMETHOD(m)" (m is a method name).
- Replace "virtual t STDMETHODCALLTYPE m" with
  "STDMETHOD_(t, m)" (t is a type. m is a method
  name).
- Use "override" keyword as possible.
- CDefView should inherit IShellView3 due to
  override CreateViewWindow3 method.
- Fix CDefView::CreateViewWindow3 (parameter
  prcView is const RECT *, not LPRECT).
2024-03-05 08:43:39 +09:00
Katayama Hirofumi MZ
bb297bc351
[BROWSEUI] Use STDMETHOD macro and keyword override (#6569)
For simplicity and short typing.
JIRA issue: CORE-19469
- Replace "virtual HRESULT 
  STDMETHODCALLTYPE m"
  with "STDMETHOD(m)"
  (m is a method name).
- Replace "virtual t
  STDMETHODCALLTYPE m"
  with "STDMETHOD_(t, m)"
 (t is a type. m is a method name).
- Use "override" keyword as possible.
2024-03-05 00:53:11 +09:00
Katayama Hirofumi MZ
de8e1553ec
[NTOBJSHEX] Use STDMETHOD macro and keyword override (#6566)
For simplicity and short typing.
JIRA issue: CORE-19469
- Replace "virtual HRESULT 
  STDMETHODCALLTYPE m" with
  "STDMETHOD(m)" (m is a
  method name).
- Replace "virtual t
  STDMETHODCALLTYPE m"
  with "STDMETHOD_(t, m)"
  (t is a type. m is a method name).
- Use "override" keyword as possible.
2024-03-05 00:34:21 +09:00
Oleg Dubinskiy
eb96d377d1
[SHELL32] Allow custom shortcut overlay icon (#6419)
Use correct icon index in SIC_OverlayShortcutImage() to properly load
shortcut overlay icon from registry instead of always using default icon.
This allows to use custom shortcut icon set by user, in case it was
specified there.

As FIXME comment stated, the icon indexes were not implemented in the far
past, so this workaround was badly required. But now they are implemented,
so no need to always use default resource from shell32, enable the correct
code instead.

Also adapt this to CShellLink::CreateShortcutIcon() when the shortcut icon
is being changed in its properties dialog, as well as in CNewMenu class
when displaying menu items for creating a new folder or a shortcut.

Addendum to f9a5344254. CORE-14758
2024-03-04 16:30:43 +03:00
Katayama Hirofumi MZ
b2d56cf364
[NETSHELL] Use STDMETHOD macro and keyword override (#6568)
For simplicity and short typing.
JIRA issue: CORE-19469
- Replace "virtual HRESULT STDMETHODCALLTYPE m"
  with "STDMETHOD(m)" (m is a method name).
- Replace "virtual t STDMETHODCALLTYPE m" with
  "STDMETHOD_(t, m)" (t is a type. m is a method
  name).
- Use override keyword as possible.
2024-03-02 21:38:52 +09:00
Katayama Hirofumi MZ
24fb46c405
[ACPPAGE] Use STDMETHOD macro and keyword override (#6567)
For simplicity and short typing.
JIRA issue: CORE-19469
- Replace "virtual HRESULT STDMETHODCALLTYPE
  m" with "STDMETHOD(m)" (m is a method name).
- Replace "virtual t STDMETHODCALLTYPE m" with
  "STDMETHOD_(t, m)" (t is a type. m is a method
  name).
- Use "override" keyword as possible.
2024-03-02 21:37:05 +09:00
Katayama Hirofumi MZ
c07eb9fb1b
[APPWIZ] Shortcut: Rename if there is a conflict (#6556)
Follow-up to #6550. Avoid same name
overwriting.
JIRA issue: CORE-5866
- Rename the filename if there was duplicate.
- Simplify CreateShortcut function.
- Rename IDC_SHORTCUT_LOCATION as
  IDC_LINK_LOCATION to resolve name conflict
  with shell32/shresdef.h.
2024-03-01 08:42:59 +09:00
Joachim Henze
0a587b9ccd
[NETCFGX] Proper accelerators for en-US and de-DE (#6199)
proper accelerators for en-US (like english 2k3sp2)
proper accelerators for de-DE (like german XPSP3)
slightly improved accelerators for fr-FR
and mark existing accelerator collisions for all other languages with FIXME-comments.

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com> for ukrainian header
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org> for fr-FR
2024-02-29 22:17:27 +01:00
Piotr Hetnarowicz
d325c67223
[APPWIZ] Update Polish (pl-PL) translation (#6559) 2024-02-29 21:20:48 +03:00
Hermès Bélusca-Maïto
ea3e66d748
[SHELL32:WINE] Improve ROS-specific registry opening in SHRestricted() (#4275) 2024-02-29 13:29:10 +01:00
Hermès Bélusca-Maïto
9513d18f93
[SHELL32:WINE] Update the table of policy restrictions (#4275)
Our shell32's wine/shpolicy.c file, synced with Wine code (and which is
currently in master still up to date with Wine!), contains outdated or
incomplete definitions that date back from Windows 98/2000.

Update the restrictions with those from shell32 v6.0 of Windows Server 2003 SP2.

References:
https://www.geoffchappell.com/studies/windows/shell/shell32/api/util/restrictions.htm
https://docs.microsoft.com/en-us/windows/win32/api/shlobj_core/ne-shlobj_core-restrictions

"NoLogoff": http://systemmanager.ru/win2k_regestry.en/93519.htm
"StartMenuLogOff": http://systemmanager.ru/win2k_regestry.en/92884.htm
"GreyMSIAds": http://systemmanager.ru/win2k_regestry.en/93177.htm
2024-02-29 13:29:08 +01:00
Hermès Bélusca-Maïto
ea8ce25944
[SHELL32:WINE] Add Wine-version info to the Wine's shell32_main header. 2024-02-29 13:27:33 +01:00
Hermès Bélusca-Maïto
52dd07febd
[SHELL32:WINE] Make the wine-imported files include shell32_main.h 2024-02-29 13:26:46 +01:00
Hermès Bélusca-Maïto
72b405549c
[SHELL32] SHAddToRecentDocs(): Just use SHRestricted() to get the NoRecentDocsHistory policy...
... instead of redoing the manual work.
2024-02-29 12:54:10 +01:00
Hermès Bélusca-Maïto
fc1712e494
[SHELL32] Set a sane SHELL32 versioning, when compiled for NT 5.2 and NT 6+.
i.e. don't keep using version from Windows 2000...

Values taken from
https://www.geoffchappell.com/studies/windows/shell/shell32/history/index.htm
2024-02-29 12:38:50 +01:00
Katayama Hirofumi MZ
d0e29248e3 [SHELL32] Update Japanese (ja-JP) translation
Follow-up to #6544. CORE-18706
2024-02-29 09:23:46 +09:00