diff --git a/mRemoteV1/UI/FormExtensions.cs b/mRemoteV1/UI/FormExtensions.cs
new file mode 100644
index 00000000..cf60601a
--- /dev/null
+++ b/mRemoteV1/UI/FormExtensions.cs
@@ -0,0 +1,20 @@
+using System.Drawing;
+using System.Windows.Forms;
+
+
+namespace mRemoteNG.UI
+{
+ public static class FormExtensions
+ {
+ public static void CenterOnTarget(this Form formToMove, Form formToCenterOn)
+ {
+ var targetFormCenterX = formToCenterOn.Location.X + formToCenterOn.Width/2;
+ var targetFormCenterY = formToCenterOn.Location.Y + formToCenterOn.Height/2;
+
+ var thisFormCenterX = formToMove.Location.X + formToMove.Width/2;
+ var thisFormCenterY = formToMove.Location.Y + formToMove.Height/2;
+
+ formToMove.Location = new Point(targetFormCenterX - thisFormCenterX, targetFormCenterY - thisFormCenterY);
+ }
+ }
+}
\ No newline at end of file
diff --git a/mRemoteV1/UI/Forms/CredentialEditorForm.Designer.cs b/mRemoteV1/UI/Forms/CredentialEditorForm.Designer.cs
index 354218a0..f0bfcf9d 100644
--- a/mRemoteV1/UI/Forms/CredentialEditorForm.Designer.cs
+++ b/mRemoteV1/UI/Forms/CredentialEditorForm.Designer.cs
@@ -163,6 +163,7 @@
this.Controls.Add(this.textBoxTitle);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "CredentialEditorForm";
+ this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
this.Text = "Credential Editor";
this.ResumeLayout(false);
this.PerformLayout();
diff --git a/mRemoteV1/UI/Forms/CredentialManagerForm.Designer.cs b/mRemoteV1/UI/Forms/CredentialManagerForm.Designer.cs
index 2798e2f8..0814161b 100644
--- a/mRemoteV1/UI/Forms/CredentialManagerForm.Designer.cs
+++ b/mRemoteV1/UI/Forms/CredentialManagerForm.Designer.cs
@@ -112,6 +112,7 @@
this.Controls.Add(this.objectListView1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "CredentialManagerForm";
+ this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
this.Text = "Credential Manager";
((System.ComponentModel.ISupportInitialize)(this.objectListView1)).EndInit();
this.ResumeLayout(false);
diff --git a/mRemoteV1/UI/Forms/CredentialManagerForm.cs b/mRemoteV1/UI/Forms/CredentialManagerForm.cs
index 95664b6f..e381254a 100644
--- a/mRemoteV1/UI/Forms/CredentialManagerForm.cs
+++ b/mRemoteV1/UI/Forms/CredentialManagerForm.cs
@@ -52,6 +52,7 @@ namespace mRemoteNG.UI.Forms
if (clickedCredential == null) return;
var credentialEditorForm = new CredentialEditorForm(clickedCredential);
credentialEditorForm.ChangesAccepted += (o, args) => RaiseCredentialsChangedEvent(o);
+ credentialEditorForm.CenterOnTarget(this);
credentialEditorForm.Show(this);
}
diff --git a/mRemoteV1/UI/Forms/frmMain.cs b/mRemoteV1/UI/Forms/frmMain.cs
index 0448a74c..3b3c3142 100644
--- a/mRemoteV1/UI/Forms/frmMain.cs
+++ b/mRemoteV1/UI/Forms/frmMain.cs
@@ -1263,6 +1263,7 @@ namespace mRemoteNG.UI.Forms
{
var credentialManager = new CredentialManagerForm(_credentialRecords);
credentialManager.CredentialsChanged += (o, args) => SaveCredentialList();
+ credentialManager.CenterOnTarget(this);
credentialManager.Show();
}
diff --git a/mRemoteV1/mRemoteV1.csproj b/mRemoteV1/mRemoteV1.csproj
index 793c8ba6..cdffaacc 100644
--- a/mRemoteV1/mRemoteV1.csproj
+++ b/mRemoteV1/mRemoteV1.csproj
@@ -274,6 +274,7 @@
Component
+
Form