63 Commits

Author SHA1 Message Date
Henrik Lau Eriksson
aa6910acb1
[PTRun]Fix always hiding even when an action fails (#21259)
Hide PowerToys Run if the result action returns true, otherwise keep it open
2022-10-25 20:46:40 +01:00
Andrey Nekrasov
ca3c758046
[Chore] Run solution code cleanup (#20584) 2022-09-16 10:54:58 +02:00
Andrey Nekrasov
09f4dead7f
Don't use Environment.Exit (#20532)
* [Awake] Don't use Process.Exit and move to CsWin32

* [PowerLauncher] Remove unused API

* [ColorPicker] Use cancellable NativeEventWaiter + cleanup using

* [TextExtractor] Don't use Environment.Exit

* [MeasureTool] Don't use Environment.Exit(0);

* [FZE] don't use Environment.Exit and fix WaitForPowerToysRunner
2022-09-13 19:25:19 +03:00
Andrey Nekrasov
38e7b3b7ae
[PTRun] Gracefully shutdown all threads when exiting (#20450) 2022-09-12 11:20:24 +01:00
Jeff Lord
4c796c0b53
[PTRun]Add history plugin (#19569)
* Progress!

* Progress...

* POC level.

* Added ability to delete from history using IPublicAPI

* Some sorting, works in some cases.

* Rename "Run History" back to just "History".

* Updated item from review.

* Slight change to PowerLauncher ref, set Copy Local = False

* Fixed missing history items if added to history without search term.

* Added placeholder unit test project

* Updates for new History plugin.

* Update Product.wxs, removed useless Unit Test project

* Removed actual files for "Microsoft.PowerToys.Run.Plugin.History.UnitTests"

* Added history.md, updated ESRPSigning_core.json

* Changes for review

* Removed now global CodeAnalysis/stylecop
2022-08-23 21:27:45 +01:00
Jeff Lord
7f4a2ca6db
[PTRun]Fix cutting off and using previous input (#19215)
* Deselect previous selected item because it might not be valid.

* fast execute non-delayed queries

* Speling fixxes.

* Fixed _isTextSetProgrammatically check for when PTRSearchQueryFastResultsWithDelay = false

* Resoved some comments.

* Added partial delay for fast plugins

* Updates settings UI for second throttle value. Changed text.

* 'Verbiage' update
2022-08-10 11:07:53 +01:00
Davide Giacometti
915663e7db
revert for QueryHistory and UserSelectedRecord saved on search (#19164) 2022-07-19 13:56:27 +02:00
Jeff Lord
0ad71815bb
[PTRun]Fix null reference issue when clean previous query is on (#19167) 2022-07-04 18:38:29 +01:00
Jeff Lord
0da616f917
[PTRun]Settings for result order tuning (#18978)
* Change to allow new settings for results tuning.

* Change to allow new settings for results tuning.

* Added WeightBoost

* Fixed null-ref crash in QueryResults

* Change based on stefansjfw review. Remove PowerLauncher_PluginWeightBoost.Content

* Fixed another of my dumb null-refs...

* Updated some text

* Moved global sort order and set enable/disabled as needed.

* Fixed enabled-state of "Global sort order score modifier" setting.
2022-07-04 15:12:56 +01:00
Jaime Bernardo
1490fb300c
[PTRun]Add setting to disable input delay (#18724)
* [PTRun]Add setting to disable input delay

* Address feedback and allow configuring delay

* Address PR feedback
2022-06-12 14:12:10 +01:00
Davide Giacometti
b33bc2ecd0
[NetAnalyzers]CA1031 suppressions cleanup (#18706) 2022-06-12 14:11:52 +01:00
CleanCodeDeveloper
46684966a1
[PowerLauncher] Enable analyzer and fix warnings (#16900) 2022-03-09 12:08:12 +00:00
tameemzabalawi
81e0e14008
[PowerToys Run] Fix Previous query not erased when closing (#15121) 2021-12-24 13:56:46 +03:00
Stefan Markovic
e6a7f9193b
[PT Run] If only delayed results available, select first (#14209) 2021-11-02 14:04:17 +01:00
Stefan Markovic
a881e6b3d5
Put UpdateResultsListViewAfterQuery calls logic with inside addResultLock blocks (#14078) 2021-11-01 17:16:57 +01:00
Stefan Markovic
6cc8da120f
[PT Run] Align SelectedIndex and SelectedItem (#13702)
* Set SelectedIndex to 0 after delayed execution of plugins

* Revert "Set SelectedIndex to 0 after delayed execution of plugins"

This reverts commit 5397d0f1fa13757749a79c3e72d627a7aadca10f.

* Align hovered and selected item
2021-10-12 18:10:52 +02:00
Jaime Bernardo
84b2ae3e8f
[PT Run] Add setting to use centralized keyboard hook (#13557)
* [PT Run] Add setting to use centralized hook

* Add UI separator
2021-10-01 14:59:52 +01:00
Jaime Bernardo
26e8d0d976
[OOBE] Fix starting PowerToys Run (#13455) 2021-09-27 15:55:00 +01:00
Jaime Bernardo
5963294b04
[PowerToys Run] Use global HotKey instead of low level keyboard hook (#13114)
* [PowerToys Run] Register global HotKey

Using low level keyboard hooks caused focus issues when invoking
PowerToys Run. Using a global HotKey solves this issue.

* Properly unregister hotkey on dispose

* fix spellchecker errors
2021-09-08 18:39:51 +01:00
Jaime Bernardo
8639740e6c
[Telemetry] Fix show hide events on PT Run cold boot (#12796)
* [Telemetry] fix show hide events on PT Run boot

* Fix spellchecker error
2021-08-18 11:20:48 +01:00
Davide Giacometti
55923f2790
[Run] ViewModels Cleanup (#12209)
* view models cleanup

* removed unused commands
2021-07-15 17:34:27 +03:00
Davide Giacometti
3c04111483
improve first PT Run call performance (#12352) 2021-07-15 11:51:41 +03:00
Mykhailo Pylyp
d7e09e83c2
Register the hotkey after PT Run is initialized (#11858) 2021-06-24 17:50:34 +03:00
Mykhailo Pylyp
c953f10c21
Don't crash if UserSelectedRecord.json can not be updated (#11789) 2021-06-18 13:38:23 +03:00
Mykhailo Pylyp
3a15276668
"Clear the previous query on launch" has a flicker (#10291) 2021-03-18 20:04:04 +02:00
Mykhailo Pylyp
4a9e920a1c
[PowerToys Run] Plugin manager (#9872) 2021-02-26 13:21:58 +02:00
Davide Giacometti
571bceb386
common helper for execute shell process from run plugins (#9538) 2021-02-23 09:53:08 +01:00
Mykhailo Pylyp
d92ff6d45d
tweak plugin settings (#9522) 2021-02-10 15:12:42 +02:00
Mykhailo Pylyp
433e2e57ed
Delete Fody and PropertyChanged.Fody (#9120) 2021-01-20 11:23:56 +02:00
Mykhailo Pylyp
2311c3fc18
Save QueryHistory, UserSelectedRecord after each update (#9165) 2021-01-19 18:43:28 +02:00
Mykhailo Pylyp
6cefb4e83f
[PT Run] Add logs for Launcher (#8489) 2020-12-10 14:56:16 +02:00
Davide
fdb39ca314 Wox.Core merged into PowerLauncher 2020-11-03 21:45:01 +01:00
Avneet Kaur
2c5b9b4d52
Audit culture bugs (#7707)
* Added comments and fixed CultureInfo /  StringComparison where appropriate

* Addressed comments

* Fixed comment
2020-10-30 16:43:09 -07:00
Avneet Kaur
ec8ead8183
[fxcop] Wox.Infrastructure (#7590)
* CA1052: Static holder types should be Static or NotInheritable

* CA1041: Provide ObsoleteAttribute message

* CA1062: Validate arguments of public methods

* CA1304: Specify CultureInfo / CA1305: Specify IFormatProvider / CA1307: Specify StringComparison for clarity

* CA1802: Use Literals Where Appropriate

* CA1820: Test for empty strings using string length

* CA1707: Identifiers should not contain underscores

* CA1805: Do not initialize unnecessarily.

* CA1822: Mark members as static

* CA2227: Collection properties should be read only

* CA1054: URI parameters should not be strings

* CA1031: Do not catch general exception types

* CA1060: Move P/Invokes to NativeMethods class

* CA1308: Normalize strings to uppercase

* CA2000: Dispose objects before losing scope / CA2234: Pass System.Uri objects instead of strings

* CA2234: Pass System.Uri objects instead of strings

* CA1044: Properties should not be write only

* CA1716: Identifiers should not match keywords

* CA2007: Do not directly await a Task

* CA2007: Do not directly await a Task (Suppressed)

* CA5350: Do Not Use Weak Cryptographic Algorithms (Suppressed)

* CA1724: Type names should not match namespaces (renamed Settings.cs to PowerToysRunSettings.cs)

* CA1033: Interface methods should be callable by child types (Added sealed modifier to class)

* CA1724: Type names should not match namespaces (Renamed Plugin.cs to RunPlugin.cs)

* CA1724: Type names should not match namespaces (Renamed Http.cs to HttpClient.cs)

* CA5364: Do not use deprecated security protocols (Remove unused code)

* Enabled FxCopAnalyzer for Wox.Infrastructure

* fixed comment

* Addressed comments

- Changed Ordinal to InvariantCulture
- Added comments
- Removed unused obsolete code
- Removed unused method (CA2007: Do not directly await a Task)

* Addressed comments - fixed justification for CA1031 suppression

* Addressed comments - Fixed justification for CA1031 suppression in Wox.Core/Wox.Plugin
2020-10-29 17:52:35 -07:00
Divyansh Srivastava
466ed10f3d
Fix autocomplete text issue on query change (#7392)
* Fix autocomplete text issue on query change

* Update from invariant to ordinal case for exact byte to byte matching

* Add tests for checking when autocomplete should be empty
2020-10-20 14:53:32 -07:00
Divyansh Srivastava
ea0de4f831
[Run] Fix for IndexOutOfBounds exception (#6981)
* Fix index out of bounds exception

* Race condition in query telemetry
2020-10-05 09:50:41 -07:00
P-Storm
fd32a6f7d6
Fix throwing when there is no results (#6934)
Co-authored-by: p-storm <paul.de.man@gmail.com>
2020-10-01 13:47:58 -07:00
Ivan Stošić
b266e336b5
[Launcher] Use a keyboard hook in the runner to invoke the Launcher (#6660)
* Added a keyboard hook to the runner

* Update RootKeyboardHook

* Enable reading the whole JsonObject property

* Renamed RootKeyboardHook to CentralizedKeyboardHook

* Fixed build break, changed callback return type to bool

* Added Hotkey struct which somehow went missing

+ Cherry-pick fixes

* Reorganized the kb hook

* Basic version works

* Various fixes

* Finishing touches

* Fix potential threading issue

* int -> size_t

* Add default initializers to the Hotkey struct

* Added a suggested comment

* Unified a constant

* Use C# classes instead of native calls for sync

* Added a claryfing comment

* Use std::move

* Renamed a method

* Possible fix for compilation errors

* Fix a regression

* Show a message on failure

* Added DISABLE_LOWLEVEL_HOOK support

* Allow running Launcher as standalone

* Rename string constants
2020-09-21 12:44:16 +02:00
Divyansh Srivastava
e49900f927
Fix sync issue in SelectedItem (#6582) 2020-09-16 09:59:04 -07:00
Arjun Balgovind
25f93e8b94
Fix for issue 3886 (#6585) 2020-09-14 13:12:02 -07:00
Divyansh Srivastava
a0eaf077de
[Pt Run] Show context menu for first folder plugin result (#6301)
* Added context menu to first folder result

* Added context menu to first folder result

* Add localization for string in folder plugin

* Fixed issue with context menu not showing on first selected item

* Add exception  logging
2020-09-04 15:12:04 -07:00
Arjun Balgovind
1b598ad87e
[Localization] Move PowerToys Run string resources from xaml files to resx (#6165)
* Removed xaml files, added resx file and removed references for PowerLauncher project

* Added resx file for wox.plugin

* Moved Calculator resources to resx

* Migrated resources for Folder and Indexer plugins

* Migrated resources for Program and Shell plugin

* Migrated resources for URI and Window Walker

* Removed GetTranslation, tests need to be refactored

* Removed internationalization classes

* Removed Wox.Core.Resource references

* Fixed Programs plugin tests

* Fixed tests

* Removed language xaml files from installer

* Added locProject.json files

* Fixed resource not found error

* Reverted addition of resx file for Wox.Plugin
2020-09-02 15:24:59 -07:00
Alekhya
80f8c0399b
To remove the condition that space is needed after the Action keyword (#6003)
* Returning individual queries for each plugin

* Changed cancellation token from Query type to directly using the rawQuery

* Changed the way we get the plugins for which we execute the query

* updated UpdateResultView to take a string instead of query

* Changed the way we set a query for each plugin

* removed todo comment

* global plugins are added as a part of the query builder

* Fix for plugin.json of Folder plugin being copied into the shell plugin

* >,< and : are not allowed in file paths and indexer creates a query which searches compares if a file name is greater than or lesser than the query

* Reformatted the regex

* catching the exception

* fixed existing tests

* modified it so that it works with action keyword as well as action keywords

* Added unit tests for non global plugins

* fixed test

* add back whitespace that was removed by mistake

* fix regex

* modified the cold start query

* remove extra condition

* terms being modified as expected

* used key value pairs to iterate through the dictionary

* renamed variable

* added check for an empty dictionary

* remove : because it may appear in the file path

* fix some whitespace warnings that were being treated as errors
2020-08-21 12:21:42 -07:00
Clint Rutkas
6514712054
[stylecop] Launcher (#5968)
* Should be last stylecop change!

* two more tweaks
2020-08-14 13:35:06 -07:00
Clint Rutkas
e4f9c02d11
Lots of small tweaks (#5960) 2020-08-14 11:50:14 -07:00
Clint Rutkas
5c1713f274
wrapping up everything minus var renaming (#5952) 2020-08-14 09:22:24 -07:00
Clint Rutkas
23a9fa40e7
Additional formatting tweaks (#5909) 2020-08-13 15:32:12 -07:00
Arjun Balgovind
f3babcb46e
Fixed exceptions in indexer and delayed execution logic (#5912) 2020-08-12 12:44:55 -07:00
Arjun Balgovind
dcd0ca8daa
[PT Run] Split indexer plugin's queries into a fast and slow query (#5748)
* Added regex code

* Added regex based method to remove all LIKE queries

* Made regex readonly

* Added plugin interface and code to execute slower plugins after the fast plugins

* Added scoring for indexer and added statement to remove old indexer results

* Refactored from master and added thread sleep for debugging

* Removed lock from indexer plugin and added checks to avoid exceptions

* Remove debug statement

* Removed selected index update and fixed tests not building

* Added tests

* Removed scoring

* Removed lock

* Resolve merge conflicts

* Moved dispatcher code to function and add parallel foreach loop

* Removed DelayedExec metadata and modified QueryForPlugin to run only delayed exec plugins when bool param is true

* Removed metadata from plugin.json
2020-08-11 14:52:03 -07:00
Divyansh Srivastava
2d2cb22806
Stable sorting of ResultCollection (#5850)
* Stable sorting of ResultCollection

* nit fixes for resultsViewModel and ResultCollection
2020-08-11 10:24:56 -07:00