From b45462ebd0fb33f2c2409e495155b49426c91ef6 Mon Sep 17 00:00:00 2001 From: sdottaka Date: Sun, 17 Mar 2013 07:38:55 +0900 Subject: [PATCH] Enable right button drag and drop --- ShellExtension/ShellExtension.rc | 8 ++++---- ShellExtension/WinMergeShell.cpp | 11 ++++++++--- ShellExtension/WinMergeShell.rgs | 12 ++++++++++++ 3 files changed, 24 insertions(+), 7 deletions(-) diff --git a/ShellExtension/ShellExtension.rc b/ShellExtension/ShellExtension.rc index 935b81787..9eb908a48 100644 --- a/ShellExtension/ShellExtension.rc +++ b/ShellExtension/ShellExtension.rc @@ -304,8 +304,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,16,5,1 - PRODUCTVERSION 1,16,5,1 + FILEVERSION 1,16,5,2 + PRODUCTVERSION 1,16,5,2 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -323,7 +323,7 @@ BEGIN VALUE "Comments", "\0" VALUE "CompanyName", "http://winmerge.org\0" VALUE "FileDescription", "WinMerge Shell Integration library\0" - VALUE "FileVersion", "1.16.5.1\0" + VALUE "FileVersion", "1.16.5.2\0" VALUE "InternalName", "ShellExtension\0" VALUE "LegalCopyright", "Copyright 2003-2013\0" VALUE "LegalTrademarks", "\0" @@ -331,7 +331,7 @@ BEGIN VALUE "OriginalFilename", "ShellExtension.DLL\0" VALUE "PrivateBuild", "\0" VALUE "ProductName", "WinMerge Shell Integration library\0" - VALUE "ProductVersion", "1.16.5.1\0" + VALUE "ProductVersion", "1.16.5.2\0" VALUE "SpecialBuild", "\0" END END diff --git a/ShellExtension/WinMergeShell.cpp b/ShellExtension/WinMergeShell.cpp index 7038226db..19a601fd8 100644 --- a/ShellExtension/WinMergeShell.cpp +++ b/ShellExtension/WinMergeShell.cpp @@ -279,15 +279,20 @@ HRESULT CWinMergeShell::Initialize(LPCITEMIDLIST pidlFolder, GlobalUnlock(stg.hGlobal); ReleaseStgMedium(&stg); } - else if (pidlFolder) + else { + m_nSelectedItems = 0; + } + // No item selected - selection is the folder background + if (pidlFolder) + { TCHAR szPath[MAX_PATH] = {0}; if (SHGetPathFromIDList(pidlFolder, szPath)) { - m_strPaths[0] = szPath; - m_nSelectedItems = 1; + if (m_nSelectedItems < MaxFileCount) + m_strPaths[m_nSelectedItems++] = szPath; hr = S_OK; } else diff --git a/ShellExtension/WinMergeShell.rgs b/ShellExtension/WinMergeShell.rgs index 51e1f8492..9ae702bc2 100644 --- a/ShellExtension/WinMergeShell.rgs +++ b/ShellExtension/WinMergeShell.rgs @@ -42,6 +42,10 @@ HKCR { ForceRemove WinMerge = s '{4E716236-AA30-4C65-B225-D68BBA81E9C2}' } + NoRemove DragDropHandlers + { + ForceRemove WinMerge = s '{4E716236-AA30-4C65-B225-D68BBA81E9C2}' + } } } @@ -55,6 +59,10 @@ HKCR { ForceRemove WinMerge = s '{4E716236-AA30-4C65-B225-D68BBA81E9C2}' } + NoRemove DragDropHandlers + { + ForceRemove WinMerge = s '{4E716236-AA30-4C65-B225-D68BBA81E9C2}' + } } } } @@ -67,6 +75,10 @@ HKCR { ForceRemove WinMerge = s '{4E716236-AA30-4C65-B225-D68BBA81E9C2}' } + NoRemove DragDropHandlers + { + ForceRemove WinMerge = s '{4E716236-AA30-4C65-B225-D68BBA81E9C2}' + } } } } -- 2.11.0