Commit graph

11072 commits

Author SHA1 Message Date
Jack Ye
e634e2cbff
Merge branch 'dev' into dev 2025-12-19 15:51:06 +08:00
Jack Ye
c8cebc2b18
Merge pull request #4166 from Flow-Launcher/dependabot/nuget/Plugins/Flow.Launcher.Plugin.BrowserBookmark/Microsoft.Data.Sqlite-10.0.1
Bump Microsoft.Data.Sqlite from 10.0.0 to 10.0.1
2025-12-19 14:07:54 +08:00
Heck-R
e01869afda Fix: Result.Preview.Description is not ignored anymore 2025-12-17 23:37:43 +01:00
dependabot[bot]
b4ec480405
Bump Microsoft.Data.Sqlite from 10.0.0 to 10.0.1
---
updated-dependencies:
- dependency-name: Microsoft.Data.Sqlite
  dependency-version: 10.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-17 22:07:00 +00:00
Jack Ye
12ab11a4e4
Merge pull request #4165 from Flow-Launcher/dependabot/github_actions/toshimaru/auto-author-assign-2.1.2
Bump toshimaru/auto-author-assign from 2.1.1 to 2.1.2
2025-12-17 10:24:42 +08:00
dependabot[bot]
bb3c8fbe0c
Bump toshimaru/auto-author-assign from 2.1.1 to 2.1.2
Bumps [toshimaru/auto-author-assign](https://github.com/toshimaru/auto-author-assign) from 2.1.1 to 2.1.2.
- [Release notes](https://github.com/toshimaru/auto-author-assign/releases)
- [Changelog](https://github.com/toshimaru/auto-author-assign/blob/main/CHANGELOG.md)
- [Commits](https://github.com/toshimaru/auto-author-assign/compare/v2.1.1...v2.1.2)

---
updated-dependencies:
- dependency-name: toshimaru/auto-author-assign
  dependency-version: 2.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-16 22:04:28 +00:00
Jack Ye
20930617bb
Merge pull request #4118 from Flow-Launcher/UI.WPF.Modern
Upgrade iNKORE.UI.WPF.Modern and refactor scroll logic
2025-12-16 22:54:53 +08:00
Jeremy Wu
0f34829dab
Merge pull request #4160 from Flow-Launcher/add_sponsor
Add sponsor to README
2025-12-16 02:25:06 +11:00
Jack Ye
4221797569
Merge pull request #4125 from Flow-Launcher/dialog_jump_ignore_null_handler
Add null checks and improve dialog window handling
2025-12-15 19:51:32 +08:00
Jeremy Wu
437b7da0f7
formatting 2025-12-15 21:24:14 +11:00
Jeremy Wu
31f5698437
update readme 2025-12-15 21:20:35 +11:00
Jeremy Wu
666d525243
Add sponsor to README
Added sponsor to the README.
2025-12-15 20:59:18 +11:00
Diego Henrique
9066913710
[FEATURE] Folder and File Action Keywords (#4093) 2025-12-14 12:18:21 +02:00
Jack Ye
ebc1a85190
Merge pull request #4155 from Flow-Launcher/dependabot/github_actions/actions/upload-artifact-6
Bump actions/upload-artifact from 5 to 6
2025-12-13 15:39:03 +08:00
dependabot[bot]
4c44877af4
Bump actions/upload-artifact from 5 to 6
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-12 22:04:55 +00:00
VictoriousRaptor
c03c778efb
Merge pull request #4151 from Flow-Launcher/fix3965
Fix incorrect text highlighting when using pinyin queries
2025-12-09 08:35:53 +08:00
VictoriousRaptor
b6339d38fa
Fix compile error introduced by coderabbit 2025-12-08 13:06:14 +08:00
VictoriousRaptor
42e04d459b
Cover all positions in unit test
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-12-08 00:41:08 +08:00
VictoriousRaptor
769179d04b
Fix test case
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-07 19:28:17 +08:00
VictoriousRaptor
a7c67bbb35
Fix incorrect index marker
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-07 19:18:49 +08:00
VictoriousRaptor
b869eb8d1d Avoid adding unnecessary space and improve unit test 2025-12-07 18:50:54 +08:00
VictoriousRaptor
7d9de4b0d2 Fix index lookup for boundary 2025-12-07 18:16:09 +08:00
Jack Ye
a49eb464c8
Merge pull request #4129 from Flow-Launcher/dependabot/nuget/Plugins/Flow.Launcher.Plugin.Calculator/Mages-3.0.1
Bump Mages from 3.0.0 to 3.0.1
2025-11-26 18:33:53 +08:00
Jack Ye
48f67b1886
Improve and fix query result update logic issue & provide access to exact query typed by user (#3502) 2025-11-26 21:15:12 +11:00
dependabot[bot]
ce4a37b292
Bump Mages from 3.0.0 to 3.0.1
---
updated-dependencies:
- dependency-name: Mages
  dependency-version: 3.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-25 22:35:13 +00:00
Jack251970
5623bf253b Add null checks and improve dialog window handling
Added early null checks for `hwnd` to prevent invalid processing.
Enhanced thread safety by locking `_dialogWindow` updates.
Documented dialog window state handling with comments for clarity.
Handled scenarios for dialog window movement, resizing, hiding,
destruction, and termination. Improved robustness and maintainability.
2025-11-23 18:05:12 +08:00
Jack Ye
38c0fae064
Merge pull request #4124 from Flow-Launcher/dependabot/github_actions/actions/checkout-6
Bump actions/checkout from 5 to 6
2025-11-21 17:43:17 +08:00
dependabot[bot]
28065f7231
Bump actions/checkout from 5 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-20 22:05:52 +00:00
Jeremy Wu
bb841fcc3b
Merge pull request #4122 from Flow-Launcher/merge_2_0_3
Merge v2.0.3 back to dev
2025-11-20 23:33:34 +11:00
Jeremy
1c29fb2db3 merge back v2.0.3 from master to dev 2025-11-20 23:12:58 +11:00
Jeremy Wu
229987ee90
Release 2.0.3 (#4121)
Some checks failed
Publish Default Plugins / publish (push) Has been cancelled
Build / build (push) Has been cancelled
2025-11-20 19:01:51 +08:00
Jeremy Wu
533a58d083
New Crowdin updates (#4051) 2025-11-20 18:26:31 +08:00
Jack Ye
a773b51ada
Handle recoverable DWM composition exceptions gracefully (#4113) 2025-11-19 22:16:09 +02:00
Jack251970
05f15d9831 Upgrade iNKORE.UI.WPF.Modern and refactor scroll logic
Upgraded `iNKORE.UI.WPF.Modern` to version `0.10.2.1` and
replaced the custom `CustomScrollViewerEx` implementation with
the built-in `ScrollViewerEx` for simplified scrolling behavior.
Updated `Flow.Launcher.Plugin` to version `5.1.0` for compatibility.
Removed unused namespaces and adjusted styles in `Base.xaml`
to align with the new `ScrollViewerEx` usage.
2025-11-18 22:19:02 +08:00
Jeremy Wu
c6c413202c
Merge pull request #4108 from Flow-Launcher/add_sponsor
Add new sponsor to README
2025-11-14 18:11:59 +09:00
Jeremy Wu
f1b80ab90f
Add new sponsor to README 2025-11-14 17:54:45 +09:00
Jack Ye
558240279f
Merge pull request #4103 from Flow-Launcher/dependabot/nuget/Plugins/Flow.Launcher.Plugin.BrowserBookmark/Microsoft.Data.Sqlite-10.0.0
Bump Microsoft.Data.Sqlite from 9.0.10 to 10.0.0
2025-11-13 10:26:05 +08:00
dependabot[bot]
3492aac2c0
Bump Microsoft.Data.Sqlite from 9.0.10 to 10.0.0
---
updated-dependencies:
- dependency-name: Microsoft.Data.Sqlite
  dependency-version: 10.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-11 22:07:56 +00:00
Jack Ye
fc93d0904e
Merge pull request #4072 from Flow-Launcher/program_plugin_index_issue
Fix Possible OperationCancelException for WaitAsync Operations
2025-11-08 11:28:58 +08:00
Jack251970
2adbc334a2 Improve semaphore lock handling and code robustness
Added `lockAcquired` flags in `PluginsManifest.cs` and `Main.cs`
to ensure semaphore locks are only released if successfully
acquired, preventing potential runtime errors. Updated `finally`
blocks to conditionally release locks based on these flags.

Removed redundant cancellation check in `EverythingAPI.cs` to
simplify code, assuming cancellation is handled elsewhere. These
changes enhance reliability and maintainability of the codebase.
2025-11-07 15:30:07 +08:00
Jack251970
05c8dd2fe1 Remove unnecessary debug information 2025-11-06 20:48:41 +08:00
Jack251970
88fd1e56d0 Handle OperationCanceledException gracefully
Added a `catch` block for `OperationCanceledException` in
`PluginsManifest.cs` to ignore canceled operations. Updated
`EverythingAPI.cs` to use cancellation tokens with `_semaphore.WaitAsync`
and handle cancellations by exiting the method cleanly with `yield break`.
2025-11-06 20:47:54 +08:00
Jack251970
49f89e33b5 Make locking operations cancelable with tokens
Updated `_semaphore.WaitAsync` in `EverythingAPI.cs` to accept a `CancellationToken` and handle `OperationCanceledException` gracefully, returning `false` instead of propagating the exception.

Refactored locking mechanisms in `Main.cs` to use `CancellationToken` for `_win32sLock` and `_uwpsLock`. Added `try-catch` blocks to handle `OperationCanceledException` and ensure proper lock release. Methods now return `emptyResults` when operations are canceled.
2025-11-06 20:46:29 +08:00
Jack251970
d0a47c84b9 Clarify CancellationToken handling in comments
Updated comments to explain the rationale for not directly passing
CancellationToken to methods and instead checking
IsCancellationRequested within locks. This prevents unexpected
OperationCanceledException. Changes made in EverythingAPI.cs
(IsEverythingRunningAsync) and Main.cs (Win32 and UWP program
preparation). No functional changes to the code.
2025-11-06 15:39:19 +08:00
Jack251970
bfaff5cca5 Improve semaphore usage and logging clarity
Added comments in `EverythingAPI.cs` and `Main.cs` to explain
why `CancellationToken` is not directly passed to semaphore
locks, preventing unexpected `OperationCanceledException`.

Updated debug log messages in `Main.cs` for better clarity,
including changing "Start handling programs" to "Start querying
programs". Removed redundant log messages to improve logging
consistency.
2025-11-06 15:32:08 +08:00
Jack251970
30d7f67d42 Refactor token cancellation check for readability
Simplified the `if` statement that checks for token cancellation
by condensing it into a single line. This improves code readability
and eliminates unnecessary line breaks.
2025-11-06 15:30:32 +08:00
Jack251970
7e332fa615 Refactor caching and indexing logic
Added `ResetCache` calls after clearing `_win32s` and `_uwps` lists to ensure proper cache reset during indexing. Updated logic to return `resultList` after setting cache size and expiration for improved clarity. Removed `await Task.WhenAll` to adjust asynchronous flow in the indexing process.
2025-11-06 15:29:38 +08:00
Jack251970
3d8fd1d352 Improve cancellation, locking, and logging mechanisms
Enhanced cancellation handling by adding `token.IsCancellationRequested` checks to improve responsiveness. Refactored locking mechanisms for `_win32sLock` and `_uwpsLock` using `try-finally` blocks to ensure proper acquisition and release, improving thread safety and preventing deadlocks.

Reorganized Win32 and UWP program querying logic for better modularity and readability. Replaced shared collection access with local variables to improve clarity and maintain thread safety. Simplified empty result handling by directly returning `emptyResults` when canceled.

Removed redundant debug log statements to reduce verbosity and updated remaining logs for clarity. Suppressed unused result warnings by replacing direct calls to `EverythingApiDllImport.Everything_GetMajorVersion()` with null-coalescing assignments.
2025-11-06 15:28:13 +08:00
Jack251970
db0c86d50c Remove CancellationToken from semaphore WaitAsync calls
Removed the `CancellationToken` parameter from `WaitAsync` calls
on semaphores in `EverythingAPI.cs` and `Main.cs`. This change
eliminates cancellation support for semaphore waits, likely due
to a design decision prioritizing simplicity or avoiding issues
with cancellation handling.

In `EverythingAPI.cs`, `WaitAsync(token)` was replaced with
`WaitAsync()` in two methods. Similarly, in `Main.cs`, the
`WaitAsync` calls for `_win32sLock` and `_uwpsLock` were updated
to remove the `token` parameter.

Note: This change may impact the ability to gracefully handle
cancellation during semaphore waits.
2025-11-04 14:25:55 +08:00
Jack251970
6e17d5d756 Improve logging for Win32 program lock acquisition
Added a debug log statement to indicate when the lock for
querying Win32 programs is being acquired. This enhances
granularity in logging, making it easier to distinguish
between the acquisition of locks for Win32 and UWP programs.
Improves traceability and debugging of the program's
execution flow.
2025-11-04 12:27:59 +08:00