From 995f03d03e538a5af27f81dc5db688963c7a604e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 16 Oct 2025 03:38:46 +0000 Subject: [PATCH 1/2] Initial plan From 4ae8e4252b240ce94e7ecc6cccbe69277fa1ba45 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 16 Oct 2025 03:49:45 +0000 Subject: [PATCH 2/2] Convert frmAbout from Form to BaseWindow to prevent connection close dialog - Changed frmAbout to inherit from BaseWindow instead of Form - Updated HelpMenu to show About window in DockPanel - Removed Form-specific properties (TopMost, StartPosition, FormBorderStyle, etc.) - Removed Hide() behavior in OnFormClosing to allow proper tab closure - Added TabText property for proper tab display Co-authored-by: Kvarkas <3611964+Kvarkas@users.noreply.github.com> --- mRemoteNG/UI/Forms/FrmAbout.Designer.cs | 7 +------ mRemoteNG/UI/Forms/FrmAbout.cs | 10 ++++++---- mRemoteNG/UI/Menu/msMain/HelpMenu.cs | 7 ++++++- 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/mRemoteNG/UI/Forms/FrmAbout.Designer.cs b/mRemoteNG/UI/Forms/FrmAbout.Designer.cs index 7f2fb295..ef7b7613 100644 --- a/mRemoteNG/UI/Forms/FrmAbout.Designer.cs +++ b/mRemoteNG/UI/Forms/FrmAbout.Designer.cs @@ -142,14 +142,9 @@ Controls.Add(pbLogo); Font = new System.Drawing.Font("Segoe UI", 8.25F); ForeColor = System.Drawing.SystemColors.ControlText; - FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; - MaximizeBox = false; - MaximumSize = new System.Drawing.Size(20000, 10000); - MinimizeBox = false; Name = "frmAbout"; - StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; Text = "About"; - TopMost = true; + TabText = "About"; ((System.ComponentModel.ISupportInitialize)pbLogo).EndInit(); pnlBottom.ResumeLayout(false); pnlBottom.PerformLayout(); diff --git a/mRemoteNG/UI/Forms/FrmAbout.cs b/mRemoteNG/UI/Forms/FrmAbout.cs index 3a60bbb0..976b7c2b 100644 --- a/mRemoteNG/UI/Forms/FrmAbout.cs +++ b/mRemoteNG/UI/Forms/FrmAbout.cs @@ -7,11 +7,12 @@ using System.Reflection; using mRemoteNG.Properties; using System.Runtime.InteropServices; using System.Runtime.Versioning; +using mRemoteNG.UI.Window; namespace mRemoteNG.UI.Forms { [SupportedOSPlatform("windows")] - public partial class frmAbout : Form + public partial class frmAbout : BaseWindow { public static frmAbout Instance { get; set; } = new frmAbout(); @@ -28,6 +29,7 @@ namespace mRemoteNG.UI.Forms { lblLicense.Text = Language.ReleasedUnderGPL; base.Text = Language.MenuItem_About; + TabText = Language.MenuItem_About; llChangelog.Text = Language.Changelog; llCredits.Text = Language.Credits; llLicense.Text = Language.License; @@ -50,9 +52,9 @@ namespace mRemoteNG.UI.Forms protected override void OnFormClosing(FormClosingEventArgs e) { base.OnFormClosing(e); - - e.Cancel = true; - Hide(); + + // Don't cancel close when shown in DockPanel + // This allows the tab to close properly without showing connection close dialog } private void llLicense_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) diff --git a/mRemoteNG/UI/Menu/msMain/HelpMenu.cs b/mRemoteNG/UI/Menu/msMain/HelpMenu.cs index 5c447016..dc0c6a1e 100644 --- a/mRemoteNG/UI/Menu/msMain/HelpMenu.cs +++ b/mRemoteNG/UI/Menu/msMain/HelpMenu.cs @@ -202,7 +202,12 @@ namespace mRemoteNG.UI.Menu private void mMenInfoDonate_Click(object? sender, EventArgs e) => Process.Start("explorer.exe", GeneralAppInfo.UrlDonate); - private void mMenInfoAbout_Click(object? sender, EventArgs e) => frmAbout.Instance.Show(); + private void mMenInfoAbout_Click(object? sender, EventArgs e) + { + if (frmAbout.Instance == null || frmAbout.Instance.IsDisposed) + frmAbout.Instance = new frmAbout(); + frmAbout.Instance.Show(FrmMain.Default.pnlDock); + } #endregion }