this fixes:
CORE-18429 Explorer should not have duplicated menus in the File menu
It regressed by
0.4.14-dev-955-g1cf564c 1cf564c25f
And we do now mention here CORE-9467
(and its duplicate CORE-11797 also) to make us
aware there is still something to do in this context. The guilty rev
aimed to fix those. But it wasn't the right thing to do.
by porting back the revert:
0.4.15-dev-6039-g 0fa4edebd9 and addendum
0.4.15-dev-6083-g d3164a0f55
by porting back:
0.4.15-dev-5588-g e89675768b [SHELL32] Add 3 accelerators for IDM_DRAGFILE MENU de-DE.rc (#5001)
pick a single line only of 0.4.15-dev-984-g a5a30fc249 [SHELL32] CFSDropTarget.cpp ERR->TRACE to mute logspam
and strip some EOL-whitespaces in 3 related source-files thats contents I will port back into even older branches, like it was done in master.
Logspam started during 0.4.9-dev'ing when zipfldr got committed,
logspam became much worse by 0.4.10-dev-599-g 932df37
But the actual bug of 'calling those functions when not needed' is much older than that.
Fix picked from 0.4.15-dev-3275-g cee171f5d2
Renaming .LNK files had a bug that the selection won't include the extension-like filename part.
That regressed by
0.4.14-dev-1116-g 4df9355d0c
fix picked from 0.4.15-dev-3261-g 9078e34f3c
Selection on renaming folders shouldn't select
the extension-like part of filename.
It regressed by 0.4.14-dev-1116-g 4df9355d0c
Fix picked from 0.4.15-dev-3242-g 5da934e34d
This occurred in the file explorer because the menu isn't destroyed and recreated each time, so the menu item, once checked, will stay checked forever. We must call CheckMenuItem with MF_UNCHECKED to clear the check when necessary
- On desktop view, we have to watch both the common desktop and the private desktop.
- In Windows, IShellLink::Save (shortcut creation) sends SHCNE_CREATE or SHCNE_UPDATEITEM notification.
- Simplify CChangeNotify::ShouldNotify.
CORE-10391
Reject invalid input filename characters by using shell32!SHLimitInputEdit function and IItemNameLimits interface. Improve SHLimitInputEdit to sanitize paste.
CORE-11701
PR #2101 shows desktop.ini files on Desktop. I want to hide them.
- Add "ShowSuperHidden" setting to Explorer.
- Add SHCONTF_INCLUDESUPERHIDDEN flag.
- Support SHCONTF_INCLUDESUPERHIDDEN in Explorer.
CORE-10045
- In the exported SHCreateDefaultContextMenu() and
IDataObject_Constructor() functions (called amongst others by
the exported CIDLData_CreateFromIDArray() function).
- In the exported SHCreateShellFolderView() function.
- In CDefView::GetItemObject(), where data was written to *ppvOut before
ppvOut was being checked for NULL.
Previously, we would treat the input as unsigned coordinates, this is wrong!
If the coordinates are invalid, we try to find a focused or selected item.
The center of this item is where we'll show the menu.
When there is no item, we default to 0,0
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.
CDefView: Make GetItemObject return an IContectMenu after setting itself as the site.
CDefViewBckgrndMenu: Make the inner context menu use the same site. Implement handling CMDSTR_VIEWLISTA and CMDSTR_VIEWDETAILSA.
CDefaultContextMenu: CMDSTR_VIEWLISTA and CMDSTR_VIEWDETAILSA shouldn't be handled in this class.
Fixes CORE-14327 and the two buttons that change the view mode