Commit Graph

475 Commits

Author SHA1 Message Date
Whindmar Saksit
a83411cfef [SHELL32] Avoid SHRunControlPanel to be Vista compatible (#9114) 2026-06-14 00:24:59 +02:00
Whindmar Saksit
3b58b347bc [EXPLORER][SHELL32] Forward Explorer refresh command to the Start Menu (#9108) 2026-06-07 21:28:13 +02:00
Katayama Hirofumi MZ
d08a581eb1 [EXPLORER] Implement ShowUndockMenuItem (#9068)
Follow-up of #9036.
ShowUndockMenuItem function
will detect system undocking ability.
JIRA issue: CORE-10675
- Do #include <cfgmgr32.h> in
  startmnusite.cpp.
- Implement ShowUndockMenuItem
  by using
  setupapi!CM_Is_Dock_Station_Present
  function.
2026-05-29 12:56:00 +09:00
Katayama Hirofumi MZ
628fc9d463 [EXPLORER][SDK] Implement some tray commands (#9036)
Make our tray window working as
Windows' one.
JIRA issue: CORE-10675
- Add REST_NOCLOSE restriction
  to CTrayWindow::DoExitWindows
  method.
- Add TRAYCMD_EJECT constant
  to <undocshell.h>.
- Implement TRAYCMD_STARTMENU,
  TRAYCMD_EJECT,
  TRAYCMD_CONTROL_PANEL, and
  TRAYCMD_PRINTERS_AND_FAXES
  tray commands.
- Add import to setupapi to use
  CM_Request_Eject_PC function.
2026-05-26 18:40:38 +09:00
Nguyen Duc Thinh
20b89d5413 [TRANSLATION] Add Vietnamese (vi-VN) translation (#9001)
Add Vietnamese translation for Calc, Solitaire, Notepad, RAPPS, Setup and Explorer
2026-05-22 11:39:34 +00:00
Hasan Eliküçük
81e6f50848 [TRANSLATION] Update and improve Turkish (tr-TR) translation (#9018)
- [REGEDIT] Update and improve Turkish (tr-TR) translation
- [TASKMGR] Update Turkish (tr-TR) translation
- [CMD] Update Turkish (tr-TR) translation
- [CABVIEW] Update Turkish (tr-TR) translation
- [BROWSEUI] Update Turkish (tr-TR) translation
2026-05-19 18:50:18 +03:00
Timo Kreuzer
1cf31524d5 [REACTOS] Stop using non-conforming swprintf / vswprintf
Use the underscored versions instead.
2026-05-07 06:27:58 +00:00
Hermès Bélusca-Maïto
cab720aa2c [CMDUTILS][NETWORK][LOGOFF][RUNAS][CMD][SYSTEM] Improve imports and headers for some tools 2026-03-30 13:55:07 +02:00
Timo Kreuzer
155970dca1 [RSHELL] Disable GCC 13 overloaded-virtual warning
Someone familiar with this should do a more proper fix.

C:/ReactOS/reactos/sdk/lib/atl/atlcom.h: In instantiation of 'class ATL::CComObject<CRShellClassFactory>':
C:/ReactOS/reactos/sdk/include/reactos/shellutils.h:357:45:   required from 'HRESULT ShellObjectCreatorInit(T1, const IID&, void**) [with T = CRShellClassFactory; T1 = _GUID; HRESULT = long int; IID = _GUID]'
C:/ReactOS/reactos/base/shell/rshell/misc.cpp:256:55:   required from here
C:/ReactOS/reactos/base/shell/rshell/misc.cpp:210:28: error: 'virtual HRESULT CRShellClassFactory::CreateInstance(LPUNKNOWN, const IID&, void**)' was hidden [-Werror=overloaded-virtual=]
  210 |     virtual HRESULT WINAPI CreateInstance(LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObject)
      |                            ^~~~~~~~~~~~~~
In file included from C:/ReactOS/reactos/base/shell/rshell/misc.cpp:33:
C:/ReactOS/reactos/sdk/lib/atl/atlcom.h:171:27: note:   by 'static HRESULT ATL::CComObject<Base>::CreateInstance(ATL::CComObject<Base>**) [with Base = CRShellClassFactory; HRESULT = long int]'
  171 |     static HRESULT WINAPI CreateInstance(CComObject<Base> **pp)
      |                           ^~~~~~~~~~~~~~
2026-03-18 17:29:12 +02:00
Timo Kreuzer
1c64719677 [CMD] Fix GCC 13 misleading-indentation warning
C:/ReactOS/reactos/base/shell/cmd/del.c: In function 'ProcessDirectory':
C:/ReactOS/reactos/base/shell/cmd/del.c:333:17: error: this 'if' clause does not guard... [-Werror=misleading-indentation]
  333 |                 if (!(f.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) ||
      |                 ^~
In file included from C:/ReactOS/reactos/base/shell/cmd/precomp.h:14,
                 from C:/ReactOS/reactos/base/shell/cmd/del.c:48:
C:/ReactOS/reactos/sdk/include/crt/tchar.h:246:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
  246 | #define _tcscpy wcscpy
      |                 ^~~~~~
C:/ReactOS/reactos/base/shell/cmd/del.c:338:21: note: in expansion of macro '_tcscpy'
  338 |                     _tcscpy(pFilePart, f.cFileName);
      |                     ^~~~~~~
2026-03-18 17:29:12 +02:00
Timo Kreuzer
3413675193 [CMD] Clear global pointer to local variable after use
GCC 13 doesn't like if you keep a dangling pointer around.

C:/ReactOS/reactos/base/shell/cmd/for.c: In function 'ForF':
C:/ReactOS/reactos/base/shell/cmd/for.c:307:20: error: storing the address of local variable 'Variables' in '*fc.values' [-Werror=dangling-pointer=]
  307 |         fc->values = Variables;
      |         ~~~~~~~~~~~^~~~~~~~~~~
C:/ReactOS/reactos/base/shell/cmd/for.c:141:12: note: 'Variables' declared here
  141 |     LPTSTR Variables[32];
      |            ^~~~~~~~~
C:/ReactOS/reactos/base/shell/cmd/for.c:57:14: note: 'fc' declared here
   57 | PFOR_CONTEXT fc = NULL;
      |              ^~
2026-03-18 17:29:12 +02:00
Timo Kreuzer
f2b85d2a79 [CMD] Fix GCC 13 use-after-free warning
Make the code simpler, so GCC doesn't get confused.

C:/ReactOS/reactos/base/shell/cmd/misc.c: In function 'add_entry':
C:/ReactOS/reactos/base/shell/cmd/misc.c:216:14: error: pointer 'oldarg' may be used after 'realloc' [-Werror=use-after-free]
  216 |         *arg = oldarg;
      |         ~~~~~^~~~~~~~
In file included from C:/ReactOS/reactos/base/shell/cmd/cmd.h:29,
                 from C:/ReactOS/reactos/base/shell/cmd/precomp.h:34,
                 from C:/ReactOS/reactos/base/shell/cmd/misc.c:35:
C:/ReactOS/reactos/base/shell/cmd/cmddbg.h:30:31: note: call to 'realloc' here
   30 | #define cmd_realloc(ptr,size) realloc(ptr, size)
      |                               ^~~~~~~~~~~~~~~~~~
C:/ReactOS/reactos/base/shell/cmd/misc.c:212:12: note: in expansion of macro 'cmd_realloc'
  212 |     *arg = cmd_realloc (oldarg, (*ac + 2) * sizeof (LPTSTR));
      |            ^~~~~~~~~~~
2026-03-18 17:29:12 +02:00
Copilot
1d409e322b [EXPLORER] Fix handle leaks (#8516)
JIRA issue: CORE-15616
JIRA issue: CORE-14382

The Explorer shell has multiple resource leaks causing handle exhaustion over extended use.
2026-01-01 22:13:00 +09:00
Whindmar Saksit
87df3ea3e1 [SHLWAPI][EXPLORER] Implement OS_SERVERADMINUI (#7051)
OS_SERVERADMINUI changes minor things in Explorer, the most visible is that the default folder view mode changes from large icons to details
2025-09-04 19:25:43 +02:00
Carl J. Bialorucki
c9842e5aad Move /sdk/include/reactos/wine to /sdk/include/wine, reorder global includes, remove unneeded includes (#8258)
- Move sdk\include\reactos\wine to sdk\include\wine
- Reorder the directories in include_directories() to be closer to alphabetical. This should make it easier to determine what global include directories can be removed in the future.
2025-07-29 13:57:12 -06:00
Katayama Hirofumi MZ
915b771037 [EXPLORER][NTUSER] Notify ABN_FULLSCREENAPP and fix monitor code (#8254)
Enable ABN_FULLSCREENAPP notification.
Fix some monitor functions.
JIRA issue: CORE-7237
- Improve NtUserMonitorFromRect and
  NtUserMonitorFromWindow functions.
- Remove if-statement in
  OnWindowActivated function.
- Don't check WS_EX_TOOLWINDOW in
  IntIsWindowFullscreen function.
- Add IntGetMonitorFromRect helper
  function to commonize some code in
  monitor functions.
2025-07-28 17:58:59 +09:00
Piotr Hetnarowicz
eb0e645def [CMD] Update Polish (pl-PL) translation (#8193)
Addendum to 736d81938a and 18acf79551.
2025-07-03 14:26:23 +03:00
Katayama Hirofumi MZ
4866a25a8f [EXPLORER] Fix Taskbar context menu Z-order bug (#8186)
Taskbar task button context menu was wrongly
overlapped by Taskbar. #8105 introduced this bug.
JIRA issue: CORE-20260
- Don't bring the taskbar to top on no rude app.
- Check the target window by FindTaskItem in
  OnWindowActivated and OnWindowDestroyed.
2025-06-30 10:55:15 +09:00
Hermès Bélusca-Maïto
af96e9f353 [TRANSLATIONS] Fix some typos in French translations (#8164) 2025-06-29 16:31:39 +02:00
Piotr Hetnarowicz
64d1301b5a [EXPLORER] Update Polish (pl-PL) translation (#8160) 2025-06-24 16:59:32 +02:00
Katayama Hirofumi MZ
4e7702a6a9 [EXPLORER] Add fullscreen handling (#8105)
Adds support for handling fullscreen
applications (a.k.a. “rude apps”) so
the taskbar can hide or show
appropriately.

JIRA issue: CORE-11242, CORE-15681,
CORE-16056, CORE-16063, CORE-16131,
CORE-16132, CORE-16192, CORE-16196,
CORE-16249, CORE-16290, CORE-16313,
CORE-16320, CORE-16322, CORE-16347,
CORE-16584, CORE-19795, CORE-9862,
CORE-16230, CORE-10738, 
and CORE-12263.

- Removes legacy pulse/timer logic in
  the tray window and adds a fullscreen
  notification workflow.
- Implements fullscreen detection
  across monitors in the task switcher,
  using a sequence of validation timers.
- Defines a new ITrayWindow::
  NotifyFullScreenToAppBars interface
  method to broadcast fullscreen state
  to appbars.
2025-06-15 21:20:45 +09:00
Katayama Hirofumi MZ
6128c20937 [EXPLORER] Set MINMAXINFO correctly (#8100)
JIRA issue: CORE-20219
Set MINMAXINFO data in WM_GETMINMAXINFO
message handling.
2025-06-08 19:49:45 +09:00
Katayama Hirofumi MZ
2fd0af4f8f [EXPLORER] AppBar Part 3 (#7966)
Follow-up of #7946.
JIRA issue: CORE-7237
- Implement ABM_GETSTATE,
 ABM_GETTASKBARPOS, ABM_ACTIVATE,
  ABM_WINDOWPOSCHANGED,
  ABM_GETAUTOHIDEBAR,
  ABM_SETAUTOHIDEBAR, and
  ABM_SETSTATE appbar messages.
- Implement TWM_SETZORDER tray
  message.
2025-06-03 06:59:30 +09:00
Whindmar Saksit
d663eb4466 [SHELL32][CMD][SHLWAPI] Use the openas verb when invoking unknown file types (#7981)
CORE-20184
2025-05-30 18:46:24 +02:00
Katayama Hirofumi MZ
626a875de1 [EXPLORER] Improve Japanese (ja-JP) translation (#7996)
JIRA issue: CORE-18706
2025-05-14 10:21:05 +09:00
Timo Kreuzer
d1f9e06a4f [REACTOS] Change manifest architecture from "X86"/"" to "*" 2025-05-05 10:02:51 +00:00
Katayama Hirofumi MZ
7073bdfead [EXPLORER][SHELL32][SHELL32_APITEST][SDK] AppBar Part 2 (#7946)
Follow-up of #7778.
JIRA issue: CORE-7237
- Rename APPBARDATA3264 structure
  as APPBARDATAINTEROP.
- Fix structures for WoW64.
- Use trace instead of DPRINT1.
- Add CAppBarManager::
  RecomputeAllWorkareas function.
- Fix WM_DISPLAYCHANGE handling
  to re-compute the work areas.
2025-05-05 12:48:02 +09:00
Katayama Hirofumi MZ
f19c62c80e [EXPLORER][SHELL32][SHELL32_APITEST][SDK] AppBar: Initial support (#7778)
Supporting AppBars.
JIRA issue: CORE-7237
- Rewrite shell32!SHAppBarMessage
  function.
- Introduce CAppBarManager class in
  base/shell/explorer/appbar.cpp.
- Add support of ABM_NEW,
  ABM_REMOVE, ABM_QUERYPOS,
  and ABM_SETPOS messages for
  AppBar in Tray Window.
2025-04-28 19:08:13 +09:00
Whindmar Saksit
a6558c0562 [EXPLORER] Implement ClearRecentDocsOnExit setting (#7935) 2025-04-27 01:28:37 +02:00
Whindmar Saksit
8b6907f2a6 [EXPLORER] Implement NoWinKeys and HideClock restrictions (#7926) 2025-04-25 13:51:26 +02:00
Whindmar Saksit
5a10ec60be [EXPLORER][BROWSEUI][SHLWAPI][BOOTDATA][WIN32K] Support AppKeys and more WM_APPCOMMANDs (#7879)
Implements a couple of extra commands in IShellBrowser and adds support for the AppKeys fallback registry key (used when the foreground application does not handle the command).
2025-04-18 18:35:30 +02:00
Mark Jansen
49c40a2941 [PROGMAN][MSPORTS][VFDLIB][CONSRV] Update resource encoding to be utf8 2025-03-26 16:39:43 +01:00
Denis Robert
818842de06 [BASE] Update French (fr-FR) translation (#7563)
Updates French translation of base folder.
2025-03-24 21:10:02 +01:00
Ethem Çılgın
c35bb8dd73 [EXPLORER] Improve Turkish (tr-TR) translation (#7801)
Adapt Turkish translations from Windows and add the missing ‘Masaüstünü Göster’ translation as in Windows 10.
2025-03-24 14:06:30 +03:00
Katayama Hirofumi MZ
75c0dc0cd8 [EXPLORER][COMCTL32][SHELL32] Enable SPI_SETICONTITLELOGFONT (#7783)
Enable desktop icon title font setting.
JIRA issue: CORE-13601
- Forward WM_SETTINGCHANGE message up to
  ListView.
- ListView accepts WM_SETTINGCHANGE message.
- Enable icon spacing.
2025-03-15 09:31:15 +09:00
Miguel Almeida
6988b4e2c4 [EXPLORER] Add Show Desktop button to taskbar customization preview (#7727)
Use a 4D lookup table for the notification area settings preview, instead of many if cases.

CORE-19738
2025-03-02 20:56:30 +01:00
Katayama Hirofumi MZ
ee19792605 [SHDOCVW][EXPLORER][RSHELL][SDK] Populate WinList_* stubs (#7691)
Implementing missing features...
JIRA issue: CORE-9368
- Modify shdocvw.spec.
- Add dll/win32/shdocvw/winlist.cpp.
- Add stubs of WinList_* functions.
- Add WinList_* function prototypes
  to <shdocvw_undoc.h>.
- Adapt explorer and rshell to new
  WinList_Init prototype.
2025-02-01 07:14:36 +09:00
Katayama Hirofumi MZ
fe11f7a2e5 [REACTOS] Refresh old URLs (#7632)
URLs are getting old. We have to
update URLs for documentation
purpose.
JIRA issue: CORE-19963
- Refresh old URLs.
- Add " (DEAD_LINK)" labels
  to dead links.
- Use MS Learn links rather
  than MSDN ones.
- Some dead links revived by
  Web Archive.
- Don't change Wine Tests
  and Wine Sync.
- Don't change 3rd party libraries.
- Don't append "redirected" labels.
2025-01-28 13:36:45 +09:00
Katayama Hirofumi MZ
853b8ebd02 [EXPLORER] Use STDMETHODIMP and override (#7645)
Follow the standard way.
JIRA issue: CORE-19469
- Use STDMETHODIMP and override keyword
  instead of virtual HRESULT STDMETHODCALLTYPE.
- Delete CTaskBand::ProcessMessage and
  CTaskBand::ContainsWindow methods.
  I think they are useless.
2025-01-21 10:03:52 +09:00
Katayama Hirofumi MZ
56988ffbf8 [EXPLORER] Support Unicode on Start Button InvokeCommand (#7644)
Support Unicode on Start Button
context menu for international text
support.
JIRA issue: N/A
- Support Unicode in
  CStartMenuBtnCtxMenu::InvokeCommand
  method by using
  CMINVOKECOMMANDINFOEX structure.
2025-01-20 22:26:33 +09:00
Serge Gautherie
e51e5de1f8 [EXPLORER] Remove redundant bIsSystemShell assignments (#7542)
Addendum to commit df197bc42 (PR #7502)
CORE-19887
2024-12-02 20:42:46 +01:00
Brady McDermott
df197bc424 [EXPLORER] Check registry key for default shell (#7502)
Improves detection of Explorer being the default shell.

- Check the "Software\Microsoft\Windows NT\CurrentVersion\Winlogon" key to see if Explorer is the default shell.
- Use this check to determine whether to start the desktop and taskbar or only open a file browser window.

JIRA issue CORE-19887
2024-11-30 10:17:54 -07:00
Whindmar Saksit
c569aee023 [EXPLORER] Implement ABM_GET/SETSTATE and ABM_GETTASKBARPOS (#7525) 2024-11-25 19:51:19 +01:00
Thamatip Chitpong
898cc5663d [EXPLORER] Add tooltip for show desktop button (#7483)
CORE-15369
2024-11-01 01:09:22 +07:00
Timo Kreuzer
b707be90a1 [REACTOS] Use standard conforming names
- Use _alloca instead of non-standard alloca
- Use _TCHAR instead of non-standard TCHAR
- Use _off_t instead of deprecated off_t
- Use _O_BINARY instead of O_BINARY
2024-10-20 14:12:25 +03:00
Timo Kreuzer
0c2cdcae83 [REACTOS] Add missing line breaks at end of file 2024-10-06 10:47:11 +03:00
Whindmar Saksit
751641c2be [SHELL32][COMCTL32][BROWSEUI][EXPLORER] Update color usage on WM_SYSCOLORCHANGE (#7325) 2024-09-14 13:07:11 +02:00
Ethem De Santa
8351fbf04f [EXPLORER] Update Turkish (tr-TR) translation (#7301)
Translated the old English explorer shell lines into Turkish and fixed
some incorrect Turkish translations.

Adapted the translation from Windows 7 with Turkish locale.
2024-09-08 01:43:04 +03:00
Timo Kreuzer
c948ea859b [CMD] Convert to explicitly unicode 2024-08-25 16:17:17 +03:00
Katayama Hirofumi MZ
6f86c05cfb [RSHELL] Fix file headers (#7239)
Follow our standard.
JIRA issue: CORE-18462
Adapt file headers to our
coding style.
2024-08-12 04:47:02 +09:00