From dd29b4ad4419aad72c58f0dac10f4f4a2e7e530b Mon Sep 17 00:00:00 2001 From: Hongtao Zhang Date: Sat, 22 Jun 2024 19:31:47 -0500 Subject: [PATCH 01/15] velopack prepare --- Flow.Launcher.Core/Flow.Launcher.Core.csproj | 1 + Flow.Launcher.Core/Updater.cs | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Flow.Launcher.Core/Flow.Launcher.Core.csproj b/Flow.Launcher.Core/Flow.Launcher.Core.csproj index fe2cb7e58..a141243b7 100644 --- a/Flow.Launcher.Core/Flow.Launcher.Core.csproj +++ b/Flow.Launcher.Core/Flow.Launcher.Core.csproj @@ -57,6 +57,7 @@ + diff --git a/Flow.Launcher.Core/Updater.cs b/Flow.Launcher.Core/Updater.cs index 3f64b273e..df2b2dae7 100644 --- a/Flow.Launcher.Core/Updater.cs +++ b/Flow.Launcher.Core/Updater.cs @@ -45,8 +45,8 @@ namespace Flow.Launcher.Core // UpdateApp CheckForUpdate will return value only if the app is squirrel installed var newUpdateInfo = await updateManager.CheckForUpdate().NonNull().ConfigureAwait(false); - var newReleaseVersion = Version.Parse(newUpdateInfo.FutureReleaseEntry.Version.ToString()); - var currentVersion = Version.Parse(Constant.Version); + var newReleaseVersion = SemanticVersioning.Version.Parse(newUpdateInfo.FutureReleaseEntry.Version.ToString()); + var currentVersion = SemanticVersioning.Version.Parse(Constant.Version); Log.Info($"|Updater.UpdateApp|Future Release <{newUpdateInfo.FutureReleaseEntry.Formatted()}>"); @@ -127,7 +127,7 @@ namespace Flow.Launcher.Core await using var jsonStream = await Http.GetStreamAsync(api).ConfigureAwait(false); var releases = await System.Text.Json.JsonSerializer.DeserializeAsync>(jsonStream).ConfigureAwait(false); - var latest = releases.Where(r => !r.Prerelease).OrderByDescending(r => r.PublishedAt).First(); + var latest = releases.OrderByDescending(r => r.PublishedAt).First(); var latestUrl = latest.HtmlUrl.Replace("/tag/", "/download/"); var client = new WebClient From f3bca632326a215836daa84cc3ef056fc1ad9157 Mon Sep 17 00:00:00 2001 From: VictoriousRaptor <10308169+VictoriousRaptor@users.noreply.github.com> Date: Mon, 14 Jul 2025 21:46:54 +0800 Subject: [PATCH 02/15] Update wording --- Flow.Launcher/Languages/en.xaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Flow.Launcher/Languages/en.xaml b/Flow.Launcher/Languages/en.xaml index 2fca06605..acd38baac 100644 --- a/Flow.Launcher/Languages/en.xaml +++ b/Flow.Launcher/Languages/en.xaml @@ -106,7 +106,7 @@ Search with Pinyin Allows using Pinyin to search. Pinyin is the standard system of romanized spelling for translating Chinese. Use Double Pinyin - Allows using Double Pinyin to search. Double Pinyin is a variation of Pinyin that uses two characters. + Use Double Pinyin instead of Full Pinyin to search. Double Pinyin Schema Xiao He Zi Ran Ma From dae16b9b8de42752162c21d07741425d86c62d4e Mon Sep 17 00:00:00 2001 From: VictoriousRaptor <10308169+VictoriousRaptor@users.noreply.github.com> Date: Mon, 14 Jul 2025 21:53:49 +0800 Subject: [PATCH 03/15] Try to fix false spell check alarms by using stable version --- .github/workflows/spelling.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/spelling.yml b/.github/workflows/spelling.yml index 47bd66107..eb3bec416 100644 --- a/.github/workflows/spelling.yml +++ b/.github/workflows/spelling.yml @@ -72,7 +72,7 @@ jobs: steps: - name: check-spelling id: spelling - uses: check-spelling/check-spelling@prerelease + uses: check-spelling/check-spelling@0.0.25 with: suppress_push_for_open_pull_request: 1 checkout: true From c15ff61f92e6d1a5a755ca9c559a327728be3b5c Mon Sep 17 00:00:00 2001 From: VictoriousRaptor <10308169+VictoriousRaptor@users.noreply.github.com> Date: Mon, 14 Jul 2025 22:19:34 +0800 Subject: [PATCH 04/15] Use stable version --- .github/workflows/spelling.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/spelling.yml b/.github/workflows/spelling.yml index eb3bec416..ebea86d62 100644 --- a/.github/workflows/spelling.yml +++ b/.github/workflows/spelling.yml @@ -128,7 +128,7 @@ jobs: if: (success() || failure()) && needs.spelling.outputs.followup && contains(github.event_name, 'pull_request') steps: - name: comment - uses: check-spelling/check-spelling@prerelease + uses: check-spelling/check-spelling@0.0.25 with: checkout: true spell_check_this: check-spelling/spell-check-this@main From e08b73154880ae1b1065195a2b39c253937da587 Mon Sep 17 00:00:00 2001 From: VictoriousRaptor <10308169+VictoriousRaptor@users.noreply.github.com> Date: Tue, 15 Jul 2025 00:10:44 +0800 Subject: [PATCH 05/15] Disable line_forbidden.patterns --- .../actions/spelling/line_forbidden.patterns | 124 +++++++++--------- 1 file changed, 62 insertions(+), 62 deletions(-) diff --git a/.github/actions/spelling/line_forbidden.patterns b/.github/actions/spelling/line_forbidden.patterns index 7341d9b73..119d89321 100644 --- a/.github/actions/spelling/line_forbidden.patterns +++ b/.github/actions/spelling/line_forbidden.patterns @@ -1,62 +1,62 @@ -# reject `m_data` as there's a certain OS which has evil defines that break things if it's used elsewhere -# \bm_data\b - -# If you have a framework that uses `it()` for testing and `fit()` for debugging a specific test, -# you might not want to check in code where you were debugging w/ `fit()`, in which case, you might want -# to use this: -#\bfit\( - -# s.b. GitHub -#\bGithub\b - -# s.b. GitLab -\bGitlab\b - -# s.b. JavaScript -\bJavascript\b - -# s.b. Microsoft -\bMicroSoft\b - -# s.b. another -\ban[- ]other\b - -# s.b. greater than -\bgreater then\b - -# s.b. into -\sin to\s - -# s.b. opt-in -\sopt in\s - -# s.b. less than -\bless then\b - -# s.b. otherwise -\bother[- ]wise\b - -# s.b. nonexistent -\bnon existing\b -\b[Nn]o[nt][- ]existent\b - -# s.b. preexisting -[Pp]re[- ]existing - -# s.b. preempt -[Pp]re[- ]empt\b - -# s.b. preemptively -[Pp]re[- ]emptively - -# s.b. reentrancy -[Rr]e[- ]entrancy - -# s.b. reentrant -[Rr]e[- ]entrant - -# s.b. workaround(s) -\bwork[- ]arounds?\b - -# Reject duplicate words -\s([A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})\s\g{-1}\s +## reject `m_data` as there's a certain OS which has evil defines that break things if it's used elsewhere +## \bm_data\b +# +## If you have a framework that uses `it()` for testing and `fit()` for debugging a specific test, +## you might not want to check in code where you were debugging w/ `fit()`, in which case, you might want +## to use this: +##\bfit\( +# +## s.b. GitHub +##\bGithub\b +# +## s.b. GitLab +#\bGitlab\b +# +## s.b. JavaScript +#\bJavascript\b +# +## s.b. Microsoft +#\bMicroSoft\b +# +## s.b. another +#\ban[- ]other\b +# +## s.b. greater than +#\bgreater then\b +# +## s.b. into +#\sin to\s +# +## s.b. opt-in +#\sopt in\s +# +## s.b. less than +#\bless then\b +# +## s.b. otherwise +#\bother[- ]wise\b +# +## s.b. nonexistent +#\bnon existing\b +#\b[Nn]o[nt][- ]existent\b +# +## s.b. preexisting +#[Pp]re[- ]existing +# +## s.b. preempt +#[Pp]re[- ]empt\b +# +## s.b. preemptively +#[Pp]re[- ]emptively +# +## s.b. reentrancy +#[Rr]e[- ]entrancy +# +## s.b. reentrant +#[Rr]e[- ]entrant +# +## s.b. workaround(s) +#\bwork[- ]arounds?\b +# +## Reject duplicate words +#\s([A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})\s\g{-1}\s From ab0e6640734df9ab78e403f7576d83c897c9748c Mon Sep 17 00:00:00 2001 From: VictoriousRaptor <10308169+VictoriousRaptor@users.noreply.github.com> Date: Tue, 15 Jul 2025 19:16:59 +0800 Subject: [PATCH 06/15] Use a stable version --- .github/workflows/spelling.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/spelling.yml b/.github/workflows/spelling.yml index 47bd66107..f738263fa 100644 --- a/.github/workflows/spelling.yml +++ b/.github/workflows/spelling.yml @@ -72,7 +72,7 @@ jobs: steps: - name: check-spelling id: spelling - uses: check-spelling/check-spelling@prerelease + uses: check-spelling/check-spelling@0.0.24 with: suppress_push_for_open_pull_request: 1 checkout: true @@ -128,7 +128,7 @@ jobs: if: (success() || failure()) && needs.spelling.outputs.followup && contains(github.event_name, 'pull_request') steps: - name: comment - uses: check-spelling/check-spelling@prerelease + uses: check-spelling/check-spelling@0.0.24 with: checkout: true spell_check_this: check-spelling/spell-check-this@main From af50c7bdc3181665915656b3f52a46f52f860729 Mon Sep 17 00:00:00 2001 From: VictoriousRaptor <10308169+VictoriousRaptor@users.noreply.github.com> Date: Tue, 15 Jul 2025 19:57:42 +0800 Subject: [PATCH 07/15] Add double pinyin schemas to patterns They are not well formed English words so can be rejected by built-in checks. Use regex as a workaround. --- .github/actions/spelling/allow.txt | 2 -- .github/actions/spelling/expect.txt | 9 --------- .github/actions/spelling/patterns.txt | 9 +++++++++ 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/.github/actions/spelling/allow.txt b/.github/actions/spelling/allow.txt index a36a6af3e..1d7f12d4a 100644 --- a/.github/actions/spelling/allow.txt +++ b/.github/actions/spelling/allow.txt @@ -4,5 +4,3 @@ ssh ubuntu runcount Firefox -Português -Português (Brasil) diff --git a/.github/actions/spelling/expect.txt b/.github/actions/spelling/expect.txt index d8c99bce9..0fea6d9ab 100644 --- a/.github/actions/spelling/expect.txt +++ b/.github/actions/spelling/expect.txt @@ -104,12 +104,3 @@ metadatas WMP VSTHRD CJK -XiaoHe -ZiRanMa -WeiRuan -ZhiNengABC -ZiGuangPinYin -PinYinJiaJia -XingKongJianDao -DaNiu -XiaoLang diff --git a/.github/actions/spelling/patterns.txt b/.github/actions/spelling/patterns.txt index f308ec599..f7c54aa73 100644 --- a/.github/actions/spelling/patterns.txt +++ b/.github/actions/spelling/patterns.txt @@ -134,3 +134,12 @@ \bčeština\b \bPortuguês\b \bIoc\b +\bXiaoHe\b +\bZiRanMa\b +\bWeiRuan\b +\bZhiNengABC\b +\bZiGuangPinYin\b +\bPinYinJiaJia\b +\bXingKongJianDao\b +\bDaNiu\b +\bXiaoLang\b From 34238051cf2cca8be2cabec27d599548f27d2645 Mon Sep 17 00:00:00 2001 From: VictoriousRaptor <10308169+VictoriousRaptor@users.noreply.github.com> Date: Tue, 15 Jul 2025 20:03:17 +0800 Subject: [PATCH 08/15] Update spelling patterns to support optional spaces in Pinyin matching --- .github/actions/spelling/patterns.txt | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/actions/spelling/patterns.txt b/.github/actions/spelling/patterns.txt index f7c54aa73..eb8534c49 100644 --- a/.github/actions/spelling/patterns.txt +++ b/.github/actions/spelling/patterns.txt @@ -134,12 +134,12 @@ \bčeština\b \bPortuguês\b \bIoc\b -\bXiaoHe\b -\bZiRanMa\b -\bWeiRuan\b -\bZhiNengABC\b -\bZiGuangPinYin\b -\bPinYinJiaJia\b -\bXingKongJianDao\b -\bDaNiu\b -\bXiaoLang\b +\bXiao\s*He\b +\bZi\s*Ran\s*Ma\b +\bWei\s*Ruan\b +\bZhi\s*Neng\s*ABC\b +\bZi\s*Guang\s*Pin\s*Yin\b +\bPin\s*Yin\s*Jia\s*Jia\b +\bXing\s*Kong\s*Jian\s*Dao\b +\bDa\s*Niu\b +\bXiao\s*Lang\b From 07415913ed5d0741fa021370bf459a89aad1c6f8 Mon Sep 17 00:00:00 2001 From: VictoriousRaptor <10308169+VictoriousRaptor@users.noreply.github.com> Date: Tue, 15 Jul 2025 20:05:03 +0800 Subject: [PATCH 09/15] Add word --- .github/actions/spelling/allow.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/actions/spelling/allow.txt b/.github/actions/spelling/allow.txt index 1d7f12d4a..5bcf16c97 100644 --- a/.github/actions/spelling/allow.txt +++ b/.github/actions/spelling/allow.txt @@ -4,3 +4,4 @@ ssh ubuntu runcount Firefox +workaround \ No newline at end of file From e3e8eff5c989b2a6ef28aefd185b2dbe98952f2f Mon Sep 17 00:00:00 2001 From: VictoriousRaptor <10308169+VictoriousRaptor@users.noreply.github.com> Date: Tue, 15 Jul 2025 20:06:33 +0800 Subject: [PATCH 10/15] Fix EOF newline --- .github/actions/spelling/allow.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/spelling/allow.txt b/.github/actions/spelling/allow.txt index 5bcf16c97..670a7a799 100644 --- a/.github/actions/spelling/allow.txt +++ b/.github/actions/spelling/allow.txt @@ -4,4 +4,4 @@ ssh ubuntu runcount Firefox -workaround \ No newline at end of file +workaround From 5ed017b026ca3638a728b46027992aab7c691e07 Mon Sep 17 00:00:00 2001 From: VictoriousRaptor <10308169+VictoriousRaptor@users.noreply.github.com> Date: Wed, 16 Jul 2025 10:02:58 +0800 Subject: [PATCH 11/15] Revert line_forbidden.patterns --- .../actions/spelling/line_forbidden.patterns | 124 +++++++++--------- 1 file changed, 62 insertions(+), 62 deletions(-) diff --git a/.github/actions/spelling/line_forbidden.patterns b/.github/actions/spelling/line_forbidden.patterns index 119d89321..7341d9b73 100644 --- a/.github/actions/spelling/line_forbidden.patterns +++ b/.github/actions/spelling/line_forbidden.patterns @@ -1,62 +1,62 @@ -## reject `m_data` as there's a certain OS which has evil defines that break things if it's used elsewhere -## \bm_data\b -# -## If you have a framework that uses `it()` for testing and `fit()` for debugging a specific test, -## you might not want to check in code where you were debugging w/ `fit()`, in which case, you might want -## to use this: -##\bfit\( -# -## s.b. GitHub -##\bGithub\b -# -## s.b. GitLab -#\bGitlab\b -# -## s.b. JavaScript -#\bJavascript\b -# -## s.b. Microsoft -#\bMicroSoft\b -# -## s.b. another -#\ban[- ]other\b -# -## s.b. greater than -#\bgreater then\b -# -## s.b. into -#\sin to\s -# -## s.b. opt-in -#\sopt in\s -# -## s.b. less than -#\bless then\b -# -## s.b. otherwise -#\bother[- ]wise\b -# -## s.b. nonexistent -#\bnon existing\b -#\b[Nn]o[nt][- ]existent\b -# -## s.b. preexisting -#[Pp]re[- ]existing -# -## s.b. preempt -#[Pp]re[- ]empt\b -# -## s.b. preemptively -#[Pp]re[- ]emptively -# -## s.b. reentrancy -#[Rr]e[- ]entrancy -# -## s.b. reentrant -#[Rr]e[- ]entrant -# -## s.b. workaround(s) -#\bwork[- ]arounds?\b -# -## Reject duplicate words -#\s([A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})\s\g{-1}\s +# reject `m_data` as there's a certain OS which has evil defines that break things if it's used elsewhere +# \bm_data\b + +# If you have a framework that uses `it()` for testing and `fit()` for debugging a specific test, +# you might not want to check in code where you were debugging w/ `fit()`, in which case, you might want +# to use this: +#\bfit\( + +# s.b. GitHub +#\bGithub\b + +# s.b. GitLab +\bGitlab\b + +# s.b. JavaScript +\bJavascript\b + +# s.b. Microsoft +\bMicroSoft\b + +# s.b. another +\ban[- ]other\b + +# s.b. greater than +\bgreater then\b + +# s.b. into +\sin to\s + +# s.b. opt-in +\sopt in\s + +# s.b. less than +\bless then\b + +# s.b. otherwise +\bother[- ]wise\b + +# s.b. nonexistent +\bnon existing\b +\b[Nn]o[nt][- ]existent\b + +# s.b. preexisting +[Pp]re[- ]existing + +# s.b. preempt +[Pp]re[- ]empt\b + +# s.b. preemptively +[Pp]re[- ]emptively + +# s.b. reentrancy +[Rr]e[- ]entrancy + +# s.b. reentrant +[Rr]e[- ]entrant + +# s.b. workaround(s) +\bwork[- ]arounds?\b + +# Reject duplicate words +\s([A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})\s\g{-1}\s From 1cce95ef6a2613ce3f45497a3b2df5f496c09595 Mon Sep 17 00:00:00 2001 From: Hongtao Zhang Date: Wed, 16 Jul 2025 11:52:42 -0700 Subject: [PATCH 12/15] update semantic version and revert pre-release --- Flow.Launcher.Core/Flow.Launcher.Core.csproj | 2 +- Flow.Launcher.Core/Updater.cs | 44 ++++++++++---------- 2 files changed, 22 insertions(+), 24 deletions(-) diff --git a/Flow.Launcher.Core/Flow.Launcher.Core.csproj b/Flow.Launcher.Core/Flow.Launcher.Core.csproj index d3199654d..6a3876d06 100644 --- a/Flow.Launcher.Core/Flow.Launcher.Core.csproj +++ b/Flow.Launcher.Core/Flow.Launcher.Core.csproj @@ -57,7 +57,7 @@ - + diff --git a/Flow.Launcher.Core/Updater.cs b/Flow.Launcher.Core/Updater.cs index 3c20cf0b7..5b67ffabc 100644 --- a/Flow.Launcher.Core/Updater.cs +++ b/Flow.Launcher.Core/Updater.cs @@ -49,7 +49,8 @@ namespace Flow.Launcher.Core // UpdateApp CheckForUpdate will return value only if the app is squirrel installed var newUpdateInfo = await updateManager.CheckForUpdate().NonNull().ConfigureAwait(false); - var newReleaseVersion = SemanticVersioning.Version.Parse(newUpdateInfo.FutureReleaseEntry.Version.ToString()); + var newReleaseVersion = + SemanticVersioning.Version.Parse(newUpdateInfo.FutureReleaseEntry.Version.ToString()); var currentVersion = SemanticVersioning.Version.Parse(Constant.Version); _api.LogInfo(ClassName, $"Future Release <{Formatted(newUpdateInfo.FutureReleaseEntry)}>"); @@ -71,10 +72,13 @@ namespace Flow.Launcher.Core if (DataLocation.PortableDataLocationInUse()) { - var targetDestination = updateManager.RootAppDirectory + $"\\app-{newReleaseVersion}\\{DataLocation.PortableFolderName}"; + var targetDestination = updateManager.RootAppDirectory + + $"\\app-{newReleaseVersion}\\{DataLocation.PortableFolderName}"; FilesFolders.CopyAll(DataLocation.PortableDataPath, targetDestination, (s) => _api.ShowMsgBox(s)); - if (!FilesFolders.VerifyBothFolderFilesEqual(DataLocation.PortableDataPath, targetDestination, (s) => _api.ShowMsgBox(s))) - _api.ShowMsgBox(string.Format(_api.GetTranslation("update_flowlauncher_fail_moving_portable_user_profile_data"), + if (!FilesFolders.VerifyBothFolderFilesEqual(DataLocation.PortableDataPath, targetDestination, + (s) => _api.ShowMsgBox(s))) + _api.ShowMsgBox(string.Format( + _api.GetTranslation("update_flowlauncher_fail_moving_portable_user_profile_data"), DataLocation.PortableDataPath, targetDestination)); } @@ -87,22 +91,25 @@ namespace Flow.Launcher.Core _api.LogInfo(ClassName, $"Update success:{newVersionTips}"); - if (_api.ShowMsgBox(newVersionTips, _api.GetTranslation("update_flowlauncher_new_update"), MessageBoxButton.YesNo) == MessageBoxResult.Yes) + if (_api.ShowMsgBox(newVersionTips, _api.GetTranslation("update_flowlauncher_new_update"), + MessageBoxButton.YesNo) == MessageBoxResult.Yes) { UpdateManager.RestartApp(Constant.ApplicationFileName); } } catch (Exception e) { - if (e is HttpRequestException or WebException or SocketException || e.InnerException is TimeoutException) + if (e is HttpRequestException or WebException or SocketException || + e.InnerException is TimeoutException) { - _api.LogException(ClassName, $"Check your connection and proxy settings to github-cloud.s3.amazonaws.com.", e); + _api.LogException(ClassName, + $"Check your connection and proxy settings to github-cloud.s3.amazonaws.com.", e); } else { _api.LogException(ClassName, $"Error Occurred", e); } - + if (!silentUpdate) _api.ShowMsg(_api.GetTranslation("update_flowlauncher_fail"), _api.GetTranslation("update_flowlauncher_check_connection")); @@ -116,14 +123,11 @@ namespace Flow.Launcher.Core [UsedImplicitly] private class GithubRelease { - [JsonPropertyName("prerelease")] - public bool Prerelease { get; [UsedImplicitly] set; } + [JsonPropertyName("prerelease")] public bool Prerelease { get; [UsedImplicitly] set; } - [JsonPropertyName("published_at")] - public DateTime PublishedAt { get; [UsedImplicitly] set; } + [JsonPropertyName("published_at")] public DateTime PublishedAt { get; [UsedImplicitly] set; } - [JsonPropertyName("html_url")] - public string HtmlUrl { get; [UsedImplicitly] set; } + [JsonPropertyName("html_url")] public string HtmlUrl { get; [UsedImplicitly] set; } } // https://github.com/Squirrel/Squirrel.Windows/blob/master/src/Squirrel/UpdateManager.Factory.cs @@ -135,13 +139,10 @@ namespace Flow.Launcher.Core await using var jsonStream = await Http.GetStreamAsync(api).ConfigureAwait(false); var releases = await JsonSerializer.DeserializeAsync>(jsonStream).ConfigureAwait(false); - var latest = releases.OrderByDescending(r => r.PublishedAt).First(); + var latest = releases.Where(r => !r.Prerelease).OrderByDescending(r => r.PublishedAt).First(); var latestUrl = latest.HtmlUrl.Replace("/tag/", "/download/"); - var client = new WebClient - { - Proxy = Http.WebProxy - }; + var client = new WebClient { Proxy = Http.WebProxy }; var downloader = new FileDownloader(client); var manager = new UpdateManager(latestUrl, urlDownloader: downloader); @@ -158,10 +159,7 @@ namespace Flow.Launcher.Core private static string Formatted(T t) { - var formatted = JsonSerializer.Serialize(t, new JsonSerializerOptions - { - WriteIndented = true - }); + var formatted = JsonSerializer.Serialize(t, new JsonSerializerOptions { WriteIndented = true }); return formatted; } From 890b115b37e286a85293878846e627712aaa6091 Mon Sep 17 00:00:00 2001 From: Jack251970 <1160210343@qq.com> Date: Thu, 17 Jul 2025 11:50:56 +0800 Subject: [PATCH 13/15] Fix message box vertically center issue when message type is not OK --- Flow.Launcher/MessageBoxEx.xaml.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Flow.Launcher/MessageBoxEx.xaml.cs b/Flow.Launcher/MessageBoxEx.xaml.cs index 7296ff4ca..907bfb926 100644 --- a/Flow.Launcher/MessageBoxEx.xaml.cs +++ b/Flow.Launcher/MessageBoxEx.xaml.cs @@ -37,8 +37,9 @@ namespace Flow.Launcher try { msgBox = new MessageBoxEx(button); - if (caption == string.Empty && button == MessageBoxButton.OK && icon == MessageBoxImage.None) + if (caption == string.Empty && icon == MessageBoxImage.None) { + // If there is no caption and no icon, use DescOnlyTextBlock for vertically centered text msgBox.Title = messageBoxText; msgBox.DescOnlyTextBlock.Visibility = Visibility.Visible; msgBox.DescOnlyTextBlock.Text = messageBoxText; From 3b3fe5201b1e6e5ee97a9300a3bde41bd37bff9d Mon Sep 17 00:00:00 2001 From: Jack251970 <1160210343@qq.com> Date: Thu, 17 Jul 2025 12:05:10 +0800 Subject: [PATCH 14/15] Add delete confirmation when deleting quick access links & index search excluded paths --- .../Languages/en.xaml | 2 ++ .../ViewModels/SettingsViewModel.cs | 14 ++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/en.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/en.xaml index 2e0f6a67d..40aeda957 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/en.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/en.xaml @@ -7,6 +7,8 @@ Please make a selection first Please select a folder path. Please choose a different name or folder path. + Are you sure you want to delete this quick access link? + Are you sure you want to delete this index search excluded path? Please select a folder link Are you sure you want to delete {0}? Are you sure you want to permanently delete this file? diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/ViewModels/SettingsViewModel.cs b/Plugins/Flow.Launcher.Plugin.Explorer/ViewModels/SettingsViewModel.cs index 5aa6a13be..90232ba08 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/ViewModels/SettingsViewModel.cs +++ b/Plugins/Flow.Launcher.Plugin.Explorer/ViewModels/SettingsViewModel.cs @@ -431,10 +431,24 @@ namespace Flow.Launcher.Plugin.Explorer.ViewModels { case "QuickAccessLink": if (SelectedQuickAccessLink == null) return; + if (Context.API.ShowMsgBox( + Context.API.GetTranslation("plugin_explorer_delete_quick_access_link"), + Context.API.GetTranslation("plugin_explorer_delete"), + MessageBoxButton.OKCancel, + MessageBoxImage.Warning) + == MessageBoxResult.Cancel) + return; Settings.QuickAccessLinks.Remove(SelectedQuickAccessLink); break; case "IndexSearchExcludedPaths": if (SelectedIndexSearchExcludedPath == null) return; + if (Context.API.ShowMsgBox( + Context.API.GetTranslation("plugin_explorer_delete_index_search_excluded_path"), + Context.API.GetTranslation("plugin_explorer_delete"), + MessageBoxButton.OKCancel, + MessageBoxImage.Warning) + == MessageBoxResult.Cancel) + return; Settings.IndexSearchExcludedSubdirectoryPaths.Remove(SelectedIndexSearchExcludedPath); break; } From 78fd3ca2afe56303966a992c964130628298ac90 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 17 Jul 2025 22:30:22 +0000 Subject: [PATCH 15/15] Bump check-spelling/check-spelling from 0.0.24 to 0.0.25 --- updated-dependencies: - dependency-name: check-spelling/check-spelling dependency-version: 0.0.25 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/spelling.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/spelling.yml b/.github/workflows/spelling.yml index f738263fa..904392bf0 100644 --- a/.github/workflows/spelling.yml +++ b/.github/workflows/spelling.yml @@ -72,7 +72,7 @@ jobs: steps: - name: check-spelling id: spelling - uses: check-spelling/check-spelling@0.0.24 + uses: check-spelling/check-spelling@v0.0.25 with: suppress_push_for_open_pull_request: 1 checkout: true @@ -128,7 +128,7 @@ jobs: if: (success() || failure()) && needs.spelling.outputs.followup && contains(github.event_name, 'pull_request') steps: - name: comment - uses: check-spelling/check-spelling@0.0.24 + uses: check-spelling/check-spelling@v0.0.25 with: checkout: true spell_check_this: check-spelling/spell-check-this@main