Allow drag n drop file to actions toolbar for uploading

This commit is contained in:
Jaex 2017-02-05 12:49:56 +03:00
parent 3b8251617f
commit 3b92d5008b

View file

@ -65,6 +65,7 @@ private void InitializeComponent()
{ {
SuspendLayout(); SuspendLayout();
AllowDrop = true;
AutoScaleDimensions = new SizeF(6F, 13F); AutoScaleDimensions = new SizeF(6F, 13F);
AutoScaleMode = AutoScaleMode.Font; AutoScaleMode = AutoScaleMode.Font;
AutoSize = true; AutoSize = true;
@ -78,8 +79,10 @@ private void InitializeComponent()
Text = "ShareX - Actions toolbar"; Text = "ShareX - Actions toolbar";
TopMost = Program.Settings.ActionsToolbarStayTopMost; TopMost = Program.Settings.ActionsToolbarStayTopMost;
LocationChanged += SimpleActionsForm_LocationChanged; Shown += ActionsToolbarForm_Shown;
Shown += SimpleActionsForm_Shown; LocationChanged += ActionsToolbarForm_LocationChanged;
DragEnter += ActionsToolbarForm_DragEnter;
DragDrop += ActionsToolbarForm_DragDrop;
tsMain = new ToolStripEx() tsMain = new ToolStripEx()
{ {
@ -164,16 +167,35 @@ private void InitializeComponent()
UpdatePosition(); UpdatePosition();
} }
private void SimpleActionsForm_Shown(object sender, EventArgs e) private void ActionsToolbarForm_Shown(object sender, EventArgs e)
{ {
this.ForceActivate(); this.ForceActivate();
} }
private void SimpleActionsForm_LocationChanged(object sender, EventArgs e) private void ActionsToolbarForm_LocationChanged(object sender, EventArgs e)
{ {
CheckToolbarPosition(); CheckToolbarPosition();
} }
private void ActionsToolbarForm_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop, false) ||
e.Data.GetDataPresent(DataFormats.Bitmap, false) ||
e.Data.GetDataPresent(DataFormats.Text, false))
{
e.Effect = DragDropEffects.Copy;
}
else
{
e.Effect = DragDropEffects.None;
}
}
private void ActionsToolbarForm_DragDrop(object sender, DragEventArgs e)
{
UploadManager.DragDropUpload(e.Data);
}
private void CheckToolbarPosition() private void CheckToolbarPosition()
{ {
Rectangle rectToolbar = Bounds; Rectangle rectToolbar = Bounds;