diff --git a/Greenshot/Forms/ImageEditorForm.Designer.cs b/Greenshot/Forms/ImageEditorForm.Designer.cs index 8a34ff253..be9960783 100644 --- a/Greenshot/Forms/ImageEditorForm.Designer.cs +++ b/Greenshot/Forms/ImageEditorForm.Designer.cs @@ -1585,6 +1585,7 @@ namespace Greenshot { this.Activated += new System.EventHandler(this.ImageEditorFormActivated); this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.ImageEditorFormFormClosing); this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.ImageEditorFormKeyDown); + this.Resize += new System.EventHandler(this.ImageEditorFormResize); this.toolStripContainer1.BottomToolStripPanel.ResumeLayout(false); this.toolStripContainer1.BottomToolStripPanel.PerformLayout(); this.toolStripContainer1.ContentPanel.ResumeLayout(false); diff --git a/Greenshot/Forms/ImageEditorForm.cs b/Greenshot/Forms/ImageEditorForm.cs index 1be34bd95..fd945f3d8 100644 --- a/Greenshot/Forms/ImageEditorForm.cs +++ b/Greenshot/Forms/ImageEditorForm.cs @@ -342,6 +342,7 @@ namespace Greenshot { this.Size = new Size(newWidth, newHeight); } dimensionsLabel.Text = this.Surface.Image.Width + "x" + this.Surface.Image.Height; + ImageEditorFormResize(source,new EventArgs()); } private void ReloadConfiguration(object source, FileSystemEventArgs e) { @@ -1199,5 +1200,20 @@ namespace Greenshot { surface.ApplyBitmapEffect(Effects.Invert); updateUndoRedoSurfaceDependencies(); } + + private void ImageEditorFormResize(object sender, EventArgs e) { + if (this.Surface == null) { + return; + } + Size imageSize = this.Surface.Image.Size; + Size currentImageClientSize = this.panel1.ClientSize; + if (currentImageClientSize.Height > imageSize.Height && currentImageClientSize.Width > imageSize.Width) { + var canvas = this.Surface as Control; + if (canvas != null) { + canvas.Top = (currentImageClientSize.Height - imageSize.Height) / 2; + canvas.Left = (currentImageClientSize.Width - imageSize.Width) / 2; + } + } + } } }