Commit graph

2953 commits

Author SHA1 Message Date
Ratin Gao 1cf8759d69
[KERNEL32][KERNEL32_VISTA][KERNEL32_APITEST] Implement and export NT6+ firmware API (#6580)
- Implement `GetFirmwareType` and improve existing API test for it
- Move (Get/Set)FirmwareEnvironmentVariableEx(A/W) to kernel32_vista_static and export them when NT version >= 6.2

Addendum to 4c8a2a8815. CORE-11954
2024-03-30 15:46:34 +03:00
Whindmar Saksit 1408de02ce
[SHELL32] SHOpenFolderAndSelectItems should handle children correctly (#6151)
- Free pidl from ILCombine.
- ILGetNext will never return NULL on valid input, it is not the correct way to check.
2024-03-23 22:24:04 +01:00
Andrei Miloiu c9bab6be25
[NET][MC] Update Romanian (ro-RO) translation for message table (#6506) 2024-03-23 21:07:05 +01:00
Serge Gautherie a8c52fa165
[RSYM/x64] Sync UNW_FLAG_* values (#6653)
Follow-up to PR #6641 and commit d45876b81
2024-03-23 15:13:23 +01:00
Timo Kreuzer 2f03b146da [CRT] intrin_x86.h: Use movsl instead of movsd to fix a GCC 13 warning 2024-03-19 07:44:40 +01:00
Timo Kreuzer 01c05f33dc [RTL/x64] Fix a GCC compiler warning 2024-03-19 07:42:35 +01:00
Katayama Hirofumi MZ 10d9e9de05
[SHELL32][SDK] Implement RealShellExecute(,Ex)(A,W) (#5849)
Implementing missing features...
JIRA issue: CORE-19278
- Modify shell32.spec.
- Implement RealShellExecuteA, RealShellExecuteW, RealShellExecuteExA,
  and RealShellExecuteExW functions.
- Add the prototypes to <undocshell.h>.
- Modify SEE_MASK_... constants.
2024-03-19 08:58:07 +09:00
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 dc4992ce4a
[TOOLS] gen_baseaddress.py: Add '.ime' to ALL_EXTENSIONS (#6628)
We have dll/ime/msctfime for the DLL
file msctfime.ime.
JIRA issue: N/A
Add '.ime' to ALL_EXTENSIONS.
2024-03-16 19:37:26 +09:00
Katayama Hirofumi MZ 73d0d24d67
[CMAKE] Update sdk/cmake/baseaddress(,_msvc).cmake (#6627)
Follow-up to #6624 (fd96666). ReactOS got rekt in that PR
because kernel32.dll got so larger.
Fix base addresses of DLLs to boot successfully. Sorry.

(dll/ntdll/ldr/ldrutils.c:1423) Illegal DLL relocation!
C:\ReactOS\System32\ntdll.dll overlaps kernel32.dll
*** Fatal System Error: 0xc0000269

Proposed changes
After latest build:
python gen_baseaddress.py C:\Users\katahiromz\reactos-1\output-VS-i386
python gen_baseaddress.py C:\Users\katahiromz\reactos-1\output-MinGW-i386
2024-03-16 13:46:10 +09:00
Katayama Hirofumi MZ fd9666630e
[SDK][MC] errcodes.mc: Add Japanese (ja-JP) translation (#6624)
Localize the error messages.
JIRA issue: CORE-18706
Modify errcodes.mc for Japanese localization.
2024-03-16 00:11:53 +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
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
Hermès Bélusca-Maïto 352b7f6785
[SDK:NDK/XDK] Sync NtCurrentTeb() definitions between NDK and PSDK winnt.h (#6542)
The definitions in the NDK inline_ntcurrentteb.h and psfuncs.h files are
synced togther with those of winnt.h (in the winnt_old.h generator file).

See commits c1929445d (r49627) and 925c587c8 (r56318).

IMPORTANT NOTE: The ARM64 definition does not exist yet in our headers!
2024-03-10 17:10:50 +01:00
Hermès Bélusca-Maïto cec7adb97f
[SDK:NDK/XDK] Adjust the KeGetPcr() ARM definition (#6542)
Re-enable the KIPCR() macro and use it for KeGetPcr()
and KeGetCurrentProcessorNumber() definitions.
2024-03-10 17:09:36 +01:00
Hermès Bélusca-Maïto bf9cac8a67
[SDK:NDK/XDK] Remove x86 KeGetPcr() definition from the DDK (#6526)
The official MS DDK/WDK does not expose KeGetPcr() for x86, so do
not expose it there as well. Use instead the private NDK definition.

If it were exposed in the DDK/WDK, it would have to be a
multiprocessor-compatible definition.

Note that the broken definition was working only in single-processor
mode, using the PCR static memory pointer value.
The official MS DDK/WDK exposes KeGetPcr() as an alias to such a
PCR value only for IA64, MIPS and PPC, which is of course not great.
2024-03-10 16:55:44 +01: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 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
Hermès Bélusca-Maïto e1d334794a
[FREELDR][ROSSYM(_NEW)] Remove last vestigial references to "NTOSAPI".
This was a MinGW-specific, non-MS-DDK/WDK-compatible define, that was
used to mark NTOS kernel/hal exports, instead of NTSYSAPI etc.

We have since fixed that, and changed the way Freeldr (and rossym)
manages these, see commits:
186c8b72d (r16028), 51f0dfd30 (r17651) and 526efd2ee (r24359)
2024-03-07 13:35:08 +01:00
Timo Kreuzer c5f93c50dd [CMLIB] Quick-fix a pool buffer overrun
A more complete fix is in PR #6064, but this needs to be fixed now.
2024-03-06 19:04:20 +01: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
Katayama Hirofumi MZ 0d43ce7879
[USER32_APITEST][SDK] Add GW_ENABLEDPOPUP testcase (#6564)
JIRA issue: CORE-6920
- Add GW_ENABLEDPOPUP constant to
  <winuser.h>.
- Add GW_ENABLEDPOPUP testcase.
2024-03-06 07:52:30 +09:00
Vitaly Orekhov c30b284373
[ATL] Implement CSimpleStringT::Preallocate (#6574)
Used in `ATL::CStringW` and `ATL::CStringA`, for example:

```
ATL::CStringW cswItemText = "";
cswItemText.Preallocate(64);

SendDlgItemMessageW(pdis->CtlID, LB_GETTEXT, pdis->itemID, reinterpret_cast<LPARAM>(cswItemText.GetBuffer()));
cswItemText.ReleaseBuffer();
```

This public function is used to allocate memory for the string via private PrepareWrite, but it's missing somehow. Now it shouldn't be.
2024-03-05 11:42:27 +03: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 0d8a6a30cc
[PSDK] Remove unused file; it doesn't also exist in official MS PSDK 2024-02-28 17:23:17 +01: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 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
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
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
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
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
Katayama Hirofumi MZ 019872dd12
[SDK] cicuif.h: Implement CUIFMenuItemSeparator::OnPaintO10 (#6490)
Supporting the Language bar...
JIRA issue: CORE-19363
- Implement CUIFMenuItemSeparator::OnPaintO10
  method.
- Implement CUIFSchemeDef::GetCtrlFaceOffset
  method.
- Implement CUIFWindow::PaintObject method.
- Implement cicDrawMaskBmpOnDC function.
2024-02-12 17:40:09 +09:00
Katayama Hirofumi MZ f8cb6458e4
[MSUTB][SDK] Add CTipbarWnd Part 4 (#6478)
Supporting the Language bar...
JIRA issue: CORE-19363
- Add implementation to CTipbarWnd.
- Implement GetLibTls function.
2024-02-11 17:21:14 +09:00
Katayama Hirofumi MZ 23db429e42
[MSCTF][MSUTB][SDK] Add CTipbarItem and CTipbarThread (#6477)
Supporting the Language bar...
JIRA issue: CORE-19363
- Modify msctf.spec.
- Add CTipbarThread and
  CTipbarItem classes.
2024-02-11 13:24:41 +09:00
Katayama Hirofumi MZ 152af475b1
[MSUTB][SDK] Implement SetRegisterLangBand (#6471)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add some helper functions.
- Implement SetRegisterLangBand
  function.
2024-02-10 16:04:33 +09:00
Katayama Hirofumi MZ afaa05e366
[MSUTB][SDK] Add CTipbarWnd Part 2 (#6466)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add implementation to
  CTipbarWnd class.
- Add delay link to uxtheme.dll.
2024-02-09 18:28:24 +09:00
Katayama Hirofumi MZ f8b62abf16
[MSUTB][SDK] Add CTipbarWnd (stub) (#6465)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add CTipbarWnd class (stub;
  empty implementation).
2024-02-09 15:04:45 +09:00
Hermès Bélusca-Maïto 864aed6bcd
[SDK:CRT] malloc.h: Use MS PSDK-compatible guard name instead of MinGW one.
Use the MS PSDK-compatible name _INC_MALLOC, instead of the MinGW one
_MALLOC_H_, so that code that may depend on this to determine whether
malloc.h functions are defined, can compile without problems.
2024-02-08 17:48:58 +01:00
Katayama Hirofumi MZ 3581a79ebf
[SDK] cicutf.h: s/OnPointingEnded/OnMouseOutFromWindow/ (#6461)
Supporting Language Bar...
JIRA issue: CORE-19363
Renaming method.
2024-02-08 14:13:59 +09:00
Katayama Hirofumi MZ 7dd3308828
[MSUTB][SDK] Add CUTBContextMenu (#6452)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add some resource strings.
- Half-implement CUTBContextMenu
  class.
2024-02-07 16:47:10 +09:00
Katayama Hirofumi MZ c9c5b3d3ae
[MSUTB][SDK] Add CModalMenu (#6451)
Supporting Language Bar...
JIRA issue: CORE-19363
- Fix the return value type of
  CUIFObject::Initialize method.
- Implement CModalMenu class.
2024-02-07 14:11:21 +09:00
Katayama Hirofumi MZ 0bce79a50b
[MSCTF][MSUTB][SDK] Add CLBarInatItem (#6447)
Supporting Language Bar...
JIRA issue: CORE-19363
- Modify msctf.spec.
- Add some helper functions.
- Half-implement CLBarInatItem class.
- Add some TF_... function prototypes
  to "msctf.idl".
2024-02-06 21:39:32 +09:00
Katayama Hirofumi MZ 34705d1a5d
[MSUTB][SDK] Add CLBarItemBase (#6444)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement CLBarItemBase class.
- Add TF_E_... flags to "msctf.idl".
2024-02-06 12:21:46 +09:00
Katayama Hirofumi MZ c1dfd580ab
[MSUTB][SDK] Add InitFromReg (#6425)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add many global variables
  to add UTB settings.
- Add IsSkipRedrawHKL, IsBiDiLocalizedSystem,
  InitSkipRedrawHKLArray helper functions.
- Add InitFromReg helper function to
  load the settings from registry.
- Add CicRegKey::EnumValue method.
2024-01-31 20:32:21 +09:00
Katayama Hirofumi MZ 5e4fe2cf40
[MSCTF][MSUTB][SDK] Add CTrayIconWnd and CMainIconItem (#6424)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add CTrayIconWnd, CMainIconItem,
  and CButtonIconItem classes.
- Modify msctf.spec for TF_GetLangIcon
  function.
- Add main icon IDI_MAINICON
  ("res/earth.ico").
2024-01-31 16:52:02 +09:00
Katayama Hirofumi MZ 1311537435
[MSUTB][SDK] Implement DoCloseLangbar (#6423)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement GetGlobalCompartment function.
- Implement GetGlobalCompartmentDWORD and
  SetGlobalCompartmentDWORD helper functions.
- Implement TurnOffSpeechIfItsOn and
  DoCloseLangbar functions.
2024-01-31 12:21:09 +09:00
Katayama Hirofumi MZ 934cd46df5
[MSUTB][SDK] Add Language Bar dialogs (#6422)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add IDD_CLOSELANGBAR and
  IDD_MINIMIZELANGBAR
  resource dialogs.
- Implement CUTBLangBarDlg class.
- Implement CUTBCloseLangBarDlg
  and CUTBMinimizeLangBarDlg
  classes.
2024-01-30 15:38:53 +09:00
Katayama Hirofumi MZ 1001b59a06
[MSUTB][SDK] Add CUTBMenuWnd and CUTBMenuItem (#6420)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement CUTBMenuWnd and
  CUTBMenuItem classes.
- Add IDS_MENUWND and
  IDS_LEFTCLICK resource strings.
2024-01-29 18:38:59 +09:00
Katayama Hirofumi MZ 6b0ee735c7
[SDK] cicuif.h: Add CUIFMenuItemSeparator (#6411)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add CUIFMenuItemSeparator class.
- Implement CUIFMenu::InsertSeparator
  method.
2024-01-25 12:35:04 +09:00
Katayama Hirofumi MZ a88c85259b
[SDK] cicuif.h: Fix CUIFMenuItem::OnPaintO10 (#6410)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::OnPaintO10 method.
2024-01-25 12:09:56 +09:00
Katayama Hirofumi MZ 6634f66e0e
[SDK] cicuif.h: Fix CUIFMenuItem::OnPaintDef (#6409)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::OnPaintDef method.
2024-01-25 12:09:02 +09:00
Katayama Hirofumi MZ 927b183aa9
[SDK] cicuif.h: Fix CUIFMenuItem::DrawUnderline (#6406)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::DrawUnderline
method.
2024-01-24 19:13:24 +09:00
Katayama Hirofumi MZ 3ac5de4102
[SDK] cicuif.h: Fix CUIFMenu::OnKeyDown (#6408)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenu::OnKeyDown
method.
2024-01-24 17:52:36 +09:00
Katayama Hirofumi MZ 76c898ca8e
[SDK] cicuif.h: Fix CUIFMenuItem::InitMenuExtent (#6407)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::InitMenuExtent
method.
2024-01-24 17:51:59 +09:00
Katayama Hirofumi MZ 3056f253e4
[SDK] cicuif.h: Fix CUIFMenu::SetMenuFont (#6403)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenu::SetMenuFont
method.
2024-01-24 15:57:45 +09:00
Katayama Hirofumi MZ f465035cd9
[SDK] cicuif.h: Fix CUIFMenuItem::Init (#6405)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::Init method.
2024-01-24 14:42:17 +09:00
Katayama Hirofumi MZ 21e759735e
[SDK] cicuif.h: Fix CUIFMenuItem::DrawBitmapProc (#6404)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::DrawBitmapProc
method.
2024-01-24 14:41:46 +09:00
Katayama Hirofumi MZ f170276fd2
[SDK] cicuif.h: Fix CUIFMenu::InitShow (#6402)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenu::InitShow method.
2024-01-24 14:41:04 +09:00
Katayama Hirofumi MZ f3ae595df9
[SDK] cicuif.h: Fix CUIFBalloonWindow::CreateRegion (#6401)
Implementing Language Bar...
JIRA issue: CORE-19363
- Implement CUIFBalloonWindow::CreateRegion
  method.
2024-01-24 14:40:31 +09:00
Katayama Hirofumi MZ 062890ac5f
[SDK] cicuif.h: Add CUIFMenu and CUIFMenuItem (#6400)
Supporting Language Bar...
JIRA issue: CORE-19363
- Half-implement CUIFMenu
  and CUIFMenuItem.
- Reduce lines.
2024-01-23 20:33:43 +09:00
Katayama Hirofumi MZ 73ba03add1
[SDK] cicuif.h: Add CUIFBalloonButton and CUIFBalloonWindow (#6384)
Supporting TIPs...
JIRA issue: CORE-19360
- Implement CUIFBalloonButton class.
- Half-implement CUIFBalloonWindow class.
2024-01-18 19:25:46 +09:00
Hermès Bélusca-Maïto feb67576dd
[NTOS:CM][CMLIB] In PE mode, allow registry hives (except system ones) to use read/write access.
+ Improve related comments.

Registry hives are opened in shared read access when NT is loaded in PE
mode (MININT) or from network (the hives residing on a network share).
This is true in particular for the main system hives (SYSTEM, SOFTWARE,
DEFAULT, ...).

However, in PE mode, we can allow other hives, e.g. those loaded by the
user (with NtLoadKey) to be loaded with full read/write access, since we
boot from a local computer.
2024-01-17 22:13:03 +01:00
Hermès Bélusca-Maïto 76f1da5631
[NTOS:CM][CMLIB] Minor code styling
In particular remove some extra-parentheses around single code tokens,
and replace few "DPRINT1 + while (TRUE);" by UNIMPLEMENTED_DBGBREAK.

+ Improve some comments.
2024-01-17 22:09:37 +01:00
Whindmar Saksit d41dec2e07
[SHELL32][CONTROL] Added basic IOpenControlPanel support (#6248)
Add a basic IOpenControlPanel implementation that supports Vista canonical registry names.

Implements `control.exe /name company.name [/page id]` and `IOpenControlPanel`
handling of Vista-style canonical registry names.

The documented `Microsoft.*` names don't work because they are simply not
in our registry but "[Executable Control Panel Items](https://learn.microsoft.com/en-us/windows/win32/shell/how-to-register-an-executable-control-panel-item-registration-)" registered by 3rd-party ISVs
will function correctly in control.exe and the COM API.

Notes:

- `IOpenControlPanel` is implemented in CControlPanelFolder.cpp because
  it is supposed to have tighter integration with that shell folder than
  it does in this PR.

- `IOpenControlPanel` is also supposed to handle .cpl files with canonical
  names registered under [`Extended Properties`](https://learn.microsoft.com/en-us/windows/win32/shell/how-to-register-dll-control-panel-item-registration-#step-3) but the control panel folder
  does not implement `IShellFolder2::GetDetailsEx` yet, so it will have to wait.

- These "Executable Control Panel Items" are also supposed to be displayed
  in the control panel itself but this PR does not address that. The
  `ITEMIDLIST` format for those needs investigation...

- The Wow64 handling is perhaps not correct but it does not matter,
  `ShellExecuteEx` gets to deal with whatever is in the `...\shell\open\command` key.
  `CControlPanelFolder` would have to take more care when it starts
  reading those keys so it knows when to append "(32-bit)" to the display name.

- `%s%s` because .cpl canonical names don't have the `::` prefix according
  to Geoff Chappell.

- Always returns `CPVIEW_CLASSIC` because our `CControlPanelFolder` does
  not support the category view.
2024-01-17 17:07:21 +01:00
Serge Gautherie 2505489d29
[MKISOFS] CMakeLists.txt: Add a check for Clang and its version (#6369)
GCC 8.4 and Clang 13.0.1:
`cc1: note: unrecognized command-line option ‘-Wno-deprecated-non-prototype’ may have been intended to silence earlier diagnostics`

Addendum to commit 4e3bf252d
2024-01-17 16:32:46 +01:00
Katayama Hirofumi MZ ae54529024
[SDK] cicuif.h: Add CUIFWndFrame (#6370)
Supporting TIPs...
JIRA issue: CORE-19360
Implement CUIFWndFrame class.
2024-01-17 12:42:18 +09:00
Adam Słaboń 823fdb19d7
[SDK][VIRTIO][NETKVM] Make VirtIO a separate library (#6280)
* [SDK][VIRTIO][NETKVM] Make VirtIO a separate library

This is to avoid code duplication when more VirtIO drivers are brought in. This will also be used on development of a VirtIO XDDM GPU Driver.

* [VIRTIO] Sync with upstream
2024-01-16 17:55:35 -08:00
Katayama Hirofumi MZ 6294f5b3ff
[SDK] cicuif.h: Fix CUIFSchemeDef::DrawCtrlEdge (#6347)
Supporting TIPs...
JIRA issue: CORE-19360
Implement CUIFSchemeDef::DrawCtrlEdge method.
2024-01-15 10:36:42 +09:00
Katayama Hirofumi MZ 1156249d63
[SDK] cicuif.h: Fix CUIFSchemeDef::DrawCtrlBitmap (#6348)
Supporting TIPs...
JIRA issue: CORE-19360
Implement CUIFSchemeDef::DrawCtrlBitmap method.
2024-01-15 10:36:12 +09:00
Serge Gautherie 2c895c986f
[CMAKE][WIN32U_APITEST] Remove 3 useless 'set_module_type(... IMAGEBASE default)' (#6328)
And add an explicit documentation comment.

Addendum to commit 2b7246fd3.
2024-01-14 16:07:00 +01:00
Timo Kreuzer 92db51883a [MSVCRT] Add asm wrapper around RtlUnwind for Wine code
This is needed, because Wine code expects RtlUnwind to restore the non-volatile registers, before returning, but ours / the native one doesn't do that.
Should fix CORE-19392 and CORE-19397
2024-01-13 19:39:23 +02:00
Katayama Hirofumi MZ d6b5c19233
[SDK] cicuif.h: Add CUIFToolbarButton (#6338)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFToolbarButton class.
2024-01-13 18:21:03 +09:00
Katayama Hirofumi MZ fa2715fb6b
[SDK] cicuif.h: Add CUIFToolbarMenuButton (#6336)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFToolbarMenuButton class.
- Add CUIFToolbarButtonElement class.
2024-01-13 16:02:36 +09:00
Katayama Hirofumi MZ f51258ae51
[SDK] cicuif.h: Reduce magic numbers (#6334)
Improve human readability.
JIRA issue: CORE-19360
- Define some flags of m_style.
- Define some flags of dwDrawFlags.
- Reduce some magic numbers.
2024-01-12 13:40:28 +09:00
Katayama Hirofumi MZ 4287f07c75
[SDK] cicuif.h: Add CUIFGripper (#6332)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFGripper class.
2024-01-11 22:09:19 +09:00
Adam Słaboń 8d1beca119
[NTOSKRNL_VISTA] IoQueueWorkItemEx: Pass new context for the queue (#6276)
Passing parameter-provided context results in missing WorkerRoutine and WorkItem when callback is executed.
2024-01-11 12:29:53 +01:00
Katayama Hirofumi MZ 74ff3844cc
[SDK] cicuif.h: Add CUIFButton2 (#6331)
Supporting TIPs...
JIRA issue: CORE-19360
- Improve CUIFScheme class.
- Add CUIFButton2 class.
2024-01-11 18:44:43 +09:00
Katayama Hirofumi MZ 5719896650
[SDK] cicuif.h: Refactoring Part 2 (#6330)
Supporting TIPs...
JIRA issue: CORE-19360
- Fix some mistakes of
  CUIFButton::OnMouseIn and
  CUIFButton::OnMouseOut.
- Fix some mistakes of CUIFObject
  and CUIFWindow.
2024-01-10 13:13:21 +09:00
Katayama Hirofumi MZ d3ae8258c2
[SDK] cicuif.h: Add CUIFSchemeDef (#6329)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFSchemeDef class.
- Improve CUIFWindow class.
2024-01-10 11:25:59 +09:00
Katayama Hirofumi MZ 8b5c5fb913
[SDK] cicuif.h: Refactoring (#6321)
Improve readability and reduce code.
JIRA issue: CORE-19268
- Delete cicSetLayout function and
  use gdi32!SetLayout function directly.
- Don't use ::SetRect and ::SetRectEmpty.
- s/CUIFButton::m_dwUnknown10/CUIFButton::m_bPressed/.
- Reduce lines.
2024-01-10 03:05:38 +09:00
Katayama Hirofumi MZ 0b3756044f
[MSCTFIME][MSUTB][SDK] cicuif.h: Add CUIFButton (#6320)
Supporing TIPs...
JIRA issue: CORE-19268
- Add CUIFButton, CUIFSolidBrush, and CUIFIcon classes.
2024-01-09 16:57:30 +09:00
Katayama Hirofumi MZ 4ee54e2519
[SDK] cicuif.h: Add CUIFToolTip (#6317)
Supporting TIPs...
JIRA issue: CORE-19360
- Half-implement CUIFToolTip.
- Strengthen some classes.
2024-01-08 16:44:38 +09:00
Katayama Hirofumi MZ 7898297c53
[SDK] cicuif.h: Add CUIFShadow (#6316)
Supporting TIPs...
JIRA issue: CORE-19360
- Half-implement CUIFShadow class.
2024-01-08 12:52:37 +09:00
Timo Kreuzer 9be24a9d51 [CMAKE] Add GCC options to make a long double 64 bits
This adds -mlong-double-64 to make the size of a long double 64 bits in GCC builds to match MSVC builds.
2024-01-07 11:03:08 +02:00
Katayama Hirofumi MZ 469e7c6d4e
[SDK] cicuif.h: Add CUIFWindow (#6313)
Supporting TIPs...
JIRA issue: CORE-19360
- Strengthen CUIFObject.
- Add CUIFWindow.
2024-01-07 16:49:31 +09:00
Katayama Hirofumi MZ bf92fa2386
[MSCTFIME][MSUTB][SDK] Add cicInitUIFLib and cicDoneUIFLib (#6307)
Supporting TIPs...
JIRA issue: CORE-19360
- Implement cicInitUIFLib and cicDoneUIFLib functions.
- Use them in msctfime and msutb.
- Add CUIFSystemInfo class in <cicero/cicuif.h>.
2024-01-06 19:21:37 +09:00
Katayama Hirofumi MZ afb132a90b
[SDK] cicuif.h: Add CUIFBitmapDC (#6306)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFBitmapDC class.
- Add cicInitUIFUtil and
  cicDoneUIFUtil functions.
- Add cicSetLayout, cicMirrorBitmap,
  cicCreateDitherBrush,
  cicCreateDisabledBitmap,
  and cicCreateShadowMaskBmp
  utility functions.
2024-01-06 17:44:57 +09:00
Katayama Hirofumi MZ 46cf45414c
[SDK] cicuif.h: Add CUIFColorTable (#6305)
Supporting TIPs...
JIRA issue: CORE-19360
- Improve cicGetFN function.
- Add CUIFColorTable, CUIFColorTableSys,
  and CUIFColorTableOff10 classes.
- Implement cicInitUIFScheme,
  cicUpdateUIFScheme, and
  cicDoneUIFScheme functions.
2024-01-06 14:45:23 +09:00
Katayama Hirofumi MZ 6df2af2610
[SDK] Add CUIFObject and CUIFObjectArray (#6295)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFObjectArray and CUIFObject classes.
- Strenthen CicArray and CUIFTheme classes.
2024-01-05 17:43:06 +09:00
Katayama Hirofumi MZ 77c5aea41f
[MSCTFIME][SDK] Add <cicero/cicuif.h> (#6291)
Supporting TIPs...
JIRA issue: CORE-19360
- Add cicGetFN helper function
  in <cicero/cicbase.h>.
- Add <cicero/cicuif.h>.
- Add CUIFTheme class in
  <cicero/cicuif.h>.
2024-01-04 17:32:43 +09:00
Katayama Hirofumi MZ 35f83286c5
[MSCTFIME][SDK] Implement CicCaret class (#6287)
Supporting TIPs... UIComposition class requires a caret class.
JIRA issue: CORE-19360
- Add <cicero/ciccaret.h> header.
- Add CicCaret class for displaying a caret.
2024-01-03 19:55:14 +09:00
Katayama Hirofumi MZ b48e77e15b
[CTFMON][MSCTFIME][SDK] Define new(cicNoThrow) and use it (#6286)
Use new(cicNoThrow) instead of plain operator new.
JIRA issue: CORE-19360
- Define CicNoThrow structure and
  cicNoThrow macro in <cicero/cicbase.h>.
- Use new(cicNoThrow) instead of
  plain operator new.
2024-01-03 16:45:23 +09:00
Katayama Hirofumi MZ 006bdfa234
[MSCTFIME][SDK] Half-implement CTextEventSink (#6274)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CTextEventSink class.
- Add ITfTextLayoutSink interface
  into "msctf.idl".
2024-01-02 19:45:03 +09:00
Katayama Hirofumi MZ 88107adc92
[MSCTFIME][SDK] Implement CFunctionProvider (#6269)
Supporting TIPs...
JIRA issue: CORE-19360
Define CFunctionProviderBase class.
Define CFunctionProvider class.
Strengthen <cicero/cictf.h>.
2024-01-01 16:36:49 +09:00
Katayama Hirofumi MZ e5548aa501
[MSCTFIME][SDK] Improve human readability (#6240)
Improve code quality.
JIRA issue: CORE-19360
- Add some SAL annotations.
- Add readable comments more.
- Rename some member variables.
2024-01-01 11:05:49 +09:00
Hermès Bélusca-Maïto a70ce994f0
🎊 🍾 🥳 Happy New Year 2024 to the ReactOS Community! 🎆 ⚛️ ☢️
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:.██████╗  ██████╗ ██████╗ ██╗  ██╗
 __,  ,__)            __,  ,__)       __, ,__)         ╚════██╗██╔═████╗╚════██╗██║  ██║
(--|__| _ ,_ ,_      (--|\ | _       (--\ | _  _ ,_     █████╔╝██║██╔██║ █████╔╝███████║
  _|  |(_||_)|_)(_|    _| \|(/_(_|_)     \|(/_(_||     ██╔═══╝ ████╔╝██║██╔═══╝ ╚════██║
 (        |  |  ,_|   (                (__|            ███████╗╚██████╔╝███████╗     ██║
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:.╚══════╝ ╚═════╝ ╚══════╝     ╚═╝
2024-01-01 00:00:00 +01:00