From 5e7dbd23fa86d3f55d25f4d496a8f7fc8c052f89 Mon Sep 17 00:00:00 2001 From: Jaex Date: Sun, 4 Jun 2023 01:07:30 +0300 Subject: [PATCH] Code refactoring --- ShareX.HelpersLib/Extensions/Extensions.cs | 10 +++++++++- ShareX.HelpersLib/Forms/ClipboardViewerForm.cs | 3 +-- ShareX.HelpersLib/Forms/ColorPickerForm.cs | 3 +-- ShareX.HelpersLib/Forms/DNSChangerForm.cs | 3 +-- ShareX.HelpersLib/Forms/HashCheckForm.cs | 3 +-- ShareX.HelpersLib/Forms/InputBox.cs | 3 +-- ShareX.HelpersLib/Forms/MonitorTestForm.cs | 3 +-- ShareX.HelpersLib/Forms/OutputBox.cs | 3 +-- ShareX.HelpersLib/Forms/ScreenTearingTestForm.cs | 3 +-- ShareX.HelpersLib/ShareXResources.cs | 7 ++++++- ShareX.HistoryLib/Forms/HistoryForm.cs | 10 ++++------ ShareX.HistoryLib/Forms/ImageHistoryForm.cs | 11 ++++------- ShareX.IndexerLib/Forms/DirectoryIndexerForm.cs | 3 +-- ShareX.MediaLib/Forms/ImageBeautifierForm.cs | 3 +-- ShareX.MediaLib/Forms/ImageCombinerForm.cs | 3 +-- ShareX.MediaLib/Forms/ImageSplitterForm.cs | 3 +-- ShareX.MediaLib/Forms/ImageThumbnailerForm.cs | 3 +-- ShareX.MediaLib/Forms/VideoConverterForm.cs | 3 +-- ShareX.MediaLib/Forms/VideoThumbnailerForm.cs | 3 +-- ShareX.ScreenCaptureLib/Forms/StickerForm.cs | 2 -- ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs | 6 +++--- ShareX.UploadersLib/Forms/TextUploadForm.cs | 3 +-- ShareX/Forms/InspectWindowForm.cs | 3 +-- ShareX/Forms/MainForm.cs | 2 +- ShareX/Forms/QRCodeForm.cs | 3 +-- ShareX/Tools/BorderlessWindow/BorderlessWindowForm.cs | 3 +-- ShareX/Tools/OCR/OCRForm.cs | 3 +-- ShareX/Tools/PinToScreen/PinToScreenForm.cs | 3 +-- 28 files changed, 48 insertions(+), 63 deletions(-) diff --git a/ShareX.HelpersLib/Extensions/Extensions.cs b/ShareX.HelpersLib/Extensions/Extensions.cs index 879744d97..4929c54f5 100644 --- a/ShareX.HelpersLib/Extensions/Extensions.cs +++ b/ShareX.HelpersLib/Extensions/Extensions.cs @@ -345,8 +345,8 @@ public static void SupportSelectAll(this TextBox tb) if (e.KeyData == (Keys.Control | Keys.A)) { tb.SelectAll(); + e.SuppressKeyPress = true; - e.Handled = true; } }; } @@ -928,6 +928,14 @@ public static void CloseOnEscape(this Form form) { form.KeyPreview = true; + form.KeyDown += (sender, e) => + { + if (e.KeyCode == Keys.Escape) + { + e.SuppressKeyPress = true; + } + }; + form.KeyUp += (sender, e) => { if (e.KeyCode == Keys.Escape) diff --git a/ShareX.HelpersLib/Forms/ClipboardViewerForm.cs b/ShareX.HelpersLib/Forms/ClipboardViewerForm.cs index 62d209b31..a50c41a1d 100644 --- a/ShareX.HelpersLib/Forms/ClipboardViewerForm.cs +++ b/ShareX.HelpersLib/Forms/ClipboardViewerForm.cs @@ -37,8 +37,7 @@ public partial class ClipboardViewerForm : Form public ClipboardViewerForm() { InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); } private void ClipboardViewerForm_Load(object sender, EventArgs e) diff --git a/ShareX.HelpersLib/Forms/ColorPickerForm.cs b/ShareX.HelpersLib/Forms/ColorPickerForm.cs index 2a29d99c6..9cac9d6ac 100644 --- a/ShareX.HelpersLib/Forms/ColorPickerForm.cs +++ b/ShareX.HelpersLib/Forms/ColorPickerForm.cs @@ -46,8 +46,7 @@ public partial class ColorPickerForm : Form public ColorPickerForm(Color currentColor, bool isScreenColorPickerMode = false, bool checkClipboard = true, ColorPickerOptions options = null) { InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); clipboardStatusHider = new ControlHider(btnClipboardStatus, 2000); IsScreenColorPickerMode = isScreenColorPickerMode; diff --git a/ShareX.HelpersLib/Forms/DNSChangerForm.cs b/ShareX.HelpersLib/Forms/DNSChangerForm.cs index 8dfa01d3e..98c8357b3 100644 --- a/ShareX.HelpersLib/Forms/DNSChangerForm.cs +++ b/ShareX.HelpersLib/Forms/DNSChangerForm.cs @@ -35,8 +35,7 @@ public partial class DNSChangerForm : Form public DNSChangerForm() { InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); AddDNS(Resources.DNSChangerForm_DNSChangerForm_Manual); AddDNS("Google Public DNS", "8.8.8.8", "8.8.4.4"); // https://developers.google.com/speed/public-dns/ diff --git a/ShareX.HelpersLib/Forms/HashCheckForm.cs b/ShareX.HelpersLib/Forms/HashCheckForm.cs index d50cf682e..82e16c09e 100644 --- a/ShareX.HelpersLib/Forms/HashCheckForm.cs +++ b/ShareX.HelpersLib/Forms/HashCheckForm.cs @@ -40,8 +40,7 @@ public partial class HashCheckForm : Form public HashCheckForm() { InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); UpdateCompareControls(); cbHashType.Items.AddRange(Helpers.GetEnumDescriptions()); diff --git a/ShareX.HelpersLib/Forms/InputBox.cs b/ShareX.HelpersLib/Forms/InputBox.cs index a02a49810..8c7818261 100644 --- a/ShareX.HelpersLib/Forms/InputBox.cs +++ b/ShareX.HelpersLib/Forms/InputBox.cs @@ -36,8 +36,7 @@ public class InputBox : Form private InputBox(string title, string inputText = null, string okText = null, string cancelText = null) { InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); InputText = inputText; diff --git a/ShareX.HelpersLib/Forms/MonitorTestForm.cs b/ShareX.HelpersLib/Forms/MonitorTestForm.cs index 24b28e4c6..2fc3e45bc 100644 --- a/ShareX.HelpersLib/Forms/MonitorTestForm.cs +++ b/ShareX.HelpersLib/Forms/MonitorTestForm.cs @@ -35,8 +35,7 @@ public partial class MonitorTestForm : Form public MonitorTestForm() { InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); Rectangle screenBounds = CaptureHelpers.GetScreenBounds(); Location = screenBounds.Location; diff --git a/ShareX.HelpersLib/Forms/OutputBox.cs b/ShareX.HelpersLib/Forms/OutputBox.cs index d32877c15..e5cfcca9d 100644 --- a/ShareX.HelpersLib/Forms/OutputBox.cs +++ b/ShareX.HelpersLib/Forms/OutputBox.cs @@ -36,8 +36,7 @@ private OutputBox(string text, string title, bool scrollToEnd = false) { InitializeComponent(); rtbText.AddContextMenu(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); Text = "ShareX - " + title; rtbText.Text = text; diff --git a/ShareX.HelpersLib/Forms/ScreenTearingTestForm.cs b/ShareX.HelpersLib/Forms/ScreenTearingTestForm.cs index d2bb9272d..6870877ae 100644 --- a/ShareX.HelpersLib/Forms/ScreenTearingTestForm.cs +++ b/ShareX.HelpersLib/Forms/ScreenTearingTestForm.cs @@ -52,7 +52,6 @@ public ScreenTearingTestForm() Bounds = screenRectangle; Cursor = Cursors.Hand; FormBorderStyle = FormBorderStyle.None; - Icon = ShareXResources.Icon; SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.UserPaint | ControlStyles.AllPaintingInWmPaint, true); Text = "ShareX - Screen tearing test"; ShowInTaskbar = false; @@ -60,7 +59,7 @@ public ScreenTearingTestForm() ResumeLayout(false); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); animationTime = Stopwatch.StartNew(); } diff --git a/ShareX.HelpersLib/ShareXResources.cs b/ShareX.HelpersLib/ShareXResources.cs index aea26f042..c52c05eda 100644 --- a/ShareX.HelpersLib/ShareXResources.cs +++ b/ShareX.HelpersLib/ShareXResources.cs @@ -123,8 +123,13 @@ public static Bitmap Logo public static ShareXTheme Theme { get; set; } = ShareXTheme.DarkTheme; - public static void ApplyTheme(Form form, bool setIcon = true) + public static void ApplyTheme(Form form, bool closeOnEscape = false, bool setIcon = true) { + if (closeOnEscape) + { + form.CloseOnEscape(); + } + if (setIcon) { form.Icon = Icon; diff --git a/ShareX.HistoryLib/Forms/HistoryForm.cs b/ShareX.HistoryLib/Forms/HistoryForm.cs index d6c7075e8..bdbadec05 100644 --- a/ShareX.HistoryLib/Forms/HistoryForm.cs +++ b/ShareX.HistoryLib/Forms/HistoryForm.cs @@ -89,9 +89,7 @@ public HistoryForm(string historyPath, HistorySettings settings, Action tstbSearch.Text = Settings.SearchText; } - ShareXResources.ApplyTheme(this); - - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); if (Settings.RememberWindowState) { @@ -412,11 +410,11 @@ private async void HistoryForm_KeyDown(object sender, KeyEventArgs e) switch (e.KeyData) { case Keys.F5: - e.Handled = true; + e.SuppressKeyPress = true; await RefreshHistoryItems(); break; case Keys.Control | Keys.F5 when HelpersOptions.DevMode: - e.Handled = true; + e.SuppressKeyPress = true; await RefreshHistoryItems(true); break; } @@ -521,7 +519,7 @@ private void lvHistory_MouseDoubleClick(object sender, MouseEventArgs e) private void lvHistory_KeyDown(object sender, KeyEventArgs e) { - e.Handled = e.SuppressKeyPress = him.HandleKeyInput(e); + e.SuppressKeyPress = him.HandleKeyInput(e); } private void lvHistory_ItemDrag(object sender, ItemDragEventArgs e) diff --git a/ShareX.HistoryLib/Forms/ImageHistoryForm.cs b/ShareX.HistoryLib/Forms/ImageHistoryForm.cs index bd2497a37..e1fbf4d88 100644 --- a/ShareX.HistoryLib/Forms/ImageHistoryForm.cs +++ b/ShareX.HistoryLib/Forms/ImageHistoryForm.cs @@ -74,9 +74,7 @@ public ImageHistoryForm(string historyPath, ImageHistorySettings settings, Actio tstbSearch.Text = Settings.SearchText; } - ShareXResources.ApplyTheme(this); - - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); if (Settings.RememberWindowState) { @@ -187,11 +185,11 @@ private void ImageHistoryForm_KeyDown(object sender, KeyEventArgs e) { case Keys.F5: RefreshHistoryItems(); - e.Handled = true; + e.SuppressKeyPress = true; break; case Keys.Control | Keys.F5 when HelpersOptions.DevMode: RefreshHistoryItems(true); - e.Handled = true; + e.SuppressKeyPress = true; break; } } @@ -231,7 +229,6 @@ private void tstbSearch_KeyDown(object sender, KeyEventArgs e) if (e.KeyCode == Keys.Enter) { RefreshHistoryItems(); - e.Handled = true; e.SuppressKeyPress = true; } } @@ -254,7 +251,7 @@ private void tsbSettings_Click(object sender, EventArgs e) private void ilvImages_KeyDown(object sender, KeyEventArgs e) { - e.Handled = e.SuppressKeyPress = him.HandleKeyInput(e); + e.SuppressKeyPress = him.HandleKeyInput(e); } #endregion Form events diff --git a/ShareX.IndexerLib/Forms/DirectoryIndexerForm.cs b/ShareX.IndexerLib/Forms/DirectoryIndexerForm.cs index 437692b00..5d6a37fee 100644 --- a/ShareX.IndexerLib/Forms/DirectoryIndexerForm.cs +++ b/ShareX.IndexerLib/Forms/DirectoryIndexerForm.cs @@ -43,8 +43,7 @@ public partial class DirectoryIndexerForm : Form public DirectoryIndexerForm(IndexerSettings settings) { InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); Settings = settings; pgSettings.SelectedObject = Settings; diff --git a/ShareX.MediaLib/Forms/ImageBeautifierForm.cs b/ShareX.MediaLib/Forms/ImageBeautifierForm.cs index 774118ee2..739ae08ae 100644 --- a/ShareX.MediaLib/Forms/ImageBeautifierForm.cs +++ b/ShareX.MediaLib/Forms/ImageBeautifierForm.cs @@ -55,8 +55,7 @@ private ImageBeautifierForm(ImageBeautifierOptions options = null) } InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); title = Text; LoadOptions(); diff --git a/ShareX.MediaLib/Forms/ImageCombinerForm.cs b/ShareX.MediaLib/Forms/ImageCombinerForm.cs index ff2130154..9d297fd1f 100644 --- a/ShareX.MediaLib/Forms/ImageCombinerForm.cs +++ b/ShareX.MediaLib/Forms/ImageCombinerForm.cs @@ -44,8 +44,7 @@ public ImageCombinerForm(ImageCombinerOptions options) Options = options; InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); if (Options.Orientation == Orientation.Horizontal) { diff --git a/ShareX.MediaLib/Forms/ImageSplitterForm.cs b/ShareX.MediaLib/Forms/ImageSplitterForm.cs index cd33b0a31..e971b6ee9 100644 --- a/ShareX.MediaLib/Forms/ImageSplitterForm.cs +++ b/ShareX.MediaLib/Forms/ImageSplitterForm.cs @@ -42,8 +42,7 @@ public partial class ImageSplitterForm : Form public ImageSplitterForm() { InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); UpdateButtonStates(); } diff --git a/ShareX.MediaLib/Forms/ImageThumbnailerForm.cs b/ShareX.MediaLib/Forms/ImageThumbnailerForm.cs index ce8178dc1..0d14f094d 100644 --- a/ShareX.MediaLib/Forms/ImageThumbnailerForm.cs +++ b/ShareX.MediaLib/Forms/ImageThumbnailerForm.cs @@ -37,8 +37,7 @@ public partial class ImageThumbnailerForm : Form public ImageThumbnailerForm() { InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); } private void UpdateEnabled() diff --git a/ShareX.MediaLib/Forms/VideoConverterForm.cs b/ShareX.MediaLib/Forms/VideoConverterForm.cs index 65356189e..53b5a49b7 100644 --- a/ShareX.MediaLib/Forms/VideoConverterForm.cs +++ b/ShareX.MediaLib/Forms/VideoConverterForm.cs @@ -46,8 +46,7 @@ public VideoConverterForm(string ffmpegFilePath, VideoConverterOptions options) Options = options; InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); UpdateOptions(); diff --git a/ShareX.MediaLib/Forms/VideoThumbnailerForm.cs b/ShareX.MediaLib/Forms/VideoThumbnailerForm.cs index 5e83488cb..5945e2081 100644 --- a/ShareX.MediaLib/Forms/VideoThumbnailerForm.cs +++ b/ShareX.MediaLib/Forms/VideoThumbnailerForm.cs @@ -46,8 +46,7 @@ public VideoThumbnailerForm(string ffmpegPath, VideoThumbnailOptions options) Options = options; InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); txtMediaPath.Text = Options.LastVideoPath ?? ""; pgOptions.SelectedObject = Options; diff --git a/ShareX.ScreenCaptureLib/Forms/StickerForm.cs b/ShareX.ScreenCaptureLib/Forms/StickerForm.cs index 0d9b4e0e3..602f207c1 100644 --- a/ShareX.ScreenCaptureLib/Forms/StickerForm.cs +++ b/ShareX.ScreenCaptureLib/Forms/StickerForm.cs @@ -149,7 +149,6 @@ private void tstbSearch_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { - e.Handled = true; e.SuppressKeyPress = true; } } @@ -158,7 +157,6 @@ private void tstbSearch_KeyUp(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { - e.Handled = true; e.SuppressKeyPress = true; if (ilvStickers.Items.Count > 0) diff --git a/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs b/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs index 8a7160251..a6a51e82b 100644 --- a/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs +++ b/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs @@ -1162,7 +1162,7 @@ internal void CreateToolbar() tsMain.PerformLayout(); menuForm.ResumeLayout(false); - ShareXResources.ApplyTheme(menuForm, false); + ShareXResources.ApplyTheme(menuForm, false, false); menuForm.Show(Form); @@ -1190,14 +1190,14 @@ private void MenuForm_KeyDown(object sender, KeyEventArgs e) form_KeyDown(sender, e); Form.RegionCaptureForm_KeyDown(sender, e); - e.Handled = true; + e.SuppressKeyPress = true; } private void MenuForm_KeyUp(object sender, KeyEventArgs e) { form_KeyUp(sender, e); - e.Handled = true; + e.SuppressKeyPress = true; } private void MenuForm_LocationChanged(object sender, EventArgs e) diff --git a/ShareX.UploadersLib/Forms/TextUploadForm.cs b/ShareX.UploadersLib/Forms/TextUploadForm.cs index 96d339e22..4d1486973 100644 --- a/ShareX.UploadersLib/Forms/TextUploadForm.cs +++ b/ShareX.UploadersLib/Forms/TextUploadForm.cs @@ -36,8 +36,7 @@ public partial class TextUploadForm : Form public TextUploadForm(string content = null) { InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); if (string.IsNullOrEmpty(content) && ClipboardHelpers.ContainsText()) { diff --git a/ShareX/Forms/InspectWindowForm.cs b/ShareX/Forms/InspectWindowForm.cs index 337d3c6b6..45db561e5 100644 --- a/ShareX/Forms/InspectWindowForm.cs +++ b/ShareX/Forms/InspectWindowForm.cs @@ -40,8 +40,7 @@ public InspectWindowForm() { InitializeComponent(); rtbInfo.AddContextMenu(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); SelectHandle(true); } diff --git a/ShareX/Forms/MainForm.cs b/ShareX/Forms/MainForm.cs index fad241984..6ddb8bb4d 100644 --- a/ShareX/Forms/MainForm.cs +++ b/ShareX/Forms/MainForm.cs @@ -1465,7 +1465,7 @@ private void lvUploads_KeyDown(object sender, KeyEventArgs e) break; } - e.Handled = e.SuppressKeyPress = true; + e.SuppressKeyPress = true; } private void pbPreview_MouseDown(object sender, MouseEventArgs e) diff --git a/ShareX/Forms/QRCodeForm.cs b/ShareX/Forms/QRCodeForm.cs index b9e85ff47..c4f2201f0 100644 --- a/ShareX/Forms/QRCodeForm.cs +++ b/ShareX/Forms/QRCodeForm.cs @@ -61,8 +61,7 @@ public QRCodeForm(string text = null) { InitializeComponent(); rtbDecodeResult.AddContextMenu(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); if (!string.IsNullOrEmpty(text)) { diff --git a/ShareX/Tools/BorderlessWindow/BorderlessWindowForm.cs b/ShareX/Tools/BorderlessWindow/BorderlessWindowForm.cs index 1a2156ebe..2855c7aca 100644 --- a/ShareX/Tools/BorderlessWindow/BorderlessWindowForm.cs +++ b/ShareX/Tools/BorderlessWindow/BorderlessWindowForm.cs @@ -40,8 +40,7 @@ public partial class BorderlessWindowForm : Form public BorderlessWindowForm(BorderlessWindowSettings settings) { InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); Settings = settings; } diff --git a/ShareX/Tools/OCR/OCRForm.cs b/ShareX/Tools/OCR/OCRForm.cs index f6ccaa0fc..fa7cfd9d5 100644 --- a/ShareX/Tools/OCR/OCRForm.cs +++ b/ShareX/Tools/OCR/OCRForm.cs @@ -48,8 +48,7 @@ public OCRForm(Bitmap bmp, OCROptions options) Options = options; InitializeComponent(); - ShareXResources.ApplyTheme(this); - this.CloseOnEscape(); + ShareXResources.ApplyTheme(this, true); OCRLanguage[] languages = OCRHelper.AvailableLanguages.OrderBy(x => x.DisplayName).ToArray(); diff --git a/ShareX/Tools/PinToScreen/PinToScreenForm.cs b/ShareX/Tools/PinToScreen/PinToScreenForm.cs index c3760c2b6..e928cfeb0 100644 --- a/ShareX/Tools/PinToScreen/PinToScreenForm.cs +++ b/ShareX/Tools/PinToScreen/PinToScreenForm.cs @@ -145,10 +145,9 @@ private PinToScreenForm(PinToScreenOptions options) InitializeComponent(); // TODO: Add options form tsbOptions.Visible = false; - ShareXResources.ApplyTheme(this); + ShareXResources.ApplyTheme(this, true); TopMost = Options.TopMost; SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer | ControlStyles.UserPaint, true); - this.CloseOnEscape(); tsMain.Cursor = Cursors.Arrow; openHandCursor = Helpers.CreateCursor(Resources.openhand);