* Analyzers CPP
Changing the warning level from 3 to 4.
change some project files to make them use the warning config in cpp props file.
* Analyzers C++ turn on warning 4706
Change Cpp.Build.props file to enable 4706
fix BugReportTool code to get rid of 4706
* Turn on warning 4100 and fix the code
* Follow c++ core guidelines
* Adapting to PR comments
* Imported offline solution
* Make solution compile
* Add Windows sample, doesn't work?
* Added new project to implement the dll
* Remove unneeded header
* Implemented IUnknown part of ExplorerCommand
* Implemented IExplorerCommand methods
* Implemented ClassFactory
* Implemented DLL register/unregister
* Implemented other DLL exports, not working?
* Implemented IShellExtInit inferface
* Implemented IContextMenu, it works!
* Implement command data fetching
* Make sample project compile on VS 2022
* Add plan
* Implement Lib as separate project
* Implemented IPC, not tested
* Console UI project skeleton
* Implemented basic console UI
* Implemented piping, there are bugs
* Prototype works
* Remove old project
* Added GUI project skeleton
* Mitigate issue with WinUI3
* Added a control for displaying results
* Add button
* Implement core functions in lib project
* Call new library function from console main
* Implement showing results
* Improve UI
* Implemented subdirectory search
* Remove useless code
* Set window size
* UI adjustments
* Implement killing process
* Rename variable
* Add lib project to main solution
* Add Ext and GUI projects to solution
* Tweak packages for GUI project
* Add a settings page
* Add a few resource strings
* Add one more resources string
* VS keeps trying to correct this
* Add references to File Locksmith in /,github
* Implement some parts of FileLocksmithModule
* Change output directory
* Change target name and add to runner
* Add logger
* Started implementing settings backend
* Fix log folder
* Settings work
* Add some basic tracing
* Attempt at adding resources
* Remove junk files
* Added missing defines
* Replaced some constants with resources
Something's not working
* Move resources to the Ext project
* Remove experiment
* Add binaries for signing
* Improve tracing
* Remove old Settings calls
* Show something when there are no results
* Change window title
* Move computation to another thread, improve UX
* Increase font size for default text
* Remove entries for killed processes
* Show user name
* Remove nonrecursive implementation
* Implement back end for getting file names
* Show list of files, UI tweaks
* Remove useless includes
* Implement back end for getting full process path
* Dark title bar on dark themes
* Using Expander, other UI adjustments
* Show "No results" after killing all processes
* Show progress ring
* Update configuration mapping
* Revert "Update configuration mapping"
This reverts commit d8e13206f3c7de3c6dbf880299bfff3bf9f27a37.
* Fixed solution configuration, ARM64 should build
* Backend for refreshing
* Variable window size
* Add refresh button
* New WinUI3 C# project for FL
* Started porting functionality
* Add Interop project
* Move IPC to Ext project
* Ported native functions to Interop
* Ported finding processes
* Ported most of Main Window functionality
* Display paths of files
* Implement killing processes
* Use resource string for "End Task"
* Remove entries for terminated processes
* Show User name
* Set default window size
* Make the new UI the default
* Reading paths from stdin, completed port to C#
* Fix small bug
* Moving to MVVM
* Adding Labs
* Merge branch 'ivan/file-locksmith' of https://github.com/microsoft/PowerToys into ivan/file-locksmith
Removing one parent commit for cleaner history
Co-Authored-By: Niels Laute <niels.laute@live.nl>
* Reintroducing features
* Moving UI strings to resources file
* Restored functionality
* Add missing dlls
* Add FIle Locksmith to publish.cmd
* Rebase fixes
* Try updating nuget.config
* Fix copy-paste blunder
* Add File Locksmith UI for publishing
* Add .pubxml file in FileLocksmith
* Change build output folder
* Fix installer build issues
Remove old projects from solution so MSBuild doesn't build them.
Downgrade target framework to what most other projects are using.
Fix publishing profile and project runtimes.
Remove unused CsWinRT references.
* [CI] Add clear to nuget packages
* Fix module reference counting
* Fix nuget for release CI
* Fix version and signing
* Fix path for resources
* Fix incorrect results when running 2 instances
* Fix default nuget source
* Windows 10 icon and fallback for UI
* Code clean-up and spaces instead of tabs
* Add gif showcasing FL
* Add screenshot of File Locksmith for Settings
* Add new files to the installer
* Add OOBE page
* Showing selected paths in the header
* Tweak path list
* Added new, wider gif
* Add GPO
* Add some logs
* [CI]Get CommunityToolkit.Labs from BigPark feed
* [CI]Use azure package feed for Nuget in release
* [CI]Another try for the labs source
* Revert changes to feed
* Use RestoreAdditionalProjectSources
* Add tooltip to file list
* Change tooltip to not trim the lines
* Add Tips and tricks section mentioning elevated
* Add some more logs messages.
* Grammar fix
* Add to bug report tool
* Fix UI virtualization not working
* Disable virtualization to avoid crashes
* Get better virtualization
* Add dialog instead of tooltip to show list of items
* No results refresh icon is now a button too
* Use managed methods for handling processes
* Remove registry code from Ext.
* Support drives too
Co-authored-by: Niels Laute <niels.laute@live.nl>
Co-authored-by: Jaime Bernardo <jaime@janeasystems.com>
* Add GPOWrapper headers and C++/WinRT library
* Check GPO before starting utilities
* Show message on GPO having disabled preview panes.
* Don't generate thumbnails if GPO disabled
* Fix FancyZonesEditor unable to recognize GPOWrapper
* Move settings view models to the settings project
* Use GPO to block enabling utilities in Settings
* Hide context menu entries when gpo disables utilities
* Apply gpo policies when enabling PowerToys on runner
* Add version and metadata to dll
* Add GPOWrapper to the installer
* Fix MSBuild errors on WPF apps by using Projection
* Signing
* Add gpo files and publish them
* Add GPO policies to the bug report tool
* Add some documentation for using GPO
* Mention support to actual lowest supported version of Windows
* Move PowerToys to the root of administrative templates tree
* Save policies on Software\Policies\PowerToys
* Support both machine and user scopes
* Fix documentation to reference computer and user scopes
* Mention incompatibility with outlook in gpo
* Set a better folder structure for gpo assets
* Move PDF Handler warning to the description
* Update doc/gpo/README.md
Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com>
* Add actual minimum version of PowerToys to gpo files
* Fix identation
* Remove GPOWrapper Readme
* Add Active Directory instructions to doc
Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com>
* [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
* [Screen Ruler] simplify lines calculation
* [Screen Ruler] Add inches and centimeters support
* [Chore] prefer x64 toolset to avoid hitting C1076
* [Screen Ruler] Allow making screenshots in non-continuous mode
* [Screen Ruler] Use single d3d device for all ops
* [Screen Ruler] remove gpu mutex and clean up screen capturing
* [Screen Ruler] handle and log DXGI initialization failure
* [Screen Ruler] Add unhandled exception handler
* [Screen Ruler] comment out Units of Measure setting
* [Screen Ruler] introduce a separate device dedicated for capturing
* [MeasureTool] initial commit
* [chore] clean up needless WindowsTargetPlatformVersion overrides from projects
* [MeasureTool] initial implementation
* Fix build errors
* Update vsconfig for needed Windows 10 SDK versions
* fix spellchecker
* another spellcheck fix
* more spellcheck errors
* Fix measurement being off by 1 on both ends
* UI fixes
* Add feet to crosses
* Remove anti-aliasing, as it's creating artifacts
* Use pixel tolerance from settings
* Tooltip updates
* Restore antialiasing to draw the tooltip
* remove comment for spell check
* Updated icons
* Icon updates
* Improve measurement accuracy and display
* Fix spellchecker
* Add less precise drawing on continuous warning
* Add setting for turning cross feet on
* Swap LMB/RMB for interaction
* Uncheck active tool's RadioButton when it exits
* activation hotkey toggles UI instead of just launching it
* track runner process and exit when it exits
* add proj ref
* toolbar is interactive during measurements
* always open toolbar on the main display
* refactor colors
* refactor edge detection & overlay ui
* refactor overlay ui even more
* simplify state structs
* multimonitor preparation: eliminate global state
* prepare for merge
* spelling
* proper thread termination + minor fixes
* multimonitor: launch tools on all monitors
* multimonitor support: track cursor position
* spell
* fix powertoys!
* ScreenSize -> Box
* add shadow effect for textbox
* spell
* fix debug mode
* dynamic text box size based on text layout metrics
* add mouse wheel to adjust pixel tolerance + per channel detection algorithm setting
* spelling
* fix per channel distance calculations
* update installer deps + spelling
* tool activation telemetry
* update assets and try to fix build
* use × instead of x
* allow multiple measurements with bounds tool with shift-click
* move #define DEBUG_OVERLAY in an appropriate space
* spell-checked
* update issue template + refactor text box drawing
* implement custom renderer and make × semiopaque
* spelling
* pass dpiScale to x renderer
* add sse2neon license
* update OOBE
* move license to NOTICE
* appropriate module preview image
* localization for AutomationPeer
* increase default pixel tolerance from 5 to 30
* add PowerToys.MeasureToolUI.exe to bugreport
* explicitly set texture dims
* clarify continuous capture description
* fix a real spelling error!
* cleanup
* clean up x2
* debug texture
* fix texture access
* fix saveasbitmap
* improve sum of all channel diffs method score calc
* optimize
* ContinuousCapture is enabled by default to avoid confusion
* build fix
* draw captured screen in a non continuous mode
* cast a spell...
* merge fix
* disable stroboscopic effect
* split global/perScreen measure state and minor improvements
* spelling
* fix comment
* primary monitor debug also active for the bounds tool
* dpi from rt for custom renderer
* add comment
* fix off by 1
* make backround convertion success for non continuous mode non-essential
* fix spelling
* overlay window covers taskbar
* fix CI
* revert taskbar covering
* fix CI
* fix ci again
* fix 2
* fix ci
* CI fix
* fix arm ci
* cleanup cursor convertion between coordinate spaces
* fix spelling
* Fix signing
* Fix MeasureToolUI version
* Fix core version
* fix race condition in system internals which happens during concurrent d3d/d2d resource creation
Co-authored-by: Jaime Bernardo <jaime@janeasystems.com>
Co-authored-by: Niels Laute <niels.laute@live.nl>
* Init commit
* Fix unintended GUID change of Microsoft.PowerToys.Run.Plugin.TimeZone.UnitTests
* Region and click word working
* Code style
* Close even when there is no result from the OCR
* Fix spelling concerns, and make overlay black to match snipping tool
* increase opacity of overlay to match snipping tool
* Code Style and cleanup
* Code style
* Create Logos and hook them into the project file
* Make the PowerOCR VCXProj more like Awake VCXProj
* Rename MainWindow to OCROverlay
* Add WindowUtilities and WindowForms
* Remove fsg to fix spelling error
* launch OCR Overlay on every screen
* Add PowerOCR to Runner Main.cpp
* Add PowerOCR Settings and Properties
* Add PowerOcrViewModel
* Fix wrong setting reference in PowerOcrSettingsVM
* Try to clean up the Cpp project for PowerOCR
* Went to ARM64 was x64 thanks @snickler
* Clean up PowerOCR C++ Proj with file refs
* Rewrite C++ dllmain comparing to awake
* Changes for spelling issues. The rest will stay
* Create PowerOcr Settings Page and add to settings shell
* Fix PowerOcr Settings
* Fix multi-monitor scaling issue
* Add close all overlays when escaping
* Update src/runner/main.cpp to call correct Power OCR dll
Co-authored-by: Stefan Markovic <57057282+stefansjfw@users.noreply.github.com>
* Update expect.txt
* Add many files from Color Picker for hotkey activation
* Organize project into helper folder
* Use new hotkey activation and keep process alive
* Fix bug where scalebmp wasn't working
* Add The file headers and dispose app.xaml.cs
* Code style changes
* Fix bug where PowerOCR was toggling Awake
* Unsubscribe from keyboard events making they don't fire twice
* Add SndPowerOcrSetting and add to SettingsVM
* Trying to make the runner close PowerOCR when runner closes
* Fix app_name
* Update spellcheck expect
* use mutex on PowerOCR app to keep to single instance
* Rebuild the module interface using ColorPicker as a template.
Process still stays alive.
* Fix project names of the module interface
* Put app startup args back to 0 like color picker
* Runner now finds and enables/disables PowerOCR
* remove unneeded item groups from settings proj, per stefansjfw
* Add PowerOCR Screenshots
* Revert changed project GUID
* Add OOBE content for PowerOCR
* Keep cursor on one screen since the OCR window does not span screens.
* reload settings when activation key is pressed
* New screenshots and OOBE text
* Add PowerOCR as a case in the settings App.xaml.cs OnLaunched
* Settings and OOBE Text Changes
* Using using on bitmaps and change OCR overlay to stay open if no result
* Keyboard activation is handled is true
* Remove unused start PowerOCR OOBE Method
* [PowerOCR]Add some telemetry
* Add some logging
* Don't recreate the OCR overlay Windows more times
* Add to BugReportTool to get event viewer errors
* Fix wrong comment
* Fix another comment
* Add files to installer
* Add to signing
* Don't take Esc away from other apps
* Default to Win Shift R
* Use low level keyboard hook from runner
* Remove esc from local low level keyboard hook
* Fix some nits
* Default to Win Shift T
* Made file too big string variable
* Performance improvements
* Add progress bar to indicate loading
* Added Logging
* Added name to log files
* Push
* Updated expect.txt
* Push
* * Fixes small bug I sometimes encountered by unloading the application
* Fixes bug where sometimes the loading bar kept stuck (on "file is too big" screen
* Update expect.txt
* Resolved review comments
Added LogTrace() function
* Unifying tasks
* Removed unneccesary log message
* * Added margin to loading bar and text.
* Changed color of background to monaco dark skin color
* Centred loading bar
* Changed logger path
* Changed log path
* Fixed align of loading label
* Fix label size and position
Co-authored-by: Stefan Markovic <stefan@janeasystems.com>
* C++ impl of immersive dark mode
* Stop using the hardcoded value.
* Conjured up theme listener based on registry.
* Update MainWindow.xaml.cpp
* Update expect.txt
* Moved themehelpers to the common themes lib.
* Ported theme helpers back to .NET
* Update expect.txt
* Updated C# Theme Listening logic to mimic the one from Windows Community Toolkit.
* Replaced unmanaged code for RegisterForImmersiveDarkMode with unmanaged ThemeListener class.
* Fix upstream changes
* Update ThemeListener.h
* Update ThemeListener.h
* Proper formatting
* Added handler to Keyboard Manager.
* Update EditKeyboardWindow.cpp
* Added dwmapi.lib to runner, removed condition from additional dependencies.
* Update PowerRenameUI.vcxproj
* Added new deps for ManagedCommon to Product.wxs
* Crude attempts and understanding installer
* Removed Microsoft.Win32.Registry.dll from product.wxs.
* Updated dictionary
* Renamed ThemeListener class file for consistency, removed unused CheckImmersiveDarkMode in theme_helpers.
* Update Themes.vcxproj
* Update theme_listener.cpp
* Removed SupportsImmersiveDarkMode version check
* Removed SupportsImmersiveDarkMode version check
* Whoops
* Update expect.txt
* Move to WinAppSDK-1.1.0
* expect.txt
* Revert "[Settings]Don't launch if explorer is running elevated"
This reverts commit c485da2816.
* Make copyright header analyze suppression module scope
* [ARM64] Cleanup PowerToys solution configuration
* [ARM64] Add Bootstrapper support
known issues:
- wix doesn't have arm platform -> using x86 instead, resulting in wrong default installation dir and inability to detect 605
- current winappsdk 1.0.3 installer is corrupted -> contains x64 packages
- we're still using hardcoded vcredist for some modules
* Remove duplicate Stylecop PackageReference
* [ARM64] Cleanup StylesReportTool configuration
* [ARM64] fix configurations for bootstrapper
* fixes
* [ARM64] VCM fix
* [ARM64] Fix LinkIncremental conditional in StylesReportTool
* fix#2
* perfect forwarding
* [ARM64] Switch to call vformat to compile with later MSVC toolkits
* Updated expect
Co-authored-by: Jeremy Sinclair <4016293+snickler@users.noreply.github.com>
* Migrate PowerRename to Unpackaged WinUI3
* [ARM64] PowerRename (#18002)
* Migrate PowerRename to Unpackaged WinUI3
* Removed Project Config and update PlatformToolset to v143
* Updated solution config
* Migrate PowerRename to Unpackaged WinUI3
* Fixed configs changed from ARM64 build
* Left one project out of fix
Co-authored-by: Stefan Markovic <stefan@janeasystems.com>
Co-authored-by: Stefan Markovic <57057282+stefansjfw@users.noreply.github.com>
* Minor fixes
* Remove PowerRenameUILib from signing list - doesn't exist anymore
* Remove PowerRenameUILib from move_uwp_resources.ps1
* Bring back old dir name to see if localization is preserved
Remove move_uwp_resources.ps1 - not needed anymore
* Remove UWP localization docs part
* Fix minor UI quirk
Co-authored-by: Jeremy Sinclair <4016293+snickler@users.noreply.github.com>
* Removed x64 specific conditions
* Added RuntimeIdentifiers and ensured Platforms aligned
* Removed x64 specific configuration and normalized PropertyGroup configuration
* Removed Platform conditions from ItemDefinition and Property Group
* Adding Project Configurations to PowerToys.Interop
* Updated solution config for common projects