diff --git a/Code/Form1.Designer.cs b/Code/Form1.Designer.cs index 3b97a47..7367796 100644 --- a/Code/Form1.Designer.cs +++ b/Code/Form1.Designer.cs @@ -1024,6 +1024,7 @@ this.quickSettingsTab.Size = new System.Drawing.Size(901, 258); this.quickSettingsTab.TabIndex = 1; this.quickSettingsTab.Text = "Quick Settings"; + this.quickSettingsTab.Enter += new System.EventHandler(this.LoadQuickSettings); // // linkLabel1 // diff --git a/Code/Form1.cs b/Code/Form1.cs index 76a4e91..b4946e9 100644 --- a/Code/Form1.cs +++ b/Code/Form1.cs @@ -454,9 +454,6 @@ namespace Flowframes { if (!initialized) return; aiCombox_SelectedIndexChanged(null, null); - - if (mainTabControl.SelectedTab.Text == "Quick Settings") - LoadQuickSettings(); } private void trimCombox_SelectedIndexChanged(object sender, EventArgs e) @@ -487,6 +484,9 @@ namespace Flowframes { if (!quickSettingsInitialized) return; + if (Program.busy) + LoadQuickSettings(); // Discard any changes if busy + ConfigParser.SaveGuiElement(maxVidHeight, ConfigParser.StringMode.Int); ConfigParser.SaveComboxIndex(dedupMode); ConfigParser.SaveComboxIndex(mpdecimateMode); @@ -496,7 +496,7 @@ namespace Flowframes ConfigParser.SaveGuiElement(scnDetectValue); } - public void LoadQuickSettings () + public void LoadQuickSettings (object sender = null, EventArgs e = null) { ConfigParser.LoadGuiElement(maxVidHeight); ConfigParser.LoadComboxIndex(dedupMode); @@ -519,9 +519,20 @@ namespace Flowframes private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { + if (Program.busy) return; new SettingsForm().ShowDialog(); } #endregion + + private void quickSettingsTab_Enter(object sender, EventArgs e) + { + Logger.Log("enter"); + } + + private void quickSettingsTab_Leave(object sender, EventArgs e) + { + Logger.Log("leave"); + } } } diff --git a/Code/Main/InterpolateUtils.cs b/Code/Main/InterpolateUtils.cs index 5468604..d52a4c5 100644 --- a/Code/Main/InterpolateUtils.cs +++ b/Code/Main/InterpolateUtils.cs @@ -161,12 +161,17 @@ namespace Flowframes.Main if (!string.IsNullOrWhiteSpace(latestFramePath) && frames > currentFactor) { if (bigPreviewForm == null && !preview.Visible /* ||Program.mainForm.WindowState != FormWindowState.Minimized */ /* || !Program.mainForm.IsInFocus()*/) return; // Skip if the preview is not visible or the form is not in focus - if (timeSinceLastPreviewUpdate.ElapsedMilliseconds < previewUpdateRateMs) return; + Logger.Log($"timeSinceLastPreviewUpdate.IsRunning: {timeSinceLastPreviewUpdate.IsRunning} - timeSinceLastPreviewUpdate.ElapsedMilliseconds: {timeSinceLastPreviewUpdate.ElapsedMilliseconds}", true); + if (timeSinceLastPreviewUpdate.IsRunning && timeSinceLastPreviewUpdate.ElapsedMilliseconds < previewUpdateRateMs) return; + Logger.Log("Updating preview", true); Image img = IOUtils.GetImage(latestFramePath); SetPreviewImg(img); } } - catch { } + catch (Exception e) + { + Logger.Log("Error updating preview: " + e.Message, true); + } } public static async Task DeleteInterpolatedInputFrames()