* Move KBM engine into separate process (#10672)
* [KBM] Migrate KBM UI out of the runner (#10709)
* Clean up keyboard hook handles (#10817)
* [C++ common] Unhandled exception handler (#10821)
* [KBM] Use icon in the KeyboardManagerEditor (#10845)
* [KBM] Move resources from the Common project to the Editor. (#10844)
* KBM Editor tests (#10858)
* Rename engine executable (#10868)
* clean up (#10870)
* [KBM] Changed Editor and libraries output folders (#10871)
* [KBM] New logs structure (#10872)
* Add unhandled exception handling to the editor (#10874)
* [KBM] Trace for edit keyboard window
* Logging for XamlBridge message loop
* [KBM] Added Editor and Engine to the installer (#10876)
* Fix spelling
* Interprocess communication logs, remove unnecessary windows message logs
* [KBM] Separated telemetry for the engine and editor. (#10889)
* [KBM] Editor test project (#10891)
* Versions for the engine and the editor (#10897)
* Add the editor's and the engine's executables to signing process (#10900)
* [KBM editor] Run only one instance, exit when parent process exits (#10890)
* [KBM] Force kill editor process to avoid XAML crash (#10907)
* [KBM] Force kill editor process to avoid XAML crash
* Fix event releasing
Co-authored-by: mykhailopylyp <17161067+mykhailopylyp@users.noreply.github.com>
* Make the editor dpi aware (#10908)
* [KBM] KeyboardManagerCommon refactoring (#10909)
* Do not start the process if it is already started (#10910)
* logs
* Update src/modules/keyboardmanager/KeyboardManagerEditorLibrary/EditKeyboardWindow.cpp
* Update src/modules/keyboardmanager/KeyboardManagerEditorLibrary/EditKeyboardWindow.cpp
* [KBM] Rename InitUnhandledExceptionHandler
to make it explicit that is for x64 only.
We will fix it properly when adding support for ARM64 and add a header with
the proper conditional building.
* [KBM] rename file/class/variables using camel case
* [KBM] Rename "event_locker" -> "EventLocker"
* [KBM] rename process_waiter
Add a TODO comment
* [KBM] rename methods
Add TODO comment
* [KBM] use uppercase for function names
* [KBM] use uppercase for methos, lowercase for properties
* [KBM] rename method, make methods private, formatting
* [KBM] rename private variables
* [KBM] use uppercase for function names
* [KBM] Added support to run the editor stand-alone when built in debug mode
* Update src/modules/keyboardmanager/KeyboardManagerEditor/KeyboardManagerEditor.cpp
* Check success of event creation, comment (#10947)
* [KBM] code formatting (#10951)
* [KBM] code formatting
* Update src/modules/keyboardmanager/KeyboardManagerEditorLibrary/BufferValidationHelpers.cpp
* [KBM] tracing
* [KBM] Remappings not showing fix. (#10954)
* removed mutex
* retry loop for reading
* retry on reading config once
* log error
Co-authored-by: Enrico Giordani <enricogior@users.noreply.github.com>
Co-authored-by: Enrico Giordani <enricogior@users.noreply.github.com>
Co-authored-by: Seraphima Zykova <zykovas91@gmail.com>
Co-authored-by: Enrico Giordani <enricogior@users.noreply.github.com>
Co-authored-by: Enrico Giordani <enrico.giordani@gmail.com>
* Update file config mutex code in KeyboardManager
* Update runner instance mutex names and logic
* Update Launcher mutex
* Update a mutex in the Runner
* Restored a mutex used in the installer
* Update src/modules/launcher/PowerLauncher/App.xaml.cs
Co-authored-by: Enrico Giordani <enricogior@users.noreply.github.com>
* Added localization code to pipeline and created one LocProject json for Settings
* Fixed typo
* Reordered nuget source
* Moved nuget install to restore step
* Added FZ.rc file to LocProj
* Added FZ resx file and modified rc file
* Fixed file names
* Changed to check folder for LocProject files
* Updated folder
* Changed directory
* Changed to src directory
* Changed language set and name format, removed rc file localization
* Added all projects with resx/resw files
* Added newline to end of file
* Removed nuget source as it is not used
* Updated comments
* Updated keyboard manager to use resx file
* Tweaked resources.resx and added it to project files
* Added comments and added in string table to resx script
* Remove change from bad merge
* Fix syntax error in convert stringtable
* Changed file type to None
* Migrated color picker's resources
* Migrated resources for Microsoft.Launcher
* Migrated resources for fancy zones
* Revert fancyzones changes
* Migrated resources for ImageResizer and modified script to add language specific code
* Added try catch and checks for modification to avoid unnecessary file creation
* Changed tab insertion to 4 spaces to avoid mixed file types in rc file
* Migrated resources for power preview project
* Added LocProject.json file for 5 projects
* added resgen exception check
* Moved non-localizable strings out of resx for powerpreview
* Added union class
* Added key to shortcut backend implementation
* Added tests
* Added tests for CapsLock/modifier workaround for key to shortcut
* Added correct JSON loading step
* Cleaned shortcut remap code to use helper function for modifier keys
* Removed RemapKey class
* Enable Key to Shortcut in UI along with Type Shortcut in Remap key window
* Fixed orphaning and unsuccessful remap dialog
* Fixed column width
* Renamed second type key button
* Fixed Type Shortcut issues
* Fixed shortcut to key backend logic and manually tested most scenarios
* Added s2k in UI, manually verified its working
* Added one more k2s test
* Added tests for s2k
* Added tests for Caps Lock workaround in shortcut remaps
* Fixed formatting
* Fixed formatting
* Removed safety code since it can cause issues with code generated key up events
* Added test for key up scenario
* Tweaked warning text
* Tweaked text
* Tweaked text to fit in two lines
* telemetry additions
* Enable app specific shortcut remapping
* Fixed lowercase function call
* Add test file
* Moved GetForegroundProcess to II and added tests
* Fixed runtime error while testing due to heap allocation across dll boundary
* Renamed function
* Changed shortcutBuffer type
* Linked App specific UI to backend
* Added shortcut validation logic on TextBox LostFocus handler
* Moved Validate function and changed default text
* Changed to case insensitive warning check
* Changed to case insensitive warning check at OnClickAccept
* Fixed alignment and spacing issues
* Added app-specific JSON support in backend
* Updated landing page
* Make listview horizontally scrollable
* Added tests
* Consider all case variants of All Apps in textbox to be global shortcuts
* Enable app specific shortcut remapping
* Fixed lowercase function call
* Add test file
* Moved GetForegroundProcess to II and added tests
* Fixed runtime error while testing due to heap allocation across dll boundary
* Renamed function
* Changed shortcutBuffer type
* Linked App specific UI to backend
* Added shortcut validation logic on TextBox LostFocus handler
* Moved Validate function and changed default text
* Changed to case insensitive warning check
* Changed to case insensitive warning check at OnClickAccept
* Fixed alignment and spacing issues
* Add test proj, refactor proj with filters, and move single remap function to a separate header
* Moved all methods to header files
* remove more unused commented code
* Reverted sln file
* Fixed sln file
* Added interface wrapping SendInput calls
* fixed formatting
* Created test mock class
* Added keyboard input logic
* Fixed compilation errors and added nuget reference to CppWinRT
* Added tests for single key remapping
* Refactored code for adding shortcut remap tests
* Separated test classes
* Fixed tests in release mode
* Added more tests
* Resolved comments
* Add test proj, refactor proj with filters, and move single remap function to a separate header
* Moved all methods to header files
* remove more unused commented code
* Undo test project addition
* Treat warnings as errors
* WIP Confirmation dialog for orphaned keys
* Confirmation Dialog for orphaned keys
* White OK button, Anyways capitalizef
* Change Apply to Ok for shortcuts
* Validate that mappings can be made before changing keyboardManagerState
* Set fixed MinWidth for OK button
* Fix typo
* Partial remappings confirmation dialog
Both for Shortcuts and SingleKey
* Remove warning icon callback in OnClickAccept
* Add text wrapping for OrphanKeys dialog
* Fixed foreground issue and added arrow
* Tweaked Remap Keyboard UI
* Fix errors in warning handling and update UI layout
* Tweaked sizes and centered to screen
* Fixed flyouts appearing on search for Single key remaps
* Fixed flyouts appearing on search for Shortcut remaps
* Remove warning exclamation icon and tooltip
* Fixed a bug where setting None on a drop down which would create a shortcut with a conflict would cause a crash
* Remove IsTypeKey logic
* Changed warning text
* Resolve comments
* Fixed foreground issue and added arrow
* Tweaked Remap Keyboard UI
* Fix errors in warning handling and update UI layout
* Tweaked sizes and centered to screen
* Changed size to scale based on resolution
* Fixed comments
* Handled invalid input for single key remaps
* Added some functions
* Added better error message functions and finished warnings for edit keyboard
* Updated dropdown order of keys
* Added new warning template for shortcuts
* Added show warning on Apply code
* Removed old flyout code
* Fixed issue where tooltips were replaced on Apply
* Simplified == operator