Commit graph

140 commits

Author SHA1 Message Date
Mark Jansen 4bfac27ce6
[SHELL32] Fix broken control definition 2018-10-28 13:06:27 +01:00
Giannis Adamopoulos c69ef281c0 [rosctrls.h] CListView: Add Arrange method
[SHELL32] CDefView: Start implementing Auto arrange.
So far its effect is only shown when the browser window resizes.
2018-10-22 23:51:37 +03:00
Giannis Adamopoulos 410cfbfe15 [SHELL32] CDefView: Disable auto arrange in list and details view mode.
This supersedes PR #927 and does it correctly.
2018-10-22 19:18:28 +03:00
Adam Słaboń 7abc8be102 [TRANSLATION] Polish translation update
Polish translation of net, telnet, diskpart, devcpux, fontext, iernonce, lsasrv, themes, arping, frag, screensavers, ctm, fontsub, WinetestsGUI and localmon.
Update for dxdiag, msgina, msports, netcfgx, shell32 and syssetup.
2018-10-20 21:26:07 +02:00
Mark Jansen 80c53821c9
[SHELL32] CDefView: Query SFVM_DEFVIEWMODE before creating the list view.
CORE-14976
2018-10-13 20:28:49 +02:00
Hermès Bélusca-Maïto 2cbac3d049
[SHELL32] Finally fix the icon location path (un)expansion for shell links, and explain why I originally used SHExpandEnvironmentStringsW().
CORE-14009 CORE-14982
2018-10-08 00:50:38 +02:00
Eric Kohl 1e20a3e5b5 [SHELL32] Fix a potential buffer overrun.
Patch by Kudratov Olimjon.

CORE-8545
2018-10-07 22:56:16 +02:00
Luo Yufan b70ef2ee56 [TRANSLATION] Update Simplified Chinese translation. (#912) 2018-10-07 20:44:00 +02:00
Hermès Bélusca-Maïto ccde12483f
[SHELL32] Fixes and improvements for PickIconDlg().
- Deal with expanded paths only when loading icons. If the user specifies
  an unexpanded path to a module containing icons, this unexpanded path
  is returned to the caller!

- Perform the dialog cleanup in WM_DESTROY message handler.

- When pressing ENTER/OK in the dialog box, retrieve the selected icon and
  close the dialog *ONLY WHEN* the user actually has selected an icon.
  If the user modified manually the module path, pressing ENTER/OK instead
  reloads the icons list.
2018-09-30 21:48:34 +02:00
Hermès Bélusca-Maïto ae9ec94240
[SHELL32] Code formatting only. 2018-09-30 21:48:31 +02:00
Hermès Bélusca-Maïto 7ee298bbfc
[SHELL32] In _SHExpandEnvironmentStrings(), fall back to SHExpandEnvironmentStringsForUserW() if the simplified code paths failed.
This allows the code to give a last chance for expanding the string.
And if it still fails, we bail out as expected and the caller will
take appropriate actions.

As a by-product, this commit (together with the previous one e2960914)
fixes the regression CORE-14981 (Quick-Launch bar couldn't be opened
in LiveCD).
2018-09-23 00:18:57 +02:00
Hermès Bélusca-Maïto e29609147b
[SHELL32] In _SHGetUserShellFolderPath(), check the return value of _SHExpandEnvironmentStrings()
and bail out if it failed. That way we won't use and cache in the registry an invalid-expanded string.

CORE-14981
2018-09-23 00:16:06 +02:00
Hermès Bélusca-Maïto 41a5b11fcd
[SHELL32] Partially synchronize wine/shellpath.c with Wine.
- Adjust the code with respect to:
  "shell32: Re-add support for expanding ALLUSERSPROFILE for backward compatibility."
  4a6855a575c02aa1569aab8b2e96720fc02f3f26 (Alexandre Julliard)

- "shell32: Avoid infinite loop in _SHExpandEnvironmentStrings."
  ceea5bda14ecf4c8ce262fc7ab88df49e500bc38 (Alexandre Julliard)

- "shell32: Assume that system directory always contains a drive letter."
  54530bc4933ae1014c3697c95e22b8ca5a275bc4 (Alexandre Julliard)

- "shell32: Use ARRAY_SIZE macro."
  612a1941331485725952d34f3dcd5866fc318dc2 (Nikolay Sivov)

- "shell32: Fix a trace message."
  bb09bb5750d617047aa23635731519a2f9486159 (Nikolay Sivov)

- "shell32: Fix SHGetFolderPathAndSubDir() trace message."
  f75d5625966933562b974540a3f29dfcd720ad50 (Nikolay Sivov)

- "shell32: Pass correct buffer length to RegQueryValueExW()."
  0bfb97dcba29552b51d8609fcc6e7bbc04bb8320 (Nikolay Sivov)

- "shell32: Remove unused string (Clang)."
  8d50a8a246960749afba21eac117b4fcbbf2c79d (André Hentschel)

- "shell32: Use E_NOT_SUFFICIENT_BUFFER definition."
  730e744e3bd6b706612fe0f90a7efb2e600f114f (Nikolay Sivov)
2018-09-23 00:16:02 +02:00
Katayama Hirofumi MZ 31019e8c0c [TRANSLATION] Update Romanian translation (#851)
Translation from Stefan Fulea.
CORE-15023
2018-09-14 11:04:36 +02:00
Joachim Henze e217e926e1 [SHELL32] Fix typo in comment 2018-08-28 14:24:49 +02:00
Katayama Hirofumi MZ 39dc3cdaf6 [SHELL32] Adjust the IDC_PICKICON_LIST control's height in the IDD_PICK_ICON dialog resource. (#824)
CORE-14974
2018-08-27 12:21:51 +02:00
Mark Jansen 19e9a44118
[SHELL32] Check the result from PathUnExpandEnvStringsW 2018-08-27 11:58:29 +02:00
Mark Jansen 608cb60e44
[SHELL32] Remove some mostly dead code from CShellLink 2018-08-27 11:58:24 +02:00
Katayama Hirofumi MZ 6eb6aa2895 [SHELL32] Fix CShellLink::GetIconLocation (#810)
Fixes a regression from PR #784.
CORE-14961, CORE-14009
2018-08-26 15:37:15 +02:00
Katayama Hirofumi MZ 73798d2e71 [SHELL32] Enable to change shortcut icon (#784)
CORE-11407
2018-08-21 13:49:32 +02:00
Adam Słaboń af3d426685 [TRANSLATION] Polish translation update (#781)
In addition: fix the encoding of the comdlg32 and ntvdm polish resource files.
2018-08-20 17:00:33 +02:00
Joachim Henze abf9340f1b [SHELL32] Translation de-DE CORE-14916
fix control overlapping in IDD_FOLDER_OPTIONS_FILETYPES
(broke in 0.4.10-dev-24-ed1c6bb0060d06f4c0167d9c2d732f4dc2b4cce4)

and translate IDD_NEWEXTENSION, IDD_EDITTYPE, IDD_ACTION, IDD_FOLDER_CUSTOMIZE
2018-08-17 18:07:35 +02:00
Getequ d559ca9c98 [ADVAPI32][SHELL32][DESK.CPL] Kill copy-paste of RegLoadMUIString. (#748)
RegLoadMUIStringW/A is part of advapi32.dll . shell32.dll and desk.cpl contained exact line-by-line copy of that function.
2018-08-16 16:10:41 +02:00
Katayama Hirofumi MZ db13b422b3 [SHELL32] Fix a careless mistake of ShellExecCmdLine (#737)
CORE-14886
2018-08-10 13:25:50 +02:00
Katayama Hirofumi MZ bfcbda227f [SHELL32] Fix handling of multiple parameters in the 'Run' dialog (#665)
The "Run" dialog failed when multiple parameters wee specified.
We use instead a newly-created ShellExecCmdLine() helper function to fix the problem (as found via API-tracing on Windows).
Note that ShellExecCmdLine() starts to be exported with Vista+.

- Implement ShellExecCmdLine() function in shell32.
- Add URL support.
- Fix RunDlgProc function in shell32.
- Add a testcase for ShellExecCmdLine() function.

CORE-14790
2018-08-05 13:39:17 +02:00
Timo Kreuzer 52ea7d39db [SHELL32] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Julio Carchi d3045af9d5 [TRANSLATIONS] Fix some Spanish translations (#715)
Also added some new ones.
2018-07-31 10:58:21 +02:00
Hermès Bélusca-Maïto 74adcadbd0
[SHELL32] Silence a noisy DPRINT. 2018-07-29 17:39:09 +02:00
Katayama Hirofumi MZ 75b09f3f88 [EXPLORER][SHELL32][USER32] Implement 'Show the Desktop' action of Task Bar (#668)
The keyboard shortcuts Win+D and Win+M are also enabled.

- Implement IShellDispatch4::ToggleDesktop().
- Implement some commands in CTrayWindow.
- Add "sdk/include/reactos/traycmd.h" for tray commands.
- Fix task window switching.
- Improve the user32!SwitchToThisWindow() function and use it.

CORE-14318, CORE-13157
See also: CORE-14806 and CORE-8723
2018-07-13 10:34:42 +02:00
Katayama Hirofumi MZ e018ccea4b [SHELL32] lpDirectory must have priority in ShellExecuteEx (#681)
Based on a patch by Mark Jansen.
CORE-14469
2018-07-12 17:45:43 +02:00
Katayama Hirofumi MZ 55469633cf [SHELL32] Add 'Properties' menu item in My Computer (#647)
- Add a Shell_DefaultContextMenuCallBack() helper function.
- Implement the IContextMenuCB interface in CDrivesFolder.
CORE-12509
2018-07-08 17:01:12 +02:00
Katayama Hirofumi MZ 96c0ef4209 [SHELL32] Improve CShellLink a little (#651)
Improve the display and UI in the shortcut dialog.
CORE-11407
2018-07-08 16:45:40 +02:00
Katayama Hirofumi MZ a882ec7a02 [SHELL32][EXPLORER] Update system-wide environment variables (#663)
- Implement shell32 RegenerateUserEnvironment() function and use it.
- CShellBrowser and CDesktopBrowser implements WM_SETTINGCHANGE actions.

CORE-1459, CORE-14397
2018-07-08 16:32:42 +02:00
Mark Jansen 3904fd6257
[SHELL32] Ensure OpenAs_RunDLL does not loop to infinity and beyond.
This should fix a timeout on the apitests.
2018-07-06 21:51:24 +02:00
Hermès Bélusca-Maïto 2afb483a9e
[SHELL32] Shell Profile Folders fixes.
- Fix a regression introduced in r65415 (1795a3bf) where the directory
  paths stored in "Windows\CurrentVersion\Explorer\User Shell Folders"
  were stored in expanded format instead of in unexpanded format:
  _SHGetDefaultValue() *MUST* return unexpanded paths by design!!

- Augment _SHExpandEnvironmentStrings() and _SHGetUserShellFolderPath()
  to take a user token handle to be able to correctly resolve/expand
  user-specific directory paths.

- Fix _SHExpandEnvironmentStrings() so that it always retrieve the
  correct current user / all-users directory paths by calling userenv
  functions, instead of hardcoding a broken logic. As a result this
  removes the "C:\Documents and Settings\SYSTEM" ghost directory we got
  during ReactOS installation.

- Delimit the changes with respect to Wine by #if(n)def __REACTOS__ .
2018-06-30 18:20:08 +02:00
Stanislav Motylkov 73aa420f0e [SHELL32] Update russian translation
CORE-11407
2018-06-30 01:15:41 +02:00
Stanislav Motylkov 707f2ed360 [SHELL32] Fix some elements positions and styles
Addendum to eb1912b. CORE-11407
2018-06-30 01:15:41 +02:00
Katayama Hirofumi MZ e353b48cb2 [SHELL32] Refresh 'General' tab if the folder icon is updated (#646)
CORE-11407
2018-06-29 14:13:37 +02:00
Katayama Hirofumi MZ eb1912b15f [SHELL32] Initial implementation of Folder Customization (#642)
- Add property sheet;
- Implement changing the folder icon.
CORE-11407
2018-06-28 21:51:37 +02:00
Katayama Hirofumi MZ 3189ec9428 [SHELL32] Add missing desktop.ini files (#640)
Add the "desktop.ini" files to the special folders to realize their custom icons.
CORE-10045
2018-06-27 23:11:31 +02:00
Katayama Hirofumi MZ c74bd5d662 [SHELL32] Enable custom CD/DVD icons (#639)
Properly show the custom icon specified in "autorun.inf" file in CDs/DVDs.
CORE-14766
2018-06-27 23:06:54 +02:00
Russell Johnson 6a683dc6d8 [SHELL32] Fixed TRASH_CanTrashFile() sending the wrong path string to GetVolumeInformationW() (#635)
Function TRASH_CanTrashFile() would always fail because GetVolumeInformationW() requires only the base root path. The path (stored in buffer wszRootPathName) was not being stripped correctly.

CORE-12340
2018-06-24 20:29:57 +02:00
Katayama Hirofumi MZ 1b1e1baa6e [SHELL32] Implement Folder Options File Types 'Change' button (#629)
CORE-12906
2018-06-24 20:04:25 +02:00
Katayama Hirofumi MZ 1829f5fed7 [SHELL32] Fix desktop.ini folder icon again (retrial of #595) (#632)
#595 failed at non-Desktop folder. We should use ILGetDisplayNameExW instead of SHGetPathFromLDList to get path from psf and pidl.
CORE-9196
2018-06-24 19:59:03 +02:00
Katayama Hirofumi MZ cc8b2717ae [SHELL32] Implement OpenAs_RunDLLA/W (#628)
CORE-14751
2018-06-24 19:46:06 +02:00
Abdulganiev Rafael 824a52aa99 [TRANSLATION][SHELL32] Update Russian translation (#633) 2018-06-24 19:42:34 +02:00
Katayama Hirofumi MZ a33908b60f [SHELL32] Improve French Folder Options 2018-06-23 10:51:48 +02:00
Katayama Hirofumi MZ cb69443362 [SHELL32] Implement the 'General' tab of the "Folder Options" dialog (#604)
CORE-14678
2018-06-22 16:40:06 +02:00
Katayama Hirofumi MZ f8926dccbd [SHELL32] Fix desktop.ini folder icon (#595)
The folder icon location specified in desktop.ini of a folder should accept its relative path.
CORE-9196
2018-06-22 15:37:03 +02:00
Denis Malikov 7916d0ae3e [SHELL32] Copy-paste files/folders into current place.
Files are copied with trying to find new path by adding (%d) suffix before asking for overwrite existing item

CORE-13788
2018-06-13 20:13:44 +02:00