From 72ff6034e78c1654b8eb5d1999d2b9959726feb4 Mon Sep 17 00:00:00 2001 From: 01Dri Date: Sat, 13 Dec 2025 22:08:42 -0300 Subject: [PATCH 1/9] TopMost option --- .../UserSettings/Settings.cs | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs index 6adefdb6a21..1394dd99188 100644 --- a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs +++ b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs @@ -496,6 +496,34 @@ public bool ShowAtTopmost } } + private bool _autoTopmost = false; + public bool AutoTopmost + { + get => _autoTopmost; + set + { + if (_autoTopmost != value) + { + _autoTopmost = value; + OnPropertyChanged(); + } + } + } + + private bool _showTaskbarOnInvoke = false; + public bool ShowTaskbarOnInvoke + { + get => _showTaskbarOnInvoke; + set + { + if (_showTaskbarOnInvoke != value) + { + _showTaskbarOnInvoke = value; + OnPropertyChanged(); + } + } + } + public bool SearchQueryResultsWithDelay { get; set; } public int SearchDelayTime { get; set; } = 150; From c0b4c67399d20743c4cf59202a241bce243e4dee Mon Sep 17 00:00:00 2001 From: 01Dri Date: Sat, 13 Dec 2025 22:08:54 -0300 Subject: [PATCH 2/9] Topmost option in interface --- .../Views/SettingsPaneGeneral.xaml | 28 +++++++++++++++++++ Flow.Launcher/ViewModel/MainViewModel.cs | 3 ++ 2 files changed, 31 insertions(+) diff --git a/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml b/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml index 720cb440b9b..106cd66342e 100644 --- a/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml +++ b/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml @@ -96,6 +96,34 @@ OnContent="{DynamicResource enable}" /> + + + + + + + + + + + + + + + + diff --git a/Flow.Launcher/ViewModel/MainViewModel.cs b/Flow.Launcher/ViewModel/MainViewModel.cs index f0f4b257ac4..2584cdb88bf 100644 --- a/Flow.Launcher/ViewModel/MainViewModel.cs +++ b/Flow.Launcher/ViewModel/MainViewModel.cs @@ -10,6 +10,7 @@ using System.Windows; using System.Windows.Controls; using System.Windows.Input; +using System.Windows.Interop; using System.Windows.Media; using System.Windows.Threading; using CommunityToolkit.Mvvm.DependencyInjection; @@ -538,6 +539,7 @@ private async Task OpenResultAsync(string index) { _history.Add(result); lastHistoryIndex = 1; + if (Settings.AutoTopmost) _topMostRecord.AddOrUpdate(result); } } @@ -2122,6 +2124,7 @@ public void Show() { Win32Helper.SwitchToEnglishKeyboardLayout(true); } + } public async void Hide(bool reset = true) From 8138e71d512539ca69cf875915bd6546c3596921 Mon Sep 17 00:00:00 2001 From: 01Dri Date: Sat, 13 Dec 2025 22:09:06 -0300 Subject: [PATCH 3/9] top most option dynamic resource --- Flow.Launcher/Languages/en.xaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Flow.Launcher/Languages/en.xaml b/Flow.Launcher/Languages/en.xaml index 2a21840f7f2..cfc2405a58c 100644 --- a/Flow.Launcher/Languages/en.xaml +++ b/Flow.Launcher/Languages/en.xaml @@ -177,6 +177,10 @@ This can only be edited if plugin supports Home feature and Home Page is enabled. Show Search Window at Foremost Overrides other programs' 'Always on Top' setting and displays Flow in the foremost position. + Auto Topmost on Open + Set Flow Launcher to be topmost automatically when it is opened. + Show Taskbar when Flow is invoked + Similar to when using the Win key to open the Windows start menu, this will automatically show the taskbar. Restart after modifying plugin via Plugin Store Restart Flow Launcher automatically after installing/uninstalling/updating plugin via Plugin Store Show unknown source warning From 492321072c7642c161c72d1825f8f5ff946cc6a9 Mon Sep 17 00:00:00 2001 From: 01Dri Date: Sun, 14 Dec 2025 18:54:14 -0300 Subject: [PATCH 4/9] doc --- Flow.Launcher/ViewModel/MainViewModel.cs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Flow.Launcher/ViewModel/MainViewModel.cs b/Flow.Launcher/ViewModel/MainViewModel.cs index 2584cdb88bf..567633ce577 100644 --- a/Flow.Launcher/ViewModel/MainViewModel.cs +++ b/Flow.Launcher/ViewModel/MainViewModel.cs @@ -524,7 +524,7 @@ private async Task OpenResultAsync(string index) { // not null means pressing modifier key + number, should ignore the modifier key SpecialKeyState = index is not null ? SpecialKeyState.Default : GlobalHotkey.CheckModifiers() - }).ConfigureAwait(false); + }).ConfigureAwait(false) ; if (hideWindow) { @@ -534,13 +534,14 @@ private async Task OpenResultAsync(string index) // Record user selected result for result ranking _userSelectedRecord.Add(result); - // Add item to history only if it is from results but not context menu or history + // Add item to history and topmost only if it is from results but not context menu or history if (queryResultsSelected) { _history.Add(result); lastHistoryIndex = 1; - if (Settings.AutoTopmost) _topMostRecord.AddOrUpdate(result); - } + if (Settings.AutoTopmost) + _topMostRecord.AddOrUpdate(result); + } } private static IReadOnlyList DeepCloneResults(IReadOnlyList results, bool isDialogJump, CancellationToken token = default) From 98c2adb12daa9a558db8dd1bc4f5a4f75809d8a0 Mon Sep 17 00:00:00 2001 From: 01Dri Date: Sun, 14 Dec 2025 19:02:26 -0300 Subject: [PATCH 5/9] remove test code --- .../UserSettings/Settings.cs | 13 ------------- Flow.Launcher/Languages/en.xaml | 2 -- .../SettingPages/Views/SettingsPaneGeneral.xaml | 14 -------------- 3 files changed, 29 deletions(-) diff --git a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs index 1394dd99188..c562dbb376c 100644 --- a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs +++ b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs @@ -510,19 +510,6 @@ public bool AutoTopmost } } - private bool _showTaskbarOnInvoke = false; - public bool ShowTaskbarOnInvoke - { - get => _showTaskbarOnInvoke; - set - { - if (_showTaskbarOnInvoke != value) - { - _showTaskbarOnInvoke = value; - OnPropertyChanged(); - } - } - } public bool SearchQueryResultsWithDelay { get; set; } public int SearchDelayTime { get; set; } = 150; diff --git a/Flow.Launcher/Languages/en.xaml b/Flow.Launcher/Languages/en.xaml index cfc2405a58c..558d408245e 100644 --- a/Flow.Launcher/Languages/en.xaml +++ b/Flow.Launcher/Languages/en.xaml @@ -179,8 +179,6 @@ Overrides other programs' 'Always on Top' setting and displays Flow in the foremost position. Auto Topmost on Open Set Flow Launcher to be topmost automatically when it is opened. - Show Taskbar when Flow is invoked - Similar to when using the Win key to open the Windows start menu, this will automatically show the taskbar. Restart after modifying plugin via Plugin Store Restart Flow Launcher automatically after installing/uninstalling/updating plugin via Plugin Store Show unknown source warning diff --git a/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml b/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml index 106cd66342e..5500c1081ec 100644 --- a/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml +++ b/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml @@ -110,20 +110,6 @@ OnContent="{DynamicResource enable}" /> - - - - - - - - From 693ca2b436dc4067b8629e992ff75513f4a25fd4 Mon Sep 17 00:00:00 2001 From: 01Dri Date: Sun, 14 Dec 2025 19:03:26 -0300 Subject: [PATCH 6/9] code clean --- Flow.Launcher/ViewModel/MainViewModel.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Flow.Launcher/ViewModel/MainViewModel.cs b/Flow.Launcher/ViewModel/MainViewModel.cs index 567633ce577..4f356b8cd43 100644 --- a/Flow.Launcher/ViewModel/MainViewModel.cs +++ b/Flow.Launcher/ViewModel/MainViewModel.cs @@ -10,7 +10,6 @@ using System.Windows; using System.Windows.Controls; using System.Windows.Input; -using System.Windows.Interop; using System.Windows.Media; using System.Windows.Threading; using CommunityToolkit.Mvvm.DependencyInjection; @@ -524,7 +523,7 @@ private async Task OpenResultAsync(string index) { // not null means pressing modifier key + number, should ignore the modifier key SpecialKeyState = index is not null ? SpecialKeyState.Default : GlobalHotkey.CheckModifiers() - }).ConfigureAwait(false) ; + }).ConfigureAwait(false); if (hideWindow) { From 0c9bd7fcabdce1e6c0de9cfcafeb611f5d256dba Mon Sep 17 00:00:00 2001 From: 01Dri Date: Mon, 15 Dec 2025 09:56:12 -0300 Subject: [PATCH 7/9] name changes --- Flow.Launcher.Infrastructure/UserSettings/Settings.cs | 10 +++++----- Flow.Launcher/Languages/en.xaml | 4 ++-- .../SettingPages/Views/SettingsPaneGeneral.xaml | 6 +++--- Flow.Launcher/ViewModel/MainViewModel.cs | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs index c562dbb376c..ce24f76613f 100644 --- a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs +++ b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs @@ -496,15 +496,15 @@ public bool ShowAtTopmost } } - private bool _autoTopmost = false; - public bool AutoTopmost + private bool _autoTopmostResults = false; + public bool AutoTopmostResults { - get => _autoTopmost; + get => _autoTopmostResults; set { - if (_autoTopmost != value) + if (_autoTopmostResults != value) { - _autoTopmost = value; + _autoTopmostResults = value; OnPropertyChanged(); } } diff --git a/Flow.Launcher/Languages/en.xaml b/Flow.Launcher/Languages/en.xaml index 558d408245e..5bb6a781d1d 100644 --- a/Flow.Launcher/Languages/en.xaml +++ b/Flow.Launcher/Languages/en.xaml @@ -177,8 +177,8 @@ This can only be edited if plugin supports Home feature and Home Page is enabled. Show Search Window at Foremost Overrides other programs' 'Always on Top' setting and displays Flow in the foremost position. - Auto Topmost on Open - Set Flow Launcher to be topmost automatically when it is opened. + Auto Topmost Results + Automatically mark selected results as topmost in their queries for faster access in future searches. Restart after modifying plugin via Plugin Store Restart Flow Launcher automatically after installing/uninstalling/updating plugin via Plugin Store Show unknown source warning diff --git a/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml b/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml index 5500c1081ec..1b3335da216 100644 --- a/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml +++ b/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml @@ -98,14 +98,14 @@ + Description="{DynamicResource autoTopmostResultsToolTip}" + Header="{DynamicResource autoTopmostResults}"> diff --git a/Flow.Launcher/ViewModel/MainViewModel.cs b/Flow.Launcher/ViewModel/MainViewModel.cs index 4f356b8cd43..a7edf1cca32 100644 --- a/Flow.Launcher/ViewModel/MainViewModel.cs +++ b/Flow.Launcher/ViewModel/MainViewModel.cs @@ -538,7 +538,7 @@ private async Task OpenResultAsync(string index) { _history.Add(result); lastHistoryIndex = 1; - if (Settings.AutoTopmost) + if (Settings.AutoTopmostResults) _topMostRecord.AddOrUpdate(result); } } From c808488ee0f98825aee4ea177452b692bf26edd8 Mon Sep 17 00:00:00 2001 From: Diego Henrique <124473653+01Dri@users.noreply.github.com> Date: Mon, 15 Dec 2025 11:22:57 -0300 Subject: [PATCH 8/9] Update Flow.Launcher.Infrastructure/UserSettings/Settings.cs Co-authored-by: VictoriousRaptor <10308169+VictoriousRaptor@users.noreply.github.com> --- Flow.Launcher.Infrastructure/UserSettings/Settings.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs index ce24f76613f..724268df818 100644 --- a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs +++ b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs @@ -497,7 +497,7 @@ public bool ShowAtTopmost } private bool _autoTopmostResults = false; - public bool AutoTopmostResults + public bool AutoTopmostLastOpenedResult { get => _autoTopmostResults; set From e5414d97daa86091814bcd716e7ebafd73900b42 Mon Sep 17 00:00:00 2001 From: 01Dri Date: Mon, 15 Dec 2025 11:30:46 -0300 Subject: [PATCH 9/9] name changes --- Flow.Launcher.Infrastructure/UserSettings/Settings.cs | 8 ++++---- Flow.Launcher/Languages/en.xaml | 4 ++-- Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml | 6 +++--- Flow.Launcher/ViewModel/MainViewModel.cs | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs index 724268df818..e45ac5e6b8a 100644 --- a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs +++ b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs @@ -496,15 +496,15 @@ public bool ShowAtTopmost } } - private bool _autoTopmostResults = false; + private bool _autoTopmostLastOpenedResults = false; public bool AutoTopmostLastOpenedResult { - get => _autoTopmostResults; + get => _autoTopmostLastOpenedResults; set { - if (_autoTopmostResults != value) + if (_autoTopmostLastOpenedResults != value) { - _autoTopmostResults = value; + _autoTopmostLastOpenedResults = value; OnPropertyChanged(); } } diff --git a/Flow.Launcher/Languages/en.xaml b/Flow.Launcher/Languages/en.xaml index 5bb6a781d1d..a1ea6aac240 100644 --- a/Flow.Launcher/Languages/en.xaml +++ b/Flow.Launcher/Languages/en.xaml @@ -177,8 +177,8 @@ This can only be edited if plugin supports Home feature and Home Page is enabled. Show Search Window at Foremost Overrides other programs' 'Always on Top' setting and displays Flow in the foremost position. - Auto Topmost Results - Automatically mark selected results as topmost in their queries for faster access in future searches. + Auto Topmost Results + Automatically mark selected results as topmost in their queries for faster access in future searches. Restart after modifying plugin via Plugin Store Restart Flow Launcher automatically after installing/uninstalling/updating plugin via Plugin Store Show unknown source warning diff --git a/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml b/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml index 1b3335da216..ec917946332 100644 --- a/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml +++ b/Flow.Launcher/SettingPages/Views/SettingsPaneGeneral.xaml @@ -98,14 +98,14 @@ + Description="{DynamicResource autoTopmostLastOpenedResultToolTip}" + Header="{DynamicResource autoTopmostLastOpenedResult}"> diff --git a/Flow.Launcher/ViewModel/MainViewModel.cs b/Flow.Launcher/ViewModel/MainViewModel.cs index a7edf1cca32..0c0c317edc3 100644 --- a/Flow.Launcher/ViewModel/MainViewModel.cs +++ b/Flow.Launcher/ViewModel/MainViewModel.cs @@ -538,7 +538,7 @@ private async Task OpenResultAsync(string index) { _history.Add(result); lastHistoryIndex = 1; - if (Settings.AutoTopmostResults) + if (Settings.AutoTopmostLastOpenedResult) _topMostRecord.AddOrUpdate(result); } }