diff --git a/BizHawk.Client.Common/config/Config.cs b/BizHawk.Client.Common/config/Config.cs index 65b0b75639a..ffa3a7e658f 100644 --- a/BizHawk.Client.Common/config/Config.cs +++ b/BizHawk.Client.Common/config/Config.cs @@ -269,6 +269,7 @@ public const int public bool DispChrome_StatusBarFullscreen = false; public bool DispChrome_MenuFullscreen = false; public bool DispChrome_Fullscreen_AutohideMouse = true; + public bool DispChrome_AllowDoubleClickFullscreen = true; public EDispManagerAR DispManagerAR = EDispManagerAR.System; public int DispCustomUserARWidth = 1; diff --git a/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj b/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj index 018181e4ffb..5e3798dc2ca 100644 --- a/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj +++ b/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj @@ -531,7 +531,9 @@ Component - + + Component + diff --git a/BizHawk.Client.EmuHawk/PresentationPanel.cs b/BizHawk.Client.EmuHawk/PresentationPanel.cs index 0c91d3500cc..98867f830f8 100644 --- a/BizHawk.Client.EmuHawk/PresentationPanel.cs +++ b/BizHawk.Client.EmuHawk/PresentationPanel.cs @@ -58,7 +58,10 @@ private void HandleFullscreenToggle(object sender, MouseEventArgs e) { //allow suppression of the toggle.. but if shift is pressed, always do the toggle bool allowSuppress = Control.ModifierKeys != Keys.Shift; - GlobalWin.MainForm.ToggleFullscreen(allowSuppress); + if (Global.Config.DispChrome_AllowDoubleClickFullscreen || !allowSuppress) + { + GlobalWin.MainForm.ToggleFullscreen(allowSuppress); + } } } diff --git a/BizHawk.Client.EmuHawk/config/DisplayConfigLite.Designer.cs b/BizHawk.Client.EmuHawk/config/DisplayConfigLite.Designer.cs index 258bdd78da2..cf0831b3ed0 100644 --- a/BizHawk.Client.EmuHawk/config/DisplayConfigLite.Designer.cs +++ b/BizHawk.Client.EmuHawk/config/DisplayConfigLite.Designer.cs @@ -89,6 +89,7 @@ private void InitializeComponent() this.cbMenuWindowed = new System.Windows.Forms.CheckBox(); this.trackbarFrameSizeWindowed = new BizHawk.Client.EmuHawk.TransparentTrackBar(); this.cbCaptionWindowed = new System.Windows.Forms.CheckBox(); + this.cbAllowDoubleclickFullscreen = new System.Windows.Forms.CheckBox(); this.groupBox1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.tbScanlineIntensity)).BeginInit(); this.grpFinalFilter.SuspendLayout(); @@ -628,6 +629,7 @@ private void InitializeComponent() // // tabPage1 // + this.tabPage1.Controls.Add(this.cbAllowDoubleclickFullscreen); this.tabPage1.Controls.Add(this.groupBox4); this.tabPage1.Controls.Add(this.groupBox2); this.tabPage1.Location = new System.Drawing.Point(4, 22); @@ -647,7 +649,7 @@ private void InitializeComponent() this.groupBox4.Controls.Add(this.cbMenuFullscreen); this.groupBox4.Location = new System.Drawing.Point(143, 6); this.groupBox4.Name = "groupBox4"; - this.groupBox4.Size = new System.Drawing.Size(266, 235); + this.groupBox4.Size = new System.Drawing.Size(266, 211); this.groupBox4.TabIndex = 27; this.groupBox4.TabStop = false; this.groupBox4.Text = "Fullscreen"; @@ -710,7 +712,7 @@ private void InitializeComponent() this.groupBox2.Controls.Add(this.cbCaptionWindowed); this.groupBox2.Location = new System.Drawing.Point(6, 6); this.groupBox2.Name = "groupBox2"; - this.groupBox2.Size = new System.Drawing.Size(131, 235); + this.groupBox2.Size = new System.Drawing.Size(131, 211); this.groupBox2.TabIndex = 26; this.groupBox2.TabStop = false; this.groupBox2.Text = "Windowed"; @@ -774,6 +776,16 @@ private void InitializeComponent() this.cbCaptionWindowed.Text = "Caption"; this.cbCaptionWindowed.UseVisualStyleBackColor = true; // + // cbAllowDoubleclickFullscreen + // + this.cbAllowDoubleclickFullscreen.AutoSize = true; + this.cbAllowDoubleclickFullscreen.Location = new System.Drawing.Point(12, 223); + this.cbAllowDoubleclickFullscreen.Name = "cbAllowDoubleclickFullscreen"; + this.cbAllowDoubleclickFullscreen.Size = new System.Drawing.Size(347, 17); + this.cbAllowDoubleclickFullscreen.TabIndex = 27; + this.cbAllowDoubleclickFullscreen.Text = "Allow Double-Click Fullscreen (hold shift to force fullscreen to toggle)"; + this.cbAllowDoubleclickFullscreen.UseVisualStyleBackColor = true; + // // DisplayConfigLite // this.AcceptButton = this.btnOk; @@ -807,6 +819,7 @@ private void InitializeComponent() this.groupBox5.ResumeLayout(false); this.groupBox5.PerformLayout(); this.tabPage1.ResumeLayout(false); + this.tabPage1.PerformLayout(); this.groupBox4.ResumeLayout(false); this.groupBox4.PerformLayout(); this.groupBox2.ResumeLayout(false); @@ -878,5 +891,6 @@ private void InitializeComponent() private System.Windows.Forms.RadioButton rbDisplayAbsoluteZero; private System.Windows.Forms.RadioButton rbDisplayMinimal; private System.Windows.Forms.RadioButton rbDisplayFull; + private System.Windows.Forms.CheckBox cbAllowDoubleclickFullscreen; } } \ No newline at end of file diff --git a/BizHawk.Client.EmuHawk/config/DisplayConfigLite.cs b/BizHawk.Client.EmuHawk/config/DisplayConfigLite.cs index 8320458778a..034b1aca4be 100644 --- a/BizHawk.Client.EmuHawk/config/DisplayConfigLite.cs +++ b/BizHawk.Client.EmuHawk/config/DisplayConfigLite.cs @@ -56,6 +56,8 @@ public DisplayConfigLite() cbFSAutohideMouse.Checked = Global.Config.DispChrome_Fullscreen_AutohideMouse; SyncTrackbar(); + cbAllowDoubleclickFullscreen.Checked = Global.Config.DispChrome_AllowDoubleClickFullscreen; + nudPrescale.Value = Global.Config.DispPrescale; // null emulator config hack @@ -113,6 +115,7 @@ private void btnOk_Click(object sender, EventArgs e) Global.Config.DispChrome_MenuFullscreen = cbMenuFullscreen.Checked; Global.Config.DispChrome_FrameWindowed = trackbarFrameSizeWindowed.Value; Global.Config.DispChrome_Fullscreen_AutohideMouse = cbFSAutohideMouse.Checked; + Global.Config.DispChrome_AllowDoubleClickFullscreen = cbAllowDoubleclickFullscreen.Checked; if (rbDisplayFull.Checked) Global.Config.DispSpeedupFeatures = 2; if (rbDisplayMinimal.Checked) Global.Config.DispSpeedupFeatures = 1;