[FileLocksmith]Add Windows11 (tier1) context menu (#31388)

* Add project

* Cleanup project file and add resource file

* Move common logic to FileLocksmithLib

* Cleanup interop vcxproj

* Implement handler, add assets and appx manifest

* Revert "Cleanup interop vcxproj"

This reverts commit 97bf991f2e.

* Remove package on uninstall
Install package on enable
Fix launching app
Cleanup

* Revert non-related change

* Spellcheck

* Update src/modules/FileLocksmith/FileLocksmithContextMenu/Resources.resx

* Wire Show in extended context menu setting
This commit is contained in:
Stefan Markovic
2024-02-20 12:16:55 +01:00
committed by GitHub
parent e607b26df6
commit e573b7a1b1
44 changed files with 906 additions and 195 deletions

View File

@@ -0,0 +1,39 @@
#pragma once
#include "pch.h"
// Non-localizable constants
namespace constants::nonlocalizable
{
// Description of the registry key
constexpr WCHAR RegistryKeyDescription[] = L"File Locksmith Shell Extension";
// File name of the UI executable
constexpr WCHAR FileNameUIExe[] = L"PowerToys.FileLocksmithUI.exe";
// String key used by PowerToys
constexpr WCHAR PowerToyKey[] = L"File Locksmith";
// Nonlocalized name of this PowerToy, for logs, etc
constexpr WCHAR PowerToyName[] = L"File Locksmith";
// JSON key used to store whether the module is enabled
constexpr WCHAR JsonKeyEnabled[] = L"Enabled";
// JSON key used to store extended menu enabled
constexpr WCHAR JsonKeyShowInExtendedContextMenu[] = L"showInExtendedContextMenu";
// Path of the JSON file used to store settings
constexpr WCHAR DataFilePath[] = L"\\file-locksmith-settings.json";
// Name of the file where the list of files to checked will be stored
constexpr WCHAR LastRunPath[] = L"\\last-run.log";
// Name of the tier 1 context menu package
constexpr WCHAR ContextMenuPackageName[] = L"FileLocksmithContextMenu";
}
// Macros, non-localizable
// Description of the registry key
#define REGISTRY_CONTEXT_MENU_KEY L"FileLocksmithExt"