Commit graph

100 commits

Author SHA1 Message Date
Joachim Henze
2986b27f7d [0.4.9][SHELL32] Fix uninitialized variable usage. CORE-15251 (#3986)
This fixes log spam about NM_CUSTOMDRAW not being handled,
e.g. when interacting with the start-menu or filebrowsers menubar.
Less logging implies faster painting here with dbg-builds.

fix picked from commit 0.4.15-dev-3229-g 22e58e68aa

The bug was a regression of 0.4.9-dev-151-g 0aed0fd167 very likely,
The symptom with the logging can neither be observed in unpatched releases/0.4.8 nor in releases/0.4.7
2022-09-20 18:25:46 +02:00
Joachim Henze
07973c0579 [0.4.9][REACTOS] Fix remaining ' \n' typos in *.rc CORE-18103
Phew, these are the last ones for this branch!
Now reduced by the preceding commits to a manageable amount.
fix is a partial (intentionally non-squashed) pick of 0.4.14-dev-1142-g 92aabb07fb (#2393)

Yes, I do see the 'conti\n\n\n\n\n\n\nnue'-mess within dll/win32/rasdlg/lang/en-US.rc
Will be taken care of later.
2022-03-24 21:51:21 +01:00
Joachim Henze
c79940c770 [0.4.9][REACTOS] Fix '[0-9A-Za-z] \\n' typos in *.rc (with regular expr.) CORE-18103
fix is a partial (intentionally non-squashed) pick of 0.4.14-dev-1142-g 92aabb07fb (#2393)

Yes, I do see that we still have some '\n.' typos in some files, e.g.
base/applications/shutdown/it-IT.rc. I will take care of them later!
2022-03-24 21:11:47 +01:00
Joachim Henze
8d1b8cffd8 [0.4.9][SHELL32] Remove redundant "Line up icons" from desktops context menu CORE-18096
A *partial* backport of 0.4.14-dev-1506-g c82ba3485e , part of (#2603)
That menu item never had any effect up to now as it had no implementation in ros,
and it also does not exist on Windows at this location.
The desired effect can already be achieved by just hitting F5 or selecting "Refresh" from the same root-context menu.

I do port back only the removal of this commit for now, and not the added new functionality in the submenu "Arrange Icons By", to
allow translations for that to settle down a bit on master.
2022-03-20 15:21:04 +01:00
Joachim Henze
6329d93151 [0.4.9][SHELL32][SHLWAPI][COMDLG32][SDK] Unable to select a Zip file for sending with Common Open Dialog CORE-16908
It "regressed" by 0.4.9-dev-632-g da6a46c6ac when zipfldr.dll got registered.
Ftr: Even without this complex fix it was possible to workaround this bug by 'regsvr32 /u zipfldr.dll'.

by porting back:
0.4.15-dev-279-g 83a9f71690 CORE-16908 [SHELL32] Allow creation of an empty CFileSysEnum
0.4.15-dev-254-g 332889b8d7 CORE-16908 [COMDLG32] Differentiate between real and virtual folders
0.4.15-dev-252-g f379a29606 CORE-16908 [SHELL32][SDK] Properly enumerate virtual shell folders (on files) as fake folders
0.4.15-dev-251-g b1003ae909 CORE-16908 [SHELL32] Update CFileSysEnum to be maintaineable
0.4.15-dev-250-g ac215455bb CORE-16908 [SHLWAPI] Fix SHRegGetCLSIDKeyW
and we also need:
0.4.14-dev-73-g 5d54b65ceb CORE-16271 [SHELL32] Add support for custom View objects defined with UICLSID
2022-02-26 23:56:16 +01:00
Joachim Henze
b7aae3cdfd [0.4.9][SHELL32] Add 'Properties' menu item in My Computer (#647) CORE-12509
- Add a Shell_DefaultContextMenuCallBack() helper function.
- Implement the IContextMenuCB interface in CDrivesFolder.

It regressed by some unknown commit in between SVN r70702 to r73408

fix picked from 0.4.10-dev-329-g 55469633cf
2022-02-26 19:05:52 +01:00
Joachim Henze
28f0841970 [0.4.9][SHELL32] Squashed port of several RunDlg and ShellExecuteW() fixes
This is a big backport, that brings us closer to releases/0.4.14/0.4.14-release-10-g1b0b852

The main motivation is to fix the regression:
CORE-6412 'FoxitReader4 starts directly instead of launching setup wizard'
which regressed by SVN r56438 == git e5491506f1

By porting back the following commits:

0.4.15-dev-2883-g 33c7c91b36 CORE-17351 CORE-16898 (#3797) Improve performance of Start-Run Dialog Box Options
0.4.14-dev-1016-g 4e721f780e CORE-12266 (#1854) [SHELL32] This fixes the ERROR_DDE_FAIL in the 'www.google.de' testcase
0.4.13-dev-790-g 0f16d44b66 CORE-6412 + CORE-12927
but in return we have to fix all the callers of ShellExecuteW() that relied on this ancient hack-code, and we do this by picking
0.4.13-dev-930-g cb77f1701f CORE-16299 [SHELL32][STOBJECT] ShellExecuteW() params part2
0.4.13-dev-860-g 944aba1fcc CORE-16299 [SHELL32] ShellExecuteW() params part1 (#1833)

0.4.12-dev-94-g 932a812c66 CORE-15434 [SHELL32] shlexec.cpp UNICODE_NULL Add backslash if path was like C: (#1152)
0.4.12-dev-49-g fad9f6677a CORE-15434 [SHELL32] dialogs.cpp (#1117) Addendum
0.4.12-dev-48-g c64d31e9b8 CORE-15434 [BROWSEUI] Add backslash for directory (#1121) C: C:\
0.4.12-dev-36-g 472787ffea CORE-15431 (#1117) Crash on %SYSTEMROOT%
0.4.12-dev-19-g 06d717e3bc CORE-15431 (#1111) Enable Environment Variables
0.4.10-dev-446-g db13b422b3 (#737) shlexec.cpp to avoid regression CORE-14886 "regsvr32 can no longer register dlls"
0.4.10-dev-419-g bfcbda227f (#665) Multiple parameters dialogs.cpp, shlexec.cpp, sdk/include/reactis/undocshell.h
0.4.10-dev-335-g e018ccea4b CORE-14469 (#681) [SHELL32] lpDirectory must have priority in ShellExecuteEx
0.4.10-dev-238-g c84f398306 CORE-14583 (#593) base/shell/explorer/traywnd.cpp
0.4.10-dev-106-g 222534a5a2 IDS_FILE_NOT_FOUND from that unrelated commit was reused to display errors of the RunDlg
2022-02-20 21:21:29 +01:00
Joachim Henze
a5dc10022a [0.4.9][SHELL32] Control panel context menu semantic bugfix (#4078) CORE-17855
Fix ported back from 0.4.15-dev-3396-g 83335d3a81
2022-01-26 12:50:29 +01:00
Joachim Henze
4532e1cd5e [0.4.9][PROGMAN][USER32][SHELL32] Do not use LoadLibraryEx() NT6+ flags (#3152) CORE-12004
LOAD_LIBRARY_AS_IMAGE_RESOURCE and LOAD_LIBRARY_SEARCH_SYSTEM32 are Vista+

This fixes some blurry icons in systray when 2k3sp2 kernel32.dll is used in ros CORE-12004
That part in user32 was a regression of SVN r71609 == git a44dfe6c76
While we are at it we do fix some other modules as well, that used those NT6+flags.

The fix was picked from 0.4.15-dev-788-g a04831677e
--------
That second part in SHELL32 regressed even earlier by
SVN r51768 == git 6ced137ce2
and was fixed on master by chance when the PickIconDlg() was overhauled entirely via
git 0.4.10-dev-106-g 222534a5a2 . But that is not the solution I ported back today.
2022-01-15 12:50:02 +01:00
Joachim Henze
5b8e1230d1 [0.4.9][SHELL32] Update all languages RCs to fix possible text truncation CORE-15765
IDD_BROWSE_FOR_FOLDER displays text controlled by the calling applications in
IDC_BROWSE_FOR_FOLDER_TITLE. Its old height could lead to text truncation
for existing 3rd party apps.
The new height value for IDC_BROWSE_FOR_FOLDER_TITLE
was inspired by IDC with the same from dialog IDD_BROWSE_FOR_FOLDER_NEW.
I could change all languages to the same height,
as dimensions of the dialog and surrounding controls were same.

picked from 0.4.12-dev-781-g 1d7287288d

also port back some strings in de-DE that were translated during 0.4.10-dev and that
were still untranslated in releases/0.4.9.
2021-05-16 03:12:24 +02:00
Joachim Henze
f807f226c9 [0.4.9][SHELL32] Fix version string in Shell About dlg CORE-16571, & some de-DE
It "regressed" and was displayed cut-off since the switch to git
(our string got longer back then).

Fixed by porting back 2 commits:

0.4.14-dev-976-g 6ce72ba172
0.4.14-dev-884-g a57f7b50c0

and also port back some german translation updates and
trivial whitespace fixes at the same time in *.rc.
2021-05-15 04:37:13 +02:00
Joachim Henze
d3d261cc04 [0.4.9][SHELL32] Fix regression CORE-12364 explorer-sorting
The sorting in explorer broke by
SVN r73128 == git 24fcf531e7

Thanks to Doug Lyons for providing this patch.
2021-01-19 18:22:08 +01:00
Joachim Henze
67072615c2 [0.4.9][SHELL32] Silence a noisy DPRINT.
It gets triggered several times during the setup, but also many times
when browsing with Opera 12.18 for example.

picked from 0.4.10-dev-380-g 74adcadbd0
2020-12-21 04:25:35 +01:00
Joachim Henze
ead395d3ae [0.4.9][SHELL32] Update CShellLink::GetIconLocation() & CShellLink::Extract()
to the state of 0.4.10-release-24-g8c2fc27 to fix
regression CORE-14009 "blank icons in livecd for desktop-lnk cmd & QuickLaunch"
which regressed by 0.4.7-dev-111-g d800840 == SVN r75607

The most relevant part came from 0.4.11-dev-11-g 6eb6aa2 which I ported back earlier already into 0.4.10-RC-13-g 3a1fe9d

(and this fixes/prevents also another regression CORE-14961 which did affect only intermediate states, in other words
was never present in releases/0.4.7 0.4.8 and 0.4.9)
2020-11-29 23:00:36 +01:00
Katayama Hirofumi MZ
913c11aaa7 [0.4.9][SHELL32] Fix SHFileOperation Move operation (#1487)
Reduce failures of Move operation of shell32!SHFileOperation function. CORE-13450

And also fixes regression CORE-13176 "Drag and drop with multiple files is broken"
which regressed by SVN r74380 == git
fd91fe3337

fix picked from commit 0.4.12-dev-1080-g
c65156002c
2020-11-09 12:58:29 +01:00
Thomas Faber
f926d742d5 [0.4.9] Revert r73436 to avoid trouble with VirtualBox Guest Additions. CORE-13172 CORE-12700 CORE-12765
like in 0.4.8 before

(cherry picked from commit 766ef24948)
2018-05-20 22:47:19 +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
Giannis Adamopoulos
ac950ea01d [SHELL32] shellpath: sync a part of _SHGetDefaultValue with wine
on 32bit builds CSIDL_PROGRAM_FILESX86 is treated as CSIDL_PROGRAM_FILES and on wow64 builds CSIDL_PROGRAM_FILES gets treated as CSIDL_PROGRAM_FILESX86
2018-02-20 10:58:14 +02:00
Giannis Adamopoulos
730d81b9f7 [SHELL32] Fix some test failures 2018-02-20 10:15:23 +02:00
Giannis Adamopoulos
48d88a3617 [SHELL32] CFSFolder: Fix some tests for GetAttributesOf 2018-02-19 02:01:02 +02:00
Giannis Adamopoulos
fd209faa66 [SHELL32] CFSDropTarget: style fixes 2018-02-17 22:01:04 +02:00
Giannis Adamopoulos
4b19b1e49d [SHELL32] CDefView: remove a useless print 2018-02-17 21:40:16 +02:00
Giannis Adamopoulos
6f25b42a31 [SHELL32] CFSDropTarget: Use copy depending on the source drive
Show the default action as the default menu item in the right click menu.
2018-02-17 20:30:37 +02:00
Giannis Adamopoulos
6d91269eda [SHELL32] CFSDropTarget: Initial implementation of right click drag menu 2018-02-17 20:30:37 +02:00
Giannis Adamopoulos
8f8ab050db [SHELL32] CDefView: Implement several methods needed for drop targets
Set the view object as the site of the drop target.
Implement GetItemPosition, SelectAndPositionItems, IsDropOnSource, GetDragPoint.
Use DROPEFFECT_COPY only when the item supports it.
2018-02-17 20:30:37 +02:00