Skip to content
Merged
Show file tree
Hide file tree
Changes from 13 commits
Commits
Show all changes
81 commits
Select commit Hold shift + click to select a range
71dfed2
Very early v0.1 of New+
cgaarden May 16, 2024
fc2f58d
Merge branch 'main' into NewPlus-v0.1
cgaarden May 27, 2024
81039dc
Update PowerToysInstaller.wixproj
cgaarden May 27, 2024
35b7ee1
Restore installer
cgaarden May 28, 2024
db932c3
Update theme_helpers.h
cgaarden May 29, 2024
6ef1a3f
Delete New.wxs
cgaarden May 29, 2024
5490c65
Update logger_helper.h
cgaarden May 29, 2024
bae2a19
Removing unintended changes after merge
cgaarden May 29, 2024
9d951d1
Update Resources.resw
cgaarden May 29, 2024
19c5197
Update Resources.resw
cgaarden May 29, 2024
27e064f
Fixed GPO support
cgaarden May 29, 2024
738e926
Update ESRPSigning_core.json
cgaarden May 29, 2024
dbff411
Removed clang-format
cgaarden May 29, 2024
af738db
Update GPO setting name to reference NewPlus rather than just New - A…
cgaarden May 29, 2024
0e42492
Added additional words to expect.txt
cgaarden May 30, 2024
c33a84c
Initial Installer Changes
cgaarden Jun 8, 2024
a72529b
Fixed installer of New+
cgaarden Jun 8, 2024
07e8174
Removed non-used constant and catch if failing to load json state
cgaarden Jun 9, 2024
cd91840
New+ should be disabled by default
cgaarden Jun 11, 2024
2bb29b3
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Jun 22, 2024
985b50a
Added a couple of examples templates to the project
cgaarden Jun 28, 2024
0bff942
Merge branch 'NewPlus-v0.1' of https://github.com/cgaarden/PowerToys …
cgaarden Jun 28, 2024
a9faa1c
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Jun 28, 2024
adf1254
Updated example templates and initial work on installer (not working …
cgaarden Jun 29, 2024
b98dd4d
Made example templates installable
cgaarden Jun 30, 2024
c994257
Updated installer to install NewPlus Example Templates
cgaarden Jun 30, 2024
5e81c76
Renamed New to NewPlus throughout
cgaarden Jun 30, 2024
5af3cb7
Fixed spelling error
cgaarden Jun 30, 2024
7cb88c5
Additional NewPlus renaming
cgaarden Jun 30, 2024
18e9d61
Initial performance improvement - always enable ignoring selection count
cgaarden Jul 5, 2024
c9e4e11
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Jul 5, 2024
75f7575
Tie dark icon to app theme
cgaarden Jul 7, 2024
8f8bc03
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Jul 13, 2024
62d17a2
Added setting window param support
cgaarden Jul 13, 2024
3e2071e
Added NewPlus enable / disable dsc.yaml files
cgaarden Jul 13, 2024
44a3df0
Fixed over logging of New+ is_enabled + and fixed New+ order in the f…
cgaarden Jul 13, 2024
f03fbb3
Added aka.ms links and renamed file
cgaarden Jul 13, 2024
ba079b7
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Jul 13, 2024
4d0dd1d
Added option to hide starting digits, spaces and dots
cgaarden Jul 13, 2024
6c20efa
Don't copy prefixed numbers when option is on
cgaarden Jul 13, 2024
80bb671
Quick hack to be able to complile on 17.3
cgaarden Jul 14, 2024
05d8659
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Jul 19, 2024
7b722e9
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Jul 20, 2024
2663070
Merge branch 'main' into NewPlus-v0.1
jaimecbernardo Jul 23, 2024
3ea9cef
Fix user installer
jaimecbernardo Jul 23, 2024
9d8d86e
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Jul 25, 2024
96b835b
Address initial PR feedback
cgaarden Jul 25, 2024
a221b1e
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Aug 24, 2024
b7a50be
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Aug 24, 2024
d5652f6
Fixed merge errors
cgaarden Aug 24, 2024
e60e527
NewPlus - Updated handling of Example Templates, and updated example …
cgaarden Aug 25, 2024
7092d52
NewPlus - Updated handling of Example Templates, and updated example …
cgaarden Aug 25, 2024
d2297ce
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Aug 25, 2024
4c5892c
Spelling: Added wcsncpy to expect.txt
cgaarden Aug 25, 2024
ccd460f
New+ Fixed light and dark mode on explorer context menu
cgaarden Aug 26, 2024
251bc01
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Aug 26, 2024
96f8af3
Fix build - align WIL version
stefansjfw Aug 29, 2024
ca11ebb
Fix bad merge
stefansjfw Aug 29, 2024
6db4a0f
Cleanup vcxproj to fix ARM build
stefansjfw Aug 29, 2024
bedb0ff
Revert "Cleanup vcxproj to fix ARM build"
stefansjfw Aug 29, 2024
f2071f8
Cleanup vcxproj to fix ARM build - working one
stefansjfw Aug 29, 2024
ce23521
Revert installer PostBuildEvent
stefansjfw Aug 30, 2024
8a73961
Copy example templates also when enabling New+ via Dashboard
cgaarden Aug 31, 2024
f3c0cbe
Merge branch 'NewPlus-v0.1' of https://github.com/cgaarden/PowerToys …
cgaarden Aug 31, 2024
4825acc
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Aug 31, 2024
af8be7e
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Sep 6, 2024
046dc4c
Addressing feedback from Stefan - take 1
cgaarden Sep 7, 2024
8a2a249
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Sep 7, 2024
0239daa
Merge branch 'NewPlus-v0.1' of https://github.com/cgaarden/PowerToys …
cgaarden Sep 7, 2024
af2f134
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Sep 12, 2024
6fba6a8
Merge remote-tracking branch 'upstream/main' into NewPlus-v0.1
cgaarden Sep 15, 2024
2b7b1b7
Merge branch 'main' into pr33136
jaimecbernardo Sep 18, 2024
a57a0d5
Update GPO files
jaimecbernardo Sep 18, 2024
c98b80a
Fix building with WinRT
jaimecbernardo Sep 18, 2024
a5403e6
Remove unneeded entries to spellcheck
jaimecbernardo Sep 19, 2024
2e07256
Fix issue - samples copied again if all templates are folders
jaimecbernardo Sep 19, 2024
c69d94b
Don't send user templates from default location on bug reports
jaimecbernardo Sep 19, 2024
bcfbac2
Add warning that it doesn't work on Windows 10
jaimecbernardo Sep 19, 2024
e872654
Fix spellcheck
jaimecbernardo Sep 19, 2024
56610a5
Add warning that backup and restore won't copy templates
jaimecbernardo Sep 19, 2024
dda6cec
More specific telemetry event names
jaimecbernardo Sep 19, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .pipelines/ESRPSigning_core.json
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,9 @@
"PowerToys.MouseWithoutBordersHelper.dll",
"PowerToys.MouseWithoutBordersHelper.exe",

"WinUI3Apps\\PowerToys.NewPlus.ShellExtension.dll",
"WinUI3Apps\\NewPlusPackage.msix",

"PowerAccent.Core.dll",
"PowerToys.PowerAccent.dll",
"PowerToys.PowerAccent.exe",
Expand Down
16 changes: 16 additions & 0 deletions PowerToys.sln
Original file line number Diff line number Diff line change
Expand Up @@ -587,6 +587,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PowerToys.Settings.DSC.Sche
{020A7474-3601-4160-A159-D7B70B77B15F} = {020A7474-3601-4160-A159-D7B70B77B15F}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NewShellExtensionContextMenu", "src\modules\New\NewShellExtensionContextMenu\NewShellExtensionContextMenu.vcxproj", "{8ACB33D9-C95B-47D4-8363-9731EE0930A0}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "New", "New", "{CA716AE6-FE5C-40AC-BB8F-2C87912687AC}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|ARM64 = Debug|ARM64
Expand Down Expand Up @@ -2603,6 +2607,16 @@ Global
{1D6893CB-BC0C-46A8-A76C-9728706CA51A}.Release|x64.Build.0 = Release|x64
{1D6893CB-BC0C-46A8-A76C-9728706CA51A}.Release|x86.ActiveCfg = Release|x64
{1D6893CB-BC0C-46A8-A76C-9728706CA51A}.Release|x86.Build.0 = Release|x64
{8ACB33D9-C95B-47D4-8363-9731EE0930A0}.Debug|ARM64.ActiveCfg = Debug|ARM64
{8ACB33D9-C95B-47D4-8363-9731EE0930A0}.Debug|ARM64.Build.0 = Debug|ARM64
{8ACB33D9-C95B-47D4-8363-9731EE0930A0}.Debug|x64.ActiveCfg = Debug|x64
{8ACB33D9-C95B-47D4-8363-9731EE0930A0}.Debug|x64.Build.0 = Debug|x64
{8ACB33D9-C95B-47D4-8363-9731EE0930A0}.Debug|x86.ActiveCfg = Debug|x64
{8ACB33D9-C95B-47D4-8363-9731EE0930A0}.Release|ARM64.ActiveCfg = Release|ARM64
{8ACB33D9-C95B-47D4-8363-9731EE0930A0}.Release|ARM64.Build.0 = Release|ARM64
{8ACB33D9-C95B-47D4-8363-9731EE0930A0}.Release|x64.ActiveCfg = Release|x64
{8ACB33D9-C95B-47D4-8363-9731EE0930A0}.Release|x64.Build.0 = Release|x64
{8ACB33D9-C95B-47D4-8363-9731EE0930A0}.Release|x86.ActiveCfg = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down Expand Up @@ -2819,6 +2833,8 @@ Global
{3A9A791E-94A9-49F8-8401-C11CE288D5FB} = {D1D6BC88-09AE-4FB4-AD24-5DED46A791DD}
{C0974915-8A1D-4BF0-977B-9587D3807AB7} = {D1D6BC88-09AE-4FB4-AD24-5DED46A791DD}
{1D6893CB-BC0C-46A8-A76C-9728706CA51A} = {557C4636-D7E1-4838-A504-7D19B725EE95}
{8ACB33D9-C95B-47D4-8363-9731EE0930A0} = {CA716AE6-FE5C-40AC-BB8F-2C87912687AC}
{CA716AE6-FE5C-40AC-BB8F-2C87912687AC} = {4574FDD0-F61D-4376-98BF-E5A1262C11EC}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {C3A2F9D1-7930-4EF4-A6FC-7EE0A99821D0}
Expand Down
4 changes: 4 additions & 0 deletions src/common/GPOWrapper/GPOWrapper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -176,4 +176,8 @@ namespace winrt::PowerToys::GPOWrapper::implementation
{
return static_cast<GpoRuleConfigured>(powertoys_gpo::getAllowedAdvancedPasteOnlineAIModelsValue());
}
GpoRuleConfigured GPOWrapper::GetConfiguredNewEnabledValue()
{
return static_cast<GpoRuleConfigured>(powertoys_gpo::getConfiguredNewEnabledValue());
}
}
1 change: 1 addition & 0 deletions src/common/GPOWrapper/GPOWrapper.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ namespace winrt::PowerToys::GPOWrapper::implementation
static GpoRuleConfigured GetConfiguredQoiPreviewEnabledValue();
static GpoRuleConfigured GetConfiguredQoiThumbnailsEnabledValue();
static GpoRuleConfigured GetAllowedAdvancedPasteOnlineAIModelsValue();
static GpoRuleConfigured GetConfiguredNewEnabledValue();
};
}

Expand Down
1 change: 1 addition & 0 deletions src/common/GPOWrapper/GPOWrapper.idl
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ namespace PowerToys
static GpoRuleConfigured GetConfiguredQoiPreviewEnabledValue();
static GpoRuleConfigured GetConfiguredQoiThumbnailsEnabledValue();
static GpoRuleConfigured GetAllowedAdvancedPasteOnlineAIModelsValue();
static GpoRuleConfigured GetConfiguredNewEnabledValue();
}
}
}
1 change: 1 addition & 0 deletions src/common/ManagedCommon/ModuleType.cs
Original file line number Diff line number Diff line change
Expand Up @@ -30,5 +30,6 @@ public enum ModuleType
MeasureTool,
ShortcutGuide,
PowerOCR,
New,
}
}
23 changes: 17 additions & 6 deletions src/common/Themes/theme_helpers.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,35 +3,46 @@
#include "dwmapi.h"
#include <windows.h>
#include <vector>
#pragma comment (lib,"Dwmapi.lib")
#pragma comment(lib, "Dwmapi.lib")

#define DWMWA_USE_IMMERSIVE_DARK_MODE 20
#define HKEY_WINDOWS_THEME L"Software\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize"

// based on https://stackoverflow.com/questions/51334674/how-to-detect-windows-10-light-dark-mode-in-win32-application
AppTheme ThemeHelpers::GetAppTheme()
Theme ThemeHelpers::GetAppTheme()
{
return ThemeRegistryHelper(L"AppsUseLightTheme");
}

Theme ThemeHelpers::GetSystemTheme()
{
return ThemeRegistryHelper(L"SystemUsesLightTheme");
}

Theme ThemeHelpers::ThemeRegistryHelper(LPCWSTR theme_key)
{
// The value is expected to be a REG_DWORD, which is a signed 32-bit little-endian
auto buffer = std::vector<char>(4);
auto cbData = static_cast<DWORD>(buffer.size() * sizeof(char));
auto res = RegGetValueW(
HKEY_CURRENT_USER,
HKEY_WINDOWS_THEME,
L"AppsUseLightTheme",
RRF_RT_REG_DWORD, // expected value type
theme_key,
RRF_RT_REG_DWORD,
nullptr,
buffer.data(),
&cbData);

if (res != ERROR_SUCCESS)
{
return AppTheme::Light;
// Defaulting to Light
return Theme::Light;
}

// convert bytes written to our buffer to an int, assuming little-endian
auto i = static_cast<int>(buffer[3] << 24 | buffer[2] << 16 | buffer[1] << 8 | buffer[0]);

return AppTheme(i);
return Theme(i);
}

void ThemeHelpers::SetImmersiveDarkMode(HWND window, bool enabled)
Expand Down
10 changes: 7 additions & 3 deletions src/common/Themes/theme_helpers.h
Original file line number Diff line number Diff line change
@@ -1,14 +1,18 @@
#pragma once
#include <windows.h>

enum class AppTheme
enum class Theme
{
Dark = 0,
Light = 1
};

struct ThemeHelpers
{
static AppTheme GetAppTheme();
static void ThemeHelpers::SetImmersiveDarkMode(HWND window, bool enabled);
static Theme GetAppTheme();
static Theme GetSystemTheme();
static void SetImmersiveDarkMode(HWND window, bool enabled);

protected:
static Theme ThemeRegistryHelper(LPCWSTR theme_key);
};
2 changes: 1 addition & 1 deletion src/common/Themes/theme_listener.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ class ThemeListener
dwThreadId = 0;
}

AppTheme AppTheme;
Theme AppTheme;
void ThemeListener::AddChangedHandler(THEME_HANDLE handle);
void ThemeListener::DelChangedHandler(THEME_HANDLE handle);
void CheckTheme();
Expand Down
2 changes: 1 addition & 1 deletion src/common/Themes/windows_colors.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ WindowsColors::Color WindowsColors::get_background_color()

bool WindowsColors::is_dark_mode()
{
return ThemeHelpers::GetAppTheme() == AppTheme::Dark;
return ThemeHelpers::GetAppTheme() == Theme::Dark;
}

bool WindowsColors::update()
Expand Down
1 change: 1 addition & 0 deletions src/common/logger/logger_settings.h
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ struct LogSettings
inline const static std::string environmentVariablesLoggerName = "environment-variables";
inline const static std::wstring cmdNotFoundLogPath = L"Logs\\cmd-not-found-log.txt";
inline const static std::string cmdNotFoundLoggerName = "cmd-not-found";
inline const static std::string newLoggerName = "New";
inline const static int retention = 30;
std::wstring logLevel;
LogSettings();
Expand Down
6 changes: 6 additions & 0 deletions src/common/utils/gpo.h
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ namespace powertoys_gpo {
const std::wstring POLICY_CONFIGURE_ENABLED_ENVIRONMENT_VARIABLES = L"ConfigureEnabledUtilityEnvironmentVariables";
const std::wstring POLICY_CONFIGURE_ENABLED_QOI_PREVIEW = L"ConfigureEnabledUtilityFileExplorerQOIPreview";
const std::wstring POLICY_CONFIGURE_ENABLED_QOI_THUMBNAILS = L"ConfigureEnabledUtilityFileExplorerQOIThumbnails";
const std::wstring POLICY_CONFIGURE_ENABLED_NEW = L"ConfigureEnabledUtilityNew";

// The registry value names for PowerToys installer and update policies.
const std::wstring POLICY_DISABLE_PER_USER_INSTALLATION = L"PerUserInstallationDisabled";
Expand Down Expand Up @@ -475,4 +476,9 @@ namespace powertoys_gpo {
{
return getUtilityEnabledValue(POLICY_ALLOW_ADVANCED_PASTE_ONLINE_AI_MODELS);
}

inline gpo_rule_configured_t getConfiguredNewEnabledValue()
{
return getUtilityEnabledValue(POLICY_CONFIGURE_ENABLED_NEW);
}
}
11 changes: 11 additions & 0 deletions src/gpo/assets/PowerToys.admx
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this file will need revision update - lines 4 and 9

Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
<definition name="SUPPORTED_POWERTOYS_0_78_0" displayName="$(string.SUPPORTED_POWERTOYS_0_78_0)"/>
<definition name="SUPPORTED_POWERTOYS_0_81_0" displayName="$(string.SUPPORTED_POWERTOYS_0_81_0)"/>
<definition name="SUPPORTED_POWERTOYS_0_81_1" displayName="$(string.SUPPORTED_POWERTOYS_0_81_1)"/>
<definition name="SUPPORTED_POWERTOYS_0_82_0" displayName="$(string.SUPPORTED_POWERTOYS_0_82_0)"/>
</definitions>
</supportedOn>
<categories>
Expand Down Expand Up @@ -326,6 +327,16 @@
<decimal value="0" />
</disabledValue>
</policy>
<policy name="ConfigureEnabledUtilityNew" class="Both" displayName="$(string.ConfigureEnabledUtilityNew)" explainText="$(string.ConfigureEnabledUtilityDescription)" key="Software\Policies\PowerToys" valueName="ConfigureEnabledUtilityNew">
<parentCategory ref="PowerToys" />
<supportedOn ref="SUPPORTED_POWERTOYS_0_82_0" />
<enabledValue>
<decimal value="1" />
</enabledValue>
<disabledValue>
<decimal value="0" />
</disabledValue>
</policy>
<policy name="ConfigureEnabledUtilityPeek" class="Both" displayName="$(string.ConfigureEnabledUtilityPeek)" explainText="$(string.ConfigureEnabledUtilityDescription)" key="Software\Policies\PowerToys" valueName="ConfigureEnabledUtilityPeek">
<parentCategory ref="PowerToys" />
<supportedOn ref="SUPPORTED_POWERTOYS_0_70_0" />
Expand Down
2 changes: 2 additions & 0 deletions src/gpo/assets/en-US/PowerToys.adml
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

revision update - line 4

Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
<string id="SUPPORTED_POWERTOYS_0_78_0">PowerToys version 0.78.0 or later</string>
<string id="SUPPORTED_POWERTOYS_0_81_0">PowerToys version 0.81.0 or later</string>
<string id="SUPPORTED_POWERTOYS_0_81_1">PowerToys version 0.81.1 or later</string>
<string id="SUPPORTED_POWERTOYS_0_82_0">PowerToys version 0.82.0 or later</string>

<string id="ConfigureGlobalUtilityEnabledStateDescription">This policy configures the enabled state for all PowerToys utilities.

Expand Down Expand Up @@ -154,6 +155,7 @@ If you disable this policy, the user won't be able to enable Enable paste with A
<string id="ConfigureEnabledUtilityMouseJump">Mouse Jump: Configure enabled state</string>
<string id="ConfigureEnabledUtilityMousePointerCrosshairs">Mouse Pointer Crosshairs: Configure enabled state</string>
<string id="ConfigureEnabledUtilityMouseWithoutBorders">Mouse Without Borders: Configure enabled state</string>
<string id="ConfigureEnabledUtilityNew">New+: Configure enabled state</string>
<string id="ConfigureEnabledUtilityPeek">Peek: Configure enabled state</string>
<string id="ConfigureEnabledUtilityPowerRename">Power Rename: Configure enabled state</string>
<string id="ConfigureEnabledUtilityPowerLauncher">PowerToys Run: Configure enabled state</string>
Expand Down
56 changes: 56 additions & 0 deletions src/modules/New/NewShellExtensionContextMenu/AppxManifest.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="utf-8"?>
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:uap2="http://schemas.microsoft.com/appx/manifest/uap/windows10/2"
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
xmlns:desktop4="http://schemas.microsoft.com/appx/manifest/desktop/windows10/4"
xmlns:desktop5="http://schemas.microsoft.com/appx/manifest/desktop/windows10/5"
xmlns:uap10="http://schemas.microsoft.com/appx/manifest/uap/windows10/10"
xmlns:com="http://schemas.microsoft.com/appx/manifest/com/windows10" IgnorableNamespaces="uap uap2 uap3 rescap desktop desktop4 desktop5 uap10 com">
<Identity Name="Microsoft.PowerToys.NewPlus" ProcessorArchitecture="neutral" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" Version="1.0.0.0" />
<Properties>
<DisplayName>PowerToys New+</DisplayName>
<PublisherDisplayName>Microsoft</PublisherDisplayName>
<Logo>Assets\New\StoreLogo.png</Logo>
<uap10:AllowExternalContent>true</uap10:AllowExternalContent>
</Properties>
<Resources>
<Resource Language="en-us" />
</Resources>
<Dependencies>
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.18950.0" MaxVersionTested="10.0.19000.0" />
</Dependencies>
<Capabilities>
<rescap:Capability Name="runFullTrust" />
<rescap:Capability Name="unvirtualizedResources"/>
</Capabilities>
<Applications>
<Application Id="Microsoft.PowerToys.NewPlus" Executable="NewPlus.exe" uap10:TrustLevel="mediumIL" uap10:RuntimeBehavior="win32App">
<uap:VisualElements AppListEntry="none" DisplayName="PowerToys New+" Description="New+ File Explorer Context Menu" BackgroundColor="transparent" Square150x150Logo="Assets\New\Square150x150Logo.png" Square44x44Logo="Assets\New\Square44x44Logo.png">
<uap:DefaultTile Wide310x150Logo="Assets\New\Wide310x150Logo.png" Square310x310Logo="Assets\New\LargeTile.png" Square71x71Logo="Assets\New\SmallTile.png"></uap:DefaultTile>
<uap:SplashScreen Image="Assets\New\SplashScreen.png" />
</uap:VisualElements>
<Extensions>
<desktop4:Extension Category="windows.fileExplorerContextMenus">
<desktop4:FileExplorerContextMenus>
<desktop5:ItemType Type="Directory">
<desktop5:Verb Id="NewPlusCommand" Clsid="69824FC6-4660-4A09-9E7C-48DA63C6CC0F" />
</desktop5:ItemType>
<desktop5:ItemType Type="Directory\Background">
<desktop5:Verb Id="NewPlusCommand" Clsid="69824FC6-4660-4A09-9E7C-48DA63C6CC0F" />
</desktop5:ItemType>
</desktop4:FileExplorerContextMenus>
</desktop4:Extension>
<com:Extension Category="windows.comServer" uap10:RuntimeBehavior="packagedClassicApp">
<com:ComServer>
<com:SurrogateServer DisplayName="Context menu verb handler">
<com:Class Id="69824FC6-4660-4A09-9E7C-48DA63C6CC0F" Path="PowerToys.NewPlus.ShellExtension.dll" ThreadingModel="STA"/>
</com:SurrogateServer>
</com:ComServer>
</com:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading