Commit graph

108 commits

Author SHA1 Message Date
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
Adam Słaboń 565ce5e827 [TRANSLATION] Polish translation update (#611)
Polish translation update for MODE, USETUP and SHELL32.
2018-06-12 15:51:37 +02:00
Katayama Hirofumi MZ 698cbc6184 [SHELL32] Split dialogs/folder_options.cpp (#582)
The dialogs/folder_options.cpp source file in shell32 is too big to manage. We will split it to smaller files.
CORE-12906
2018-06-06 14:04:50 +02:00
Katayama Hirofumi MZ 222534a5a2 [SHELL32] Fix and improve the PickIconDlg function (#574)
CORE-10972
2018-05-31 15:33:07 +02:00
Katayama Hirofumi MZ 5187ec858f [SHELL32] Implement the 'Advanced' button of the 'File Types' dialog (#565)
This allows the user to edit the File Type / extension information by clicking 'Advanced' button in the 'File Types' property sheet of Folder Options.
CORE-12906, CORE-10972
2018-05-30 17:22:31 +02:00
Serge Gautherie 3ca1ac639c [REACTOS] Improve/Fix some "printf" formats (#555)
The smbios.c one was initially spotted by "Alahndro" on CORE-6328.
2018-05-30 14:18:23 +02:00
Katayama Hirofumi MZ ed1c6bb006 [SHELL32] Add icons to the 'File Types' listview (#557)
This commit adds icons to the listview of the 'File Types' property sheet of Folder Options.
CORE-12906
2018-05-23 23:25:11 +02:00
Katayama Hirofumi MZ 82a5983504 [SHELL32] Allow deleting a file type/extension (#553)
CORE-12906
2018-05-19 16:12:11 +02:00
Adam Słaboń 72ad0fe70b [TRANSLATION] Polish translation update (#554)
- Added translations for cmdutils (at, clip, comp, eventcreate, mode, taskkill, wmic) and zipfldr.
- Updated translations for cmdutils (reg), drwtsn32, mmc, eventvwr, shell32 and cpl applets (console, input).
2018-05-19 13:17:49 +02:00
Katayama Hirofumi MZ bfb19dd251 [SHELL32] Fix usage of DeferWindowPos (fix of #544) (#552) 2018-05-18 22:27:22 +02:00
Katayama Hirofumi MZ f20bdf1994 [SHELL32] Add 'Create New Extension' IDD_NEWEXTENSION dialog (#544)
A 'Create New Extension' dialog is implemented, which enables the user to add a new file extension.
CORE-12906
2018-05-18 12:47:52 +02:00
Katayama Hirofumi MZ 2e96d85133 [SHELL32] In #543, I forgot sq-AL.rc and sv-SE.rc 2018-05-12 17:09:59 +02:00
Katayama Hirofumi MZ 2b0238a48a
[shell32] add some control IDs for IDD_FOLDER_OPTIONS_FILETYPES 2018-05-12 13:47:09 +02:00
Hermès Bélusca-Maïto 34b0f3e4f8
[BOOTDATA][SHELL32] Add some recognized file extensions (.db, .efi, .nls, .ocx, .tlb, .nt), and update some reported MIME types.
CORE-11308
2018-05-05 22:20:21 +02:00
Hermès Bélusca-Maïto bf88116252
[SHELL32] Fix the layout of the Run/Execute dialog for many languages.
French fix covers CORE-12548.
2018-05-01 17:45:03 +02:00
Mark Jansen b569195ecf
[SHELL32] Partially sync SHGetFileInfo with wine to improve folder type names.
CORE-14542
2018-04-22 17:38:44 +02:00
Mark Jansen e8dcbcc61d
[SHELL32] Sync CShellDispatch and family with wine.
Incorporates work from Ivan Rodionov.
CORE-12955
2018-04-14 15:47:13 +02:00
Joann Mõndresku 6522bb42df [TRANSLATION][SHELL32] Corrected mistakes 2018-04-10 22:49:16 +02:00
Mark Jansen a69393205a
[SHELL32] Partially implement SHCreateFileExtractIconW
CORE-14082
2018-04-07 15:29:58 +02:00
Mark Jansen 0d07967a27
[SHELL32] Initial partial IShellFolderViewCB implementation. 2018-04-07 15:29:53 +02:00
Robert Naumann 69acbe905a
Update German translation (#438)
* [BROWSEUI] Update German translation

* [SHELL32] Update German translation

* [COMCTL32] Update German translation

* [COMDLG32] Update German Translation

* [SETUPAPI] Update German translation

* [EXPLORER] Update German translation
2018-03-17 22:48:16 +01:00
Thomas Faber 0aed0fd167
[BROWSEUI][SHELL32] Treat OnWinEvent's result parameter as optional. CORE-14443
Windows's explorer can call it with NULL.
2018-03-08 12:21:24 +01:00
Pierre Schweitzer da8a41b97b
[SHELL32] Fix a directory handle leak when browsing folders
A bit of history: in r71528, I tried to fix our explorer often
crashing while browsing directories. It was linked to the fact
that a notification result may arrive while the notification
structure had already been deleted.

The fix for this was actually broken and was leading to a double
leak: the notification structure was leaked. But also the handle
to the directory that had been browsed!
This means that the directory couldn't be modified anymore as
a leaked handle to it was still open.

Actually, when notifications are cancel, the kernel properly
calls the notification routine, but with a specific error code.
So the correct fix is to stop handling that notification when
we receive this error code. This is the correct fix with no leaks.

This commit is a complete r71528 revert with the appropriate fix.

CORE-10941
CORE-12843
2018-03-06 20:30:21 +01:00
Katayama Hirofumi MZ 1f4c636453 [SHELL32] Fix item order in Folder Options (#415) 2018-03-05 23:40:41 +01:00
Timo Kreuzer 0182dcd71b [PSDK][REACTOS] Fix definitions and usage of DWLP_MSGRESULT, DWLP_DLGPROC, and DWLP_USER
- Make sure the DWLP_* values are correct on _WIN64
- Don't use the DWL_* constants, they are not portable. Enforce this by removing them entirely from winuser.h
- Make sure Get/SetWindowLong*Ptr* is used and pointers are not truncated to LONG
2018-03-04 16:27:07 +01:00
Adam Słaboń 8fd9d3f59b [TRANSLATION] Polish translation update (#413)
Translation update for sndvol32, shell32 (right click drag menu), rapps and ks.inf.
2018-03-03 21:24:46 +01:00
Giannis Adamopoulos 5b38fed776 [SHELL32] -CMenuToolbarBase: Remove all buttons on destruction. CORE-13194
It seems that TBN_DELETINGBUTTON isn't called when the toolbar gets destroyed so the only way to avoid leaking the data is emptying it ourselves.
2018-02-23 12:27:48 +02:00
Thomas Faber b8741e2bb3 [SHELL32] Fix PIDL leak in CMenuSFToolbar::FillToolbar. CORE-13194 2018-02-22 11:53:34 +01:00
Giannis Adamopoulos 3263303844 [SHELL32] CShellItem: Fix GetDisplayName and Compare
The two methods were completely broken because they passed a full pidl to the parent folder (and not desktop folder).
Compile SHGetNameFromIDList to use it in CShellItem but don't export it.
2018-02-20 16:59:00 +02:00
Giannis Adamopoulos 9d7313273c [SHELL32] CShellItem: Implement BindToHandler and improve GetAttributes based on wine
Fixes lots of tests.
2018-02-20 16:33:30 +02:00
Giannis Adamopoulos af97de39a2 [SHELL32] CShellItem: Fix return value of Compare method 2018-02-20 14:36:31 +02:00
Giannis Adamopoulos c361e475b4 [SHELL32] CDefaultContextMenu: Implement GetCommandString 2018-02-20 13:05:59 +02:00
Giannis Adamopoulos 7e48c20b3b [SHELL32] Fix a couple of tests 2018-02-20 11:48:40 +02:00