mirror of
https://github.com/ShareX/ShareX.git
synced 2024-09-29 17:02:05 +13:00
Hold CTRL when dragging to copy URLs
This commit is contained in:
parent
063bc70fb7
commit
0857174538
2 changed files with 29 additions and 10 deletions
|
@ -1278,14 +1278,37 @@ private void lvUploads_KeyDown(object sender, KeyEventArgs e)
|
|||
|
||||
private void lvUploads_ItemDrag(object sender, ItemDragEventArgs e)
|
||||
{
|
||||
TaskInfo[] taskInfos = GetCurrentTasks().Select(x => x.Info).Where(x => x != null && !string.IsNullOrEmpty(x.FilePath) && File.Exists(x.FilePath)).ToArray();
|
||||
TaskInfo[] taskInfos = GetCurrentTasks().Select(x => x.Info).Where(x => x != null).ToArray();
|
||||
|
||||
if (taskInfos.Length > 0)
|
||||
{
|
||||
AllowDrop = false;
|
||||
IDataObject dataObject = null;
|
||||
|
||||
IDataObject dataObject = new DataObject(DataFormats.FileDrop, taskInfos.Select(x => x.FilePath).ToArray());
|
||||
lvUploads.DoDragDrop(dataObject, DragDropEffects.Copy);
|
||||
if (ModifierKeys.HasFlag(Keys.Control))
|
||||
{
|
||||
string[] urls = taskInfos.Select(x => x.ToString()).Where(x => !string.IsNullOrEmpty(x)).ToArray();
|
||||
|
||||
if (urls.Length > 0)
|
||||
{
|
||||
dataObject = new DataObject(DataFormats.Text, string.Join(Environment.NewLine, urls));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
string[] files = taskInfos.Select(x => x.FilePath).Where(x => !string.IsNullOrEmpty(x) && File.Exists(x)).ToArray();
|
||||
|
||||
if (files.Length > 0)
|
||||
{
|
||||
dataObject = new DataObject(DataFormats.FileDrop, files);
|
||||
}
|
||||
}
|
||||
|
||||
if (dataObject != null)
|
||||
{
|
||||
AllowDrop = false;
|
||||
|
||||
lvUploads.DoDragDrop(dataObject, DragDropEffects.Copy);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -152,13 +152,9 @@ public TaskInfo(TaskSettings taskSettings)
|
|||
|
||||
public override string ToString()
|
||||
{
|
||||
string text = "";
|
||||
string text = Result.ToString();
|
||||
|
||||
if (!string.IsNullOrEmpty(Result.ToString()))
|
||||
{
|
||||
text = Result.ToString();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(FilePath))
|
||||
if (string.IsNullOrEmpty(text) && !string.IsNullOrEmpty(FilePath))
|
||||
{
|
||||
text = FilePath;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue