Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[#27712] PowerToys New+ v0.1 - Very early prelease version #33136

Draft
wants to merge 29 commits into
base: main
Choose a base branch
from

Conversation

cgaarden
Copy link

@cgaarden cgaarden commented May 29, 2024

Summary of the Pull Request

This PR contains an attempt of a first very prelease early version of New+ (#27712)

New+ is a new PowerToys for the File Explorer that enables users to create files and folders from a personalized set of templates.

Issue:
#27712

Spec:
https://1drv.ms/w/s!AgfnseFPEL1w2NklIIJb2hDgHkz6MQ?e=b8rSuL

This PR includes:
• Very early version of New+
• New+ Windows 11 File Explorer support
• Dark and Light System Theme support
• Logging + Trace
• New+ GPO settings
• New+ Settings page
• New+ What's new page
• New+ uninstall support

Any dev docs that needs to be added in PowerToys repo? I can move the .docx spec to .md.
Note: I expect that I will need to add to https://github.com/MicrosoftDocs/windows-uwp/tree/docs/hub/powertoys

Installer not yet completed

No new test projects yet

Don't think any changes are required

  • Documentation updated: If checked, please file a pull request on our docs repo and link it here: #xxx

Haven't added documentation yet

Detailed Description of the Pull Request / Additional comments

• Added System Theme to ThemeHelper.h/.cpp and renamed AppTheme enum to Theme

Validation Steps Performed

• Ran all unit tests except for UITests-FancyZones, UITests-FancyZonesEditor
• Removed all default settings
• Tested that defaults are same via Settings or just via invoking File Extension for the first time
• Removed new+ template folder
• Removed all items in new+ template folder
• Changed template folder location via settings 
• Changed hide extension via settings
• Changed dark and light system themes
• Basic test of Keyboard manager with different app theme
• Basic test of PowerRename with different app theme
• Toggling New+ via GPO settings

Made ThemeRegistryHelper protected
Removed New.wxs from installer
Restored logger_helper.h
Updated resources to have the right white space formatting
Replaced tabs with spaces
Added GPO info to GPO assets and fixed bug while testing GPO support
Added files for signing
@cgaarden cgaarden marked this pull request as draft May 29, 2024 03:46

This comment has been minimized.

Copy link
Collaborator

@htcfreek htcfreek left a comment

Choose a reason for hiding this comment

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

Thank you for the contribution.

I made a small comment on the policy name.

@@ -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">
Copy link
Collaborator

Choose a reason for hiding this comment

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

I know it's early state. And maybe you don't like to use the character +. But only new can be confusing and interpreted as adjective. So we should use NewPlus as utility name.

Copy link
Author

Choose a reason for hiding this comment

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

Thank you @htcfreek! I've changed it to ConfigureEnabledUtilityNewPlus

@cgaarden
Copy link
Author

@microsoft-github-policy-service agree

…ddress feedback from htcfreak

Update GPO setting name to reference NewPlus rather than just New - Address feedback from htcfreak

This comment has been minimized.

Copy link
Collaborator

@htcfreek htcfreek left a comment

Choose a reason for hiding this comment

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

I think it's the best to rename all places (docs, code, directory, installer) where the utility is called "New" to "NewPlus".

New can be read as new item and is confusing then.

@@ -30,5 +30,6 @@ public enum ModuleType
MeasureTool,
ShortcutGuide,
PowerOCR,
New,
Copy link
Collaborator

Choose a reason for hiding this comment

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

The same as on the policy name. This is confusing. Please rename to NewPlus.

Copy link
Author

Choose a reason for hiding this comment

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

The same as on the policy name. This is confusing. Please rename to NewPlus.

Thank you! I've finally gotten around to renaming to NewPlus throughout. Thanks again.

@@ -176,4 +176,8 @@ namespace winrt::PowerToys::GPOWrapper::implementation
{
return static_cast<GpoRuleConfigured>(powertoys_gpo::getAllowedAdvancedPasteOnlineAIModelsValue());
}
GpoRuleConfigured GPOWrapper::GetConfiguredNewEnabledValue()
Copy link
Collaborator

Choose a reason for hiding this comment

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

The same as on the policy name. This is confusing. Please rename to NewPlus.

Copy link
Author

Choose a reason for hiding this comment

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

Thank you! I've finally gotten around to renaming to NewPlus throughout. Thanks again.

@@ -475,4 +476,9 @@ namespace powertoys_gpo {
{
return getUtilityEnabledValue(POLICY_ALLOW_ADVANCED_PASTE_ONLINE_AI_MODELS);
}

inline gpo_rule_configured_t getConfiguredNewEnabledValue()
Copy link
Collaborator

Choose a reason for hiding this comment

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

The same as on the policy name. This is confusing. Please rename to NewPlus.

Copy link
Author

Choose a reason for hiding this comment

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

Thank you! I've finally gotten around to renaming to NewPlus throughout. Thanks again.

@@ -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"ConfigureEnabledUtilityNewPlus";
Copy link
Collaborator

Choose a reason for hiding this comment

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

The same as on the policy name. This is confusing. Please rename to NewPlus.

Copy link
Author

Choose a reason for hiding this comment

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

Thank you! I've finally gotten around to renaming to NewPlus throughout. Thanks again.

@Jay-o-Way Jay-o-Way added the Idea-New PowerToy Suggestion for a PowerToy label Jun 2, 2024

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Idea-New PowerToy Suggestion for a PowerToy
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Create new file from a list of customizable templates straight from the folder context menu
3 participants