Jack251970
f632a4b773
Add caching to QueryAsync and integrate cache reset logic
...
Introduced a MemoryCache to improve QueryAsync performance by
caching query results, reducing redundant computations. Added
a ResetCache method to reinitialize the cache when settings
are updated. Integrated cache reset calls into settings
property setters to ensure consistency.
Refactored query logic to leverage MemoryCache.GetOrCreateAsync
for streamlined caching. Removed redundant code and debug
logging for improved readability and maintainability. Ensured
thread safety with proper locking mechanisms. Simplified and
consolidated caching logic for better maintainability.
2025-10-26 20:59:29 +08:00
Jack251970
e2fa122362
Improve program indexing with logging and thread safety
...
Added detailed debug logging to `IndexWin32ProgramsAsync` and
`IndexUwpProgramsAsync` to track the indexing process, including
preparation, start, retrieval, caching, and completion.
Replaced direct updates to `_settings.LastIndexTime` with a
thread-safe lock to prevent race conditions.
Enhanced `IndexProgramsAsync` with a debug log to indicate the
start of indexing for better traceability.
Updated program retrieval logic to process Win32 and UWP programs
in parallel with cancellation support and applied the
`HideUninstallersFilter` for cleaner results.
2025-10-26 20:56:08 +08:00
Jack251970
6a65f8090f
Enhance thread safety and refactor reindexing logic
...
Introduced `_lastIndexTimeLock` to ensure thread-safe access
and updates to `_settings.LastIndexTime`, preventing race
conditions. Refactored reindexing logic to use a `lock` block
for evaluating and updating the reindexing condition.
Added `emptyResults` as a static readonly placeholder list.
Improved code clarity and maintainability without altering
existing functionality.
2025-10-26 20:51:08 +08:00
Jack251970
637d926f7a
Remove caching logic and initialize emptyResults list
...
The caching-related code, including `cacheOptions` and `cache`, has been removed from `Main.cs`, indicating that the caching mechanism is no longer in use or has been refactored elsewhere. Additionally, the `emptyResults` list is now explicitly initialized as an empty list (`[]`). No changes were made to the `Context` property or the `commonUninstallerNames` array.
2025-10-26 20:41:06 +08:00
Jack251970
7f5efc5ca1
Refactor caching and improve QueryAsync method
...
Removed the `ResetCache` method and its associated calls to streamline caching management and improve performance. Refactored the `QueryAsync` method for better thread safety, synchronization, and exception handling. Simplified UWP and Win32 program filtering logic and removed redundant code. Eliminated manual cache disposal and reset logic, favoring a more efficient and automated caching mechanism. These changes enhance maintainability, responsiveness, and overall plugin performance.
2025-10-26 20:40:37 +08:00
Jeremy Wu
02a29c6af4
New Crowdin updates ( #4002 )
2025-10-14 12:14:37 +03:00
Jack Ye
5ae159de5b
Move to iNKORE.UI.WPF.Modern UI Framework ( #3593 )
2025-10-05 13:44:40 +03:00
Jeremy Wu
d7e1ad73cc
New Crowdin updates ( #3948 )
2025-09-21 14:36:35 +03:00
Jack251970
ef69e329fc
Fix release
2025-09-15 15:50:22 +08:00
Jack251970
9321a7df14
Fix program lock issue
2025-09-15 15:40:49 +08:00
Jack251970
29b675b26a
Upgrade nuget packages
2025-09-13 14:14:59 +08:00
Jack Ye
8bc60e55e0
Merge branch 'dev' into nuget_package_upgrade
2025-09-06 13:31:24 +08:00
Jeremy Wu
ca01d15dde
New Crowdin updates ( #3824 )
...
* New translations en.xaml (German)
[ci skip]
* New translations en.xaml (French)
[ci skip]
* New translations en.xaml (Arabic)
[ci skip]
* New translations en.xaml (Czech)
[ci skip]
* New translations en.xaml (Danish)
[ci skip]
* New translations en.xaml (Hebrew)
[ci skip]
* New translations en.xaml (Italian)
[ci skip]
* New translations en.xaml (Japanese)
[ci skip]
* New translations en.xaml (Korean)
[ci skip]
* New translations en.xaml (Dutch)
[ci skip]
* New translations en.xaml (Polish)
[ci skip]
* New translations en.xaml (Portuguese)
[ci skip]
* New translations en.xaml (Russian)
[ci skip]
* New translations en.xaml (Slovak)
[ci skip]
* New translations en.xaml (Turkish)
[ci skip]
* New translations en.xaml (Ukrainian)
[ci skip]
* New translations en.xaml (Chinese Simplified)
[ci skip]
* New translations en.xaml (Chinese Traditional)
[ci skip]
* New translations en.xaml (Vietnamese)
[ci skip]
* New translations en.xaml (Portuguese, Brazilian)
[ci skip]
* New translations en.xaml (Norwegian Bokmal)
[ci skip]
* New translations en.xaml (Serbian (Latin))
[ci skip]
* New translations en.xaml (Spanish (Modern))
[ci skip]
* New translations en.xaml (Spanish, Latin America)
[ci skip]
* New translations en.xaml (French)
[ci skip]
* New translations en.xaml (Slovak)
[ci skip]
* New translations en.xaml (Chinese Simplified)
[ci skip]
* New translations en.xaml (Ukrainian)
[ci skip]
* New translations en.xaml (French)
[ci skip]
* New translations en.xaml (Chinese Simplified)
[ci skip]
* New translations en.xaml (Chinese Simplified)
[ci skip]
* New translations en.xaml (Portuguese)
[ci skip]
* New translations en.xaml (German)
[ci skip]
* New translations en.xaml (French)
[ci skip]
* New translations en.xaml (Arabic)
[ci skip]
* New translations en.xaml (Czech)
[ci skip]
* New translations en.xaml (Danish)
[ci skip]
* New translations en.xaml (Hebrew)
[ci skip]
* New translations en.xaml (Italian)
[ci skip]
* New translations en.xaml (Japanese)
[ci skip]
* New translations en.xaml (Korean)
[ci skip]
* New translations en.xaml (Dutch)
[ci skip]
* New translations en.xaml (Polish)
[ci skip]
* New translations en.xaml (Portuguese)
[ci skip]
* New translations en.xaml (Russian)
[ci skip]
* New translations en.xaml (Slovak)
[ci skip]
* New translations en.xaml (Turkish)
[ci skip]
* New translations en.xaml (Ukrainian)
[ci skip]
* New translations en.xaml (Chinese Simplified)
[ci skip]
* New translations en.xaml (Chinese Traditional)
[ci skip]
* New translations en.xaml (Vietnamese)
[ci skip]
* New translations en.xaml (Portuguese, Brazilian)
[ci skip]
* New translations en.xaml (Norwegian Bokmal)
[ci skip]
* New translations en.xaml (Serbian (Latin))
[ci skip]
* New translations en.xaml (Spanish (Modern))
[ci skip]
* New translations en.xaml (Spanish, Latin America)
[ci skip]
* New translations en.xaml (Slovak)
[ci skip]
* New translations en.xaml (French)
[ci skip]
2025-08-31 13:05:43 +03:00
Jack251970
922c3d5611
Upgrade nuget packages & Update lock files
2025-08-17 16:54:41 +08:00
Jack Ye
54a2817962
Merge branch 'dev' into code_quality
2025-07-24 11:55:46 +01:00
Jack Ye
ed0524d207
Merge branch 'dev' into code_quality
2025-07-20 20:02:51 +08:00
Jack Ye
8b3f5aa536
Merge branch 'dev' into nuget_dependency
2025-07-20 19:55:36 +08:00
Jack251970
d71d3a5094
Fix build issue
2025-07-20 12:57:56 +08:00
Jack Ye
e931f3ae41
Fix translations
...
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-07-20 12:57:04 +08:00
Jack251970
ba0a113cc9
Add translations & Use ShowMsgError
2025-07-20 12:28:55 +08:00
Jack Ye
010b6dde79
Merge branch 'dev' into code_quality
2025-07-19 20:40:49 +08:00
Jack251970
7af3c5febf
Upgrade NuGet dependency
2025-07-19 20:26:33 +08:00
Hongtao Zhang
e96a4cf59d
Merge remote-tracking branch 'origin/dev' into net9
...
# Conflicts:
# Flow.Launcher.Infrastructure/Flow.Launcher.Infrastructure.csproj
# Flow.Launcher/Flow.Launcher.csproj
2025-07-15 15:52:34 -07:00
Jack Ye
fc6ff5a7a0
Merge branch 'dev' into code_quality
2025-07-14 09:09:09 +08:00
Jeremy Wu
a6a28ce8b1
Merge pull request #3821 from Flow-Launcher/fix-uwp-package-monitoring
...
Fix the issue that UWP changes that can't be monitored (#2345 )
2025-07-13 23:32:20 +10:00
VictoriousRaptor
2eeb097194
Use lazy init after version check
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-13 20:57:36 +08:00
Jeremy Wu
3159e67c9d
New Crowdin updates ( #3807 )
2025-07-13 15:56:34 +03:00
VictoriousRaptor
bb946b707a
Fix the issue that UWP changes that can't be monitored ( #2345 )
...
相关工作项: #2337
2025-07-13 20:54:12 +08:00
Jack251970
80b7775412
Return results when query is empty for program
2025-07-04 10:50:50 +08:00
Jeremy Wu
b440aaab37
New Crowdin updates ( #3730 )
2025-07-03 15:01:52 +03:00
Jack251970
c4cbf941cf
Add directory null check
2025-06-23 13:13:45 +08:00
Jack251970
107da050a5
Fix build issue
2025-06-23 13:02:04 +08:00
Jack251970
68fc103d7f
Use trick to get the cache directory path
2025-06-23 12:45:31 +08:00
Jeremy Wu
a77c80f7c1
New Crowdin updates ( #3615 )
2025-06-13 15:37:36 +03:00
Jack251970
08c8b8c09f
Do not show UI when shortcuts cannot be resolved
2025-06-05 19:15:26 +08:00
Jeremy Wu
db97288282
New Crowdin updates ( #3574 )
2025-06-03 06:52:56 +03:00
Jeremy Wu
2b9529d2f9
set all of plugins' version to default 1.0.0
2025-05-20 09:06:11 +00:00
Jeremy Wu
8aed36e2ef
New Crowdin updates ( #3531 )
2025-05-18 11:26:45 +03:00
Jack Ye
54c949b3ca
Merge pull request #3539 from Flow-Launcher/program_plugin_delete_logic
...
Improve Program plugin delete button logic
2025-05-14 14:40:08 +08:00
Jack251970
8325963047
Fix size changed width issue
2025-05-14 14:23:35 +08:00
Jack251970
da77085508
Fix logic & Improve code quality
2025-05-14 11:37:55 +08:00
Jack251970
204d1d285a
Improve string keys
2025-05-13 13:04:26 +08:00
Jack251970
a099935169
Fix message
2025-05-13 13:03:04 +08:00
Jack251970
284729afb5
Improve message noticification
2025-05-13 13:01:24 +08:00
Jack251970
e0ac6d5fee
Improve Program plugin delete button logic
2025-05-13 12:49:35 +08:00
Jeremy Wu
1775c0fd26
New Crowdin updates ( #3430 )
2025-05-11 13:27:09 +03:00
Jack251970
d867875cde
Format xaml styles
2025-04-24 19:46:02 +08:00
DB p
f9a201a33c
"disable from displaying" to "Hide"
2025-04-20 10:12:31 +09:00
Jack251970
1d16b30b64
Suppress async void
2025-04-15 13:22:22 +08:00
Jack251970
3f57f944f6
Remove useless debug
2025-04-13 17:52:42 +08:00