diff --git a/Config/Features.json b/Config/Features.json index ba754fc..ff19d79 100644 --- a/Config/Features.json +++ b/Config/Features.json @@ -1,5 +1,5 @@ { - "Version": "1.0", + "Version": "2.0", "Categories": [ { "Name": "Privacy & Suggested Content", @@ -251,521 +251,521 @@ "Features": [ { "FeatureId": "RemoveApps", - "Label": "apps", "Category": null, - "Action": "Remove", - "RegistryKey": null, + "Action": "Remove apps", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": null, "MaxVersion": null }, { "FeatureId": "Apps", - "Label": "The selection of apps to remove, specified as a comma separated list. Use 'Default' (or omit) to use the default apps list", "Category": null, - "Action": "Apps", - "RegistryKey": null, + "Action": "Specify apps to remove (comma-separated; use 'Default' or omit to use the default apps list)", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": null, "MaxVersion": null }, { "FeatureId": "RemoveAppsCustom", - "Label": "custom selection of apps", "Category": null, - "Action": "Remove", - "RegistryKey": null, + "Action": "Remove custom selection of apps", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": null, "MaxVersion": null }, { "FeatureId": "RemoveCommApps", - "Label": "the Mail, Calendar, and People apps", "Category": null, - "Action": "Remove", - "RegistryKey": null, + "Action": "Remove the Mail, Calendar, and People apps", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": null, "MaxVersion": null }, { "FeatureId": "RemoveW11Outlook", - "Label": "the new Outlook for Windows app", "Category": null, - "Action": "Remove", - "RegistryKey": null, + "Action": "Remove the new Outlook for Windows app", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": null, "MaxVersion": null }, { "FeatureId": "RemoveGamingApps", - "Label": "the Xbox App and Xbox Gamebar", "Category": null, - "Action": "Remove", - "RegistryKey": null, + "Action": "Remove the Xbox App and Xbox Gamebar", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": null, "MaxVersion": null }, { "FeatureId": "RemoveHPApps", - "Label": "HP OEM applications", "Category": null, - "Action": "Remove", - "RegistryKey": null, + "Action": "Remove HP OEM applications", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": null, "MaxVersion": null }, { "FeatureId": "CreateRestorePoint", - "Label": "a system restore point", "Category": null, - "Action": "Create", - "RegistryKey": null, + "Action": "Create a system restore point", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableTelemetry", - "Label": "telemetry, tracking & targeted ads", "ToolTip": "This setting disables telemetry, diagnostic data collection, activity history, app-launch tracking, targeted ads and more. It limits the data that is sent to Microsoft about your device and usage.", "Category": "Privacy & Suggested Content", - "Action": "Disable", - "RegistryKey": "Disable_Telemetry.reg", + "Action": "Disable telemetry, tracking & targeted ads", "ApplyText": "Disabling telemetry, diagnostic data, activity history, app-launch tracking and targeted ads...", - "UndoAction": "Enable", + "UndoAction": "Enable telemetry, tracking & targeted ads", + "UndoText": "Enabling telemetry, tracking & targeted ads...", + "RegistryKey": "Disable_Telemetry.reg", "RegistryUndoKey": "Enable_Telemetry.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableSuggestions", - "Label": "tips, tricks & suggested content throughout Windows", "ToolTip": "This setting removes many annoying distractions from Windows. This includes things like notifications, reminders and sync provider ads. It also prevents automated installation of suggested apps.", "Category": "Privacy & Suggested Content", - "Action": "Disable", - "RegistryKey": "Disable_Windows_Suggestions.reg", + "Action": "Disable tips, tricks & suggested content throughout Windows", "ApplyText": "Disabling tips, tricks, suggestions and ads throughout Windows...", - "UndoAction": "Enable", + "UndoAction": "Enable tips, tricks & suggested content throughout Windows", + "UndoText": "Enabling tips, tricks & suggested content throughout Windows...", + "RegistryKey": "Disable_Windows_Suggestions.reg", "RegistryUndoKey": "Enable_Windows_Suggestions.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableLocationServices", - "Label": "Windows location services & app location access", "ToolTip": "This will turn off Windows Location Services and deny apps access to your location. This feature uses policies, which will lock down certain settings.", "Category": "Privacy & Suggested Content", - "Action": "Disable", - "RegistryKey": "Disable_Location_Services.reg", + "Action": "Disable Windows location services & app location access", "ApplyText": "Disabling Windows location services and app location access...", - "UndoAction": "Enable", + "UndoAction": "Enable Windows location services & app location access", + "UndoText": "Enabling Windows location services & app location access...", + "RegistryKey": "Disable_Location_Services.reg", "RegistryUndoKey": "Enable_Location_Services.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableFindMyDevice", - "Label": "Find My Device location tracking", "ToolTip": "This will turn off the 'Find My Device' feature, which periodically sends your device's location to Microsoft. This feature uses policies, which will lock down certain settings.", "Category": "Privacy & Suggested Content", - "Action": "Disable", + "Action": "Disable Find My Device location tracking", + "ApplyText": "Disabling Find My Device location tracking...", + "UndoAction": "Enable Find My Device location tracking", + "UndoText": "Enabling Find My Device location tracking...", "RegistryKey": "Disable_Find_My_Device.reg", - "ApplyText": "> Disabling Find My Device location tracking...", - "UndoAction": "Enable", "RegistryUndoKey": "Enable_Find_My_Device.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableLockscreenTips", - "Label": "tips & tricks on the lock screen", "ToolTip": "This will turn off the tips, tricks and fun facts that appear on the lock screen.", "Category": "Privacy & Suggested Content", - "Action": "Disable", - "RegistryKey": "Disable_Lockscreen_Tips.reg", + "Action": "Disable tips & tricks on the lock screen", "ApplyText": "Disabling tips & tricks on the lock screen...", - "UndoAction": "Enable", + "UndoAction": "Enable tips & tricks on the lock screen", + "UndoText": "Enabling tips & tricks on the lock screen...", + "RegistryKey": "Disable_Lockscreen_Tips.reg", "RegistryUndoKey": "Enable_Lockscreen_Tips.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableDesktopSpotlight", - "Label": "Windows Spotlight for desktop", "ToolTip": "This will turn off the 'Windows Spotlight' feature for the desktop background, which shows different background images and occasionally tips and fun facts on the desktop.", "Category": "Privacy & Suggested Content", - "Action": "Disable", - "RegistryKey": "Disable_Desktop_Spotlight.reg", + "Action": "Disable Windows Spotlight for desktop", "ApplyText": "Disabling the 'Windows Spotlight' desktop background option...", - "UndoAction": "Enable", + "UndoAction": "Enable Windows Spotlight for desktop", + "UndoText": "Enabling Windows Spotlight for desktop...", + "RegistryKey": "Disable_Desktop_Spotlight.reg", "RegistryUndoKey": "Enable_Desktop_Spotlight.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableEdgeAds", - "Label": "ads, suggestions and newsfeed in Edge", "ToolTip": "This will turn off various distractions from Microsoft Edge such as ads, suggestions and the MSN news feed. This feature uses policies, which will lock down certain settings.", "Category": "Privacy & Suggested Content", - "Action": "Disable", - "RegistryKey": "Disable_Edge_Ads_And_Suggestions.reg", + "Action": "Disable ads, suggestions and newsfeed in Edge", "ApplyText": "Disabling ads, suggestions and the MSN news feed in Microsoft Edge...", - "UndoAction": "Enable", + "UndoAction": "Enable ads, suggestions and newsfeed in Edge", + "UndoText": "Enabling ads, suggestions and newsfeed in Edge...", + "RegistryKey": "Disable_Edge_Ads_And_Suggestions.reg", "RegistryUndoKey": "Enable_Edge_Ads_And_Suggestions.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableCopilot", - "Label": "Microsoft Copilot", "ToolTip": "This will disable and uninstall Microsoft Copilot, Windows' built-in AI assistant.", "Category": "AI", - "Action": "Disable", - "RegistryKey": "Disable_Copilot.reg", + "Action": "Disable Microsoft Copilot", "ApplyText": "Disabling Microsoft Copilot...", - "UndoAction": "Enable", + "UndoAction": "Enable Microsoft Copilot", + "UndoText": "Enabling Microsoft Copilot...", + "RegistryKey": "Disable_Copilot.reg", "RegistryUndoKey": "Enable_Copilot.reg", "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "DisableRecall", - "Label": "Windows Recall", "ToolTip": "This will disable Windows Recall, an AI-powered feature that provides quick access to recently used files, apps and activities. This feature uses policies, which will lock down certain settings.", "Category": "AI", - "Action": "Disable", - "RegistryKey": "Disable_AI_Recall.reg", + "Action": "Disable Windows Recall", "ApplyText": "Disabling Windows Recall...", - "UndoAction": "Enable", + "UndoAction": "Enable Windows Recall", + "UndoText": "Enabling Windows Recall...", + "RegistryKey": "Disable_AI_Recall.reg", "RegistryUndoKey": "Enable_AI_Recall.reg", "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "DisableClickToDo", - "Label": "Click To Do, AI text & image analysis", "ToolTip": "This will disable Click To Do, which provides AI-powered text and image analysis features in Windows. This feature uses policies, which will lock down certain settings.", "Category": "AI", - "Action": "Disable", + "Action": "Disable Click To Do, AI text & image analysis", + "ApplyText": "Disabling Click To Do, AI text & image analysis...", + "UndoAction": "Enable Click To Do, AI text & image analysis", + "UndoText": "Enabling Click To Do, AI text & image analysis...", "RegistryKey": "Disable_Click_to_Do.reg", - "ApplyText": "Disabling Click to Do...", - "UndoAction": "Enable", "RegistryUndoKey": "Enable_Click_to_Do.reg", "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "DisableAISvcAutoStart", - "Label": "AI service from starting automatically", "ToolTip": "This will set the WSAIFabricSvc service to manual startup, preventing the service from starting automatically with Windows.", "Category": "AI", - "Action": "Prevent", + "Action": "Prevent AI service from starting automatically", + "ApplyText": "Preventing AI service from starting automatically...", + "UndoAction": "Allow AI service to start automatically", + "UndoText": "Allowing AI service to start automatically...", "RegistryKey": "Disable_AI_Service_Auto_Start.reg", - "ApplyText": "> Preventing AI service from starting automatically...", - "UndoAction": "Allow", "RegistryUndoKey": "Enable_AI_Service_Auto_Start.reg", "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "DisableDVR", - "Label": "Xbox game/screen recording", "ToolTip": "This will disable the Xbox game/screen recording features included with the Game Bar app. This feature uses policies, which will lock down certain settings.", "Category": "Gaming", - "Action": "Disable", - "RegistryKey": "Disable_DVR.reg", + "Action": "Disable Xbox game/screen recording", "ApplyText": "Disabling Xbox game/screen recording...", - "UndoAction": "Enable", + "UndoAction": "Enable Xbox game/screen recording", + "UndoText": "Enabling Xbox game/screen recording...", + "RegistryKey": "Disable_DVR.reg", "RegistryUndoKey": "Enable_DVR.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableGameBarIntegration", - "Label": "Game Bar integration", "ToolTip": "This will disable the Game Bar integration with games and controllers. This stops annoying ms-gamebar popups when launching games or connecting a controller.", "Category": "Gaming", - "Action": "Disable", - "RegistryKey": "Disable_Game_Bar_Integration.reg", + "Action": "Disable Game Bar integration", "ApplyText": "Disabling Game Bar integration...", - "UndoAction": "Enable", + "UndoAction": "Enable Game Bar integration", + "UndoText": "Enabling Game Bar integration...", + "RegistryKey": "Disable_Game_Bar_Integration.reg", "RegistryUndoKey": "Enable_Game_Bar_Integration.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "ClearStart", - "Action": "Clear Start Menu", - "Label": "Remove all pinned apps from the start menu for this user only", "Category": "Start Menu & Search", - "RegistryKey": null, + "Action": "Clear Start Menu for the selected user", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "ClearStartAllUsers", - "Action": "Clear Start Menu (All Users)", - "Label": "Remove all pinned apps from the start menu for all existing and new users", "Category": "Start Menu & Search", - "RegistryKey": null, + "Action": "Clear Start Menu for all users", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "ReplaceStart", - "Action": "Replace Start Menu", - "Label": "Replace the start menu layout for this user only with the provided template file", "Category": null, - "RegistryKey": null, + "Action": "Replace Start Menu layout for the selected user", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "ReplaceStartAllUsers", - "Action": "Replace Start Menu (All Users)", - "Label": "Replace the start menu layout for all existing and new users with the provided template file", "Category": null, - "RegistryKey": null, + "Action": "Replace Start Menu layout for all users", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "DisableStartRecommended", - "Label": "recommended section in the start menu", "ToolTip": "This will hide the recommended section in the start menu, which shows recently added apps, recently opened files and app recommendations. This feature uses policies, which will lock down certain settings.", "Category": "Start Menu & Search", - "Action": "Hide", - "RegistryKey": "Disable_Start_Recommended.reg", + "Action": "Hide recommended section in the start menu", "ApplyText": "Disabling the start menu recommended section...", - "UndoAction": "Show", + "UndoAction": "Show recommended section in the start menu", + "UndoText": "Showing recommended section in the start menu...", + "RegistryKey": "Disable_Start_Recommended.reg", "RegistryUndoKey": "Enable_Start_Recommended.reg", "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "DisableStartAllApps", - "Label": "'All Apps' section in the start menu", "ToolTip": "This will hide the 'All Apps' section in the start menu, which shows all installed apps. WARNING: Hiding this section may make it harder to find installed apps on your system. This feature uses policies, which will lock down certain settings.", "Category": "Start Menu & Search", - "Action": "Hide", - "RegistryKey": "Disable_Start_All_Apps.reg", + "Action": "Hide 'All Apps' section in the start menu", "ApplyText": "Disabling the 'All Apps' section in the start menu...", - "UndoAction": "Show", + "UndoAction": "Show 'All Apps' section in the start menu", + "UndoText": "Showing 'All Apps' section in the start menu...", + "RegistryKey": "Disable_Start_All_Apps.reg", "RegistryUndoKey": "Enable_Start_All_Apps.reg", "MinVersion": 26200, "MaxVersion": null }, { "FeatureId": "DisableStartPhoneLink", - "Label": "Phone Link integration in the start menu", "ToolTip": "This will remove the Phone Link integration in the start menu when you have a mobile device linked to your PC.", "Category": "Start Menu & Search", - "Action": "Disable", - "RegistryKey": "Disable_Phone_Link_In_Start.reg", + "Action": "Disable Phone Link integration in the start menu", "ApplyText": "Disabling the Phone Link mobile devices integration in the start menu...", - "UndoAction": "Enable", + "UndoAction": "Enable Phone Link integration in the start menu", + "UndoText": "Enabling Phone Link integration in the start menu...", + "RegistryKey": "Disable_Phone_Link_In_Start.reg", "RegistryUndoKey": "Enable_Phone_Link_In_Start.reg", "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "DisableBing", - "Label": "Bing web search & Copilot integration in search", "ToolTip": "This will turn off Bing web search results and Copilot integration in the Windows search experience. This feature uses policies, which will lock down certain settings.", "Category": "Start Menu & Search", - "Action": "Disable", - "RegistryKey": "Disable_Bing_Cortana_In_Search.reg", + "Action": "Disable Bing web search & Copilot integration in search", "ApplyText": "Disabling Bing web search & Copilot integration in Windows search...", - "UndoAction": "Enable", + "UndoAction": "Enable Bing web search & Copilot integration in search", + "UndoText": "Enabling Bing web search & Copilot integration in search...", + "RegistryKey": "Disable_Bing_Cortana_In_Search.reg", "RegistryUndoKey": "Enable_Bing_Cortana_In_Search.reg", "MinVersion": null, "MaxVersion": null }, { - "FeatureId": "DisableStoreSearchSuggestions", - "Label": "Microsoft Store app suggestions in search", + "FeatureId": "DisableStoreSearchSuggestions", "ToolTip": "This will disable the Microsoft Store app suggestions in Windows search.", "Category": "Start Menu & Search", - "Action": "Disable", - "RegistryKey": null, + "Action": "Disable Microsoft Store app suggestions in search", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "DisableSearchHighlights", - "Label": "Search Highlights in the taskbar search box", "ToolTip": "This will turn off Search Highlights, which shows dynamically curated branded content and trending topics in the Windows search box on the taskbar.", "Category": "Start Menu & Search", - "Action": "Disable", + "Action": "Disable Search Highlights in the taskbar search box", + "ApplyText": "Disabling Search Highlights in the taskbar search box...", + "UndoAction": "Enable Search Highlights in the taskbar search box", + "UndoText": "Enabling Search Highlights in the taskbar search box...", "RegistryKey": "Disable_Search_Highlights.reg", - "ApplyText": "> Disabling Search Highlights in the Windows search box...", - "UndoAction": "Enable", "RegistryUndoKey": "Enable_Search_Highlights.reg", "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "DisableSearchHistory", - "Label": "local Windows Search history", "ToolTip": "This setting disables local search history in Windows Search. This does not affect web search history or the search history saved in Microsoft Edge.", "Category": "Start Menu & Search", - "Action": "Disable", + "Action": "Disable local Windows Search history", + "ApplyText": "Disabling local Windows Search history...", + "UndoAction": "Enable local Windows Search history", + "UndoText": "Enabling local Windows Search history...", "RegistryKey": "Disable_Search_History.reg", - "ApplyText": "Disabling search history...", - "UndoAction": "Enable", "RegistryUndoKey": "Enable_Search_History.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableSettings365Ads", - "Label": "Microsoft 365 Copilot ads in Settings Home", "ToolTip": "This will turn off the Microsoft 365 Copilot ads that appear in the Settings Home page.", "Category": "Privacy & Suggested Content", - "Action": "Hide", - "RegistryKey": "Disable_Settings_365_Ads.reg", + "Action": "Hide Microsoft 365 Copilot ads in Settings Home", "ApplyText": "Disabling Microsoft 365 Copilot ads in Settings Home...", - "UndoAction": "Show", + "UndoAction": "Show Microsoft 365 Copilot ads in Settings Home", + "UndoText": "Showing Microsoft 365 Copilot ads in Settings Home...", + "RegistryKey": "Disable_Settings_365_Ads.reg", "RegistryUndoKey": "Enable_Settings_365_Ads.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableSettingsHome", - "Label": "Settings 'Home' page", "ToolTip": "Removes the 'Home' page from the Settings app.", "Category": "Other", - "Action": "Hide", - "RegistryKey": "Disable_Settings_Home.reg", + "Action": "Hide Settings 'Home' page", "ApplyText": "Disabling the Settings Home page...", - "UndoAction": "Show", + "UndoAction": "Show Settings 'Home' page", + "UndoText": "Showing Settings 'Home' page...", + "RegistryKey": "Disable_Settings_Home.reg", "RegistryUndoKey": "Enable_Settings_Home.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableEdgeAI", - "Label": "AI features in Microsoft Edge", "ToolTip": "This will turn off AI features in Microsoft Edge, such as the AI-powered sidebar and Copilot features. This feature uses policies, which will lock down certain settings.", "Category": "AI", - "Action": "Disable", - "RegistryKey": "Disable_Edge_AI_Features.reg", + "Action": "Disable AI features in Microsoft Edge", "ApplyText": "Disabling AI features in Microsoft Edge...", - "UndoAction": "Enable", + "UndoAction": "Enable AI features in Microsoft Edge", + "UndoText": "Enabling AI features in Microsoft Edge...", + "RegistryKey": "Disable_Edge_AI_Features.reg", "RegistryUndoKey": "Enable_Edge_AI_Features.reg", "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "DisablePaintAI", - "Label": "AI features in Paint", "ToolTip": "This will turn off AI features in Paint, such as the AI-powered image generation and editing tools. This feature uses policies, which will lock down certain settings.", "Category": "AI", - "Action": "Disable", - "RegistryKey": "Disable_Paint_AI_Features.reg", + "Action": "Disable AI features in Paint", "ApplyText": "Disabling AI features in Paint...", - "UndoAction": "Enable", + "UndoAction": "Enable AI features in Paint", + "UndoText": "Enabling AI features in Paint...", + "RegistryKey": "Disable_Paint_AI_Features.reg", "RegistryUndoKey": "Enable_Paint_AI_Features.reg", "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "DisableNotepadAI", - "Label": "AI features in Notepad", "ToolTip": "This will turn off AI features in Notepad, such as the AI-powered writing suggestions. This feature uses policies, which will lock down certain settings.", "Category": "AI", - "Action": "Disable", - "RegistryKey": "Disable_Notepad_AI_Features.reg", + "Action": "Disable AI features in Notepad", "ApplyText": "Disabling AI features in Notepad...", - "UndoAction": "Enable", + "UndoAction": "Enable AI features in Notepad", + "UndoText": "Enabling AI features in Notepad...", + "RegistryKey": "Disable_Notepad_AI_Features.reg", "RegistryUndoKey": "Enable_Notepad_AI_Features.reg", "MinVersion": 22621, "MaxVersion": null }, { "FeatureId": "EnableDarkMode", - "Label": "theme for system and apps", "ToolTip": "This will set the app and system theme to dark mode.", "Category": "Appearance", - "Action": "Enable dark", + "Action": "Enable dark theme for system and apps", + "ApplyText": "Enabling dark theme for system and apps...", + "UndoAction": "Enable light theme for system and apps", + "UndoText": "Enabling light theme for system and apps...", "RegistryKey": "Enable_Dark_Mode.reg", - "ApplyText": "Enabling dark mode for system and apps...", - "UndoAction": "Disable light", "RegistryUndoKey": "Enable_Light_Mode.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableDragTray", - "Label": "'Drag Tray' for sharing & moving files", "ToolTip": "The Drag Tray is a new feature for sharing & moving files in Windows 11, it appears at the top of the screen when dragging files.", "Category": "System", - "Action": "Disable", + "Action": "Disable 'Drag Tray' for sharing & moving files", + "ApplyText": "Disabling 'Drag Tray' for sharing & moving files...", + "UndoAction": "Enable 'Drag Tray' for sharing & moving files", + "UndoText": "Enabling 'Drag Tray' for sharing & moving files...", "RegistryKey": "Disable_Share_Drag_Tray.reg", - "ApplyText": "Disabling Drag Tray...", - "UndoAction": "Enable", "RegistryUndoKey": "Enable_Share_Drag_Tray.reg", "MinVersion": 26200, "MaxVersion": null }, { "FeatureId": "RevertContextMenu", - "Label": "context menu style", "ToolTip": "This will restore the classic Windows 10 style context menu, which is normally hidden behind the 'Show more options' entry in the new Windows 11 context menu.", "Category": "System", - "Action": "Use classic Windows 10", + "Action": "Use classic Windows 10 context menu style", + "ApplyText": "Switching to classic Windows 10 context menu style...", + "UndoAction": "Use modern Windows 11 context menu style", + "UndoText": "Switching to modern Windows 11 context menu style...", "RegistryKey": "Disable_Show_More_Options_Context_Menu.reg", - "ApplyText": "Restoring the classic Windows 10 style context menu...", - "UndoAction": "Use modern Windows 11", "RegistryUndoKey": "Enable_W11_Style_Context_Menu.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "DisableMouseAcceleration", - "Label": "Enhance Pointer Precision (mouse acceleration)", "ToolTip": "This will disable mouse acceleration which is enabled by default in Windows. This makes mouse movement more consistent and predictable.", "Category": "System", - "Action": "Disable", - "RegistryKey": "Disable_Enhance_Pointer_Precision.reg", + "Action": "Disable Enhance Pointer Precision (mouse acceleration)", "ApplyText": "Turning off Enhanced Pointer Precision...", - "UndoAction": "Enable", + "UndoAction": "Enable Enhance Pointer Precision (mouse acceleration)", + "UndoText": "Turning on Enhanced Pointer Precision...", + "RegistryKey": "Disable_Enhance_Pointer_Precision.reg", "RegistryUndoKey": "Enable_Enhance_Pointer_Precision.reg", "RequiresReboot": true, "MinVersion": null, @@ -773,13 +773,13 @@ }, { "FeatureId": "DisableStickyKeys", - "Label": "Sticky Keys keyboard shortcut (5x shift)", "ToolTip": "This will prevent the Sticky Keys dialog from appearing when you press the Shift key 5 times in a row.", "Category": "System", - "Action": "Disable", - "RegistryKey": "Disable_Sticky_Keys_Shortcut.reg", + "Action": "Disable Sticky Keys keyboard shortcut (5x shift)", "ApplyText": "Disabling the Sticky Keys keyboard shortcut...", - "UndoAction": "Enable", + "UndoAction": "Enable Sticky Keys keyboard shortcut (5x shift)", + "UndoText": "Enabling Sticky Keys keyboard shortcut...", + "RegistryKey": "Disable_Sticky_Keys_Shortcut.reg", "RegistryUndoKey": "Enable_Sticky_Keys_Shortcut.reg", "RequiresReboot": true, "MinVersion": 26100, @@ -787,534 +787,534 @@ }, { "FeatureId": "DisableWindowSnapping", - "Label": "window snapping", "ToolTip": "This will turn off the ability to snap windows to the sides or corners of the screen.", "Category": "Multi-tasking", "Priority": 1, - "Action": "Disable", - "RegistryKey": "Disable_Window_Snapping.reg", + "Action": "Disable window snapping", "ApplyText": "Disabling window snapping...", - "UndoAction": "Enable", + "UndoAction": "Enable window snapping", + "UndoText": "Enabling window snapping...", + "RegistryKey": "Disable_Window_Snapping.reg", "RegistryUndoKey": "Enable_Window_Snapping.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableSnapAssist", - "Label": "showing app suggestions when snapping windows", "ToolTip": "This will turn off app suggestions when you snap windows to the sides or corners of the screen.", "Category": "Multi-tasking", "Priority": 2, - "Action": "Disable", - "RegistryKey": "Disable_Snap_Assist.reg", + "Action": "Disable showing app suggestions when snapping windows", "ApplyText": "Disabling the Snap Assist suggestions...", - "UndoAction": "Enable", + "UndoAction": "Enable showing app suggestions when snapping windows", + "UndoText": "Enabling showing app suggestions when snapping windows...", + "RegistryKey": "Disable_Snap_Assist.reg", "RegistryUndoKey": "Enable_Snap_Assist.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "DisableSnapLayouts", - "Label": "snap layout flyout at top of screen and on maximize button", "ToolTip": "This will turn off the snap layout flyout that appears when you hover over the maximize button or drag windows to the top of the screen.", "Category": "Multi-tasking", "Priority": 3, - "Action": "Hide", - "RegistryKey": "Disable_Snap_Layouts.reg", + "Action": "Hide snap layout flyout at top of screen and on maximize button", "ApplyText": "Hiding snap layouts when dragging windows to top of the screen and on maximize button...", - "UndoAction": "Show", + "UndoAction": "Show snap layout flyout at top of screen and on maximize button", + "UndoText": "Showing snap layout flyout at top of screen and on maximize button...", + "RegistryKey": "Disable_Snap_Layouts.reg", "RegistryUndoKey": "Enable_Snap_Layouts.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "HideTabsInAltTab", - "Label": "tabs from apps when snapping or pressing Alt+Tab", "Category": "Multi-tasking", - "Action": "Hide", + "Action": "Hide tabs from apps when snapping or pressing Alt+Tab", + "ApplyText": "Hiding tabs from apps when snapping or pressing Alt+Tab...", + "UndoAction": "Show 5 tabs from apps when snapping or pressing Alt+Tab", + "UndoText": "Showing 5 tabs from apps when snapping or pressing Alt+Tab...", "RegistryKey": "Hide_Tabs_In_Alt_Tab.reg", - "ApplyText": "Disable showing tabs from apps when snapping or pressing Alt+Tab...", - "UndoAction": null, - "RegistryUndoKey": null, + "RegistryUndoKey": "Show_5_Tabs_In_Alt_Tab.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "Show3TabsInAltTab", - "Label": "tabs from apps when snapping or pressing Alt+Tab", "Category": "Multi-tasking", - "Action": "Show 3", + "Action": "Show 3 tabs from apps when snapping or pressing Alt+Tab", + "ApplyText": "Showing 3 tabs from apps when snapping or pressing Alt+Tab...", + "UndoAction": "Show 5 tabs from apps when snapping or pressing Alt+Tab", + "UndoText": "Showing 5 tabs from apps when snapping or pressing Alt+Tab...", "RegistryKey": "Show_3_Tabs_In_Alt_Tab.reg", - "ApplyText": "Enable showing 3 tabs from apps when snapping or pressing Alt+Tab...", - "UndoAction": null, - "RegistryUndoKey": null, + "RegistryUndoKey": "Show_5_Tabs_In_Alt_Tab.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "Show5TabsInAltTab", - "Label": "tabs from apps when snapping or pressing Alt+Tab", "Category": "Multi-tasking", - "Action": "Show 5", - "RegistryKey": "Show_5_Tabs_In_Alt_Tab.reg", - "ApplyText": "Enable showing 5 tabs from apps when snapping or pressing Alt+Tab...", + "Action": "Show 5 tabs from apps when snapping or pressing Alt+Tab", + "ApplyText": "Showing 5 tabs from apps when snapping or pressing Alt+Tab...", "UndoAction": null, + "UndoText": null, + "RegistryKey": "Show_5_Tabs_In_Alt_Tab.reg", "RegistryUndoKey": null, "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "Show20TabsInAltTab", - "Label": "tabs from apps when snapping or pressing Alt+Tab", "Category": "Multi-tasking", - "Action": "Show 20", + "Action": "Show 20 tabs from apps when snapping or pressing Alt+Tab", + "ApplyText": "Showing 20 tabs from apps when snapping or pressing Alt+Tab...", + "UndoAction": "Show 5 tabs from apps when snapping or pressing Alt+Tab", + "UndoText": "Showing 5 tabs from apps when snapping or pressing Alt+Tab...", "RegistryKey": "Show_20_Tabs_In_Alt_Tab.reg", - "ApplyText": "Enable showing 20 tabs from apps when snapping or pressing Alt+Tab...", - "UndoAction": null, - "RegistryUndoKey": null, + "RegistryUndoKey": "Show_5_Tabs_In_Alt_Tab.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "TaskbarAlignLeft", - "Label": "taskbar alignment", "ToolTip": "By default, Windows 11 has the taskbar buttons centered. Enabling this setting will move the taskbar buttons to the left, similar to previous versions of Windows.", "Category": "Taskbar", "Priority": 1, - "Action": "Left", + "Action": "Align taskbar icons to the left", + "ApplyText": "Aligning taskbar icons to the left...", + "UndoAction": "Align taskbar icons to the center", + "UndoText": "Aligning taskbar icons to the center...", "RegistryKey": "Align_Taskbar_Left.reg", - "ApplyText": "Aligning taskbar buttons to the left...", - "UndoAction": "Center", "RegistryUndoKey": "Align_Taskbar_Center.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "HideSearchTb", - "Label": "on the taskbar", "Category": "Taskbar", - "Action": "Hide Search", + "Action": "Hide Search on the taskbar", + "ApplyText": "Hiding Search on the taskbar...", + "UndoAction": "Show Search Box on the taskbar", + "UndoText": "Showing Search Box on the taskbar...", "RegistryKey": "Hide_Search_Taskbar.reg", - "ApplyText": "Hiding the search icon from the taskbar...", - "UndoAction": "Show Search Box", "RegistryUndoKey": "Show_Search_Box.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "ShowSearchIconTb", - "Label": "on the taskbar", "Category": "Taskbar", - "Action": "Show Search Icon", + "Action": "Show Search Icon on the taskbar", + "ApplyText": "Showing Search Icon on the taskbar...", + "UndoAction": "Show Search Box on the taskbar", + "UndoText": "Showing Search Box on the taskbar...", "RegistryKey": "Show_Search_Icon.reg", - "ApplyText": "Changing taskbar search to icon only...", - "UndoAction": "Show Search Box", "RegistryUndoKey": "Show_Search_Box.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "ShowSearchLabelTb", - "Label": "on the taskbar", "Category": "Taskbar", - "Action": "Show Search Label", + "Action": "Show Search Icon + Label on the taskbar", + "ApplyText": "Showing Search Icon + Label on the taskbar...", + "UndoAction": "Show Search Box on the taskbar", + "UndoText": "Showing Search Box on the taskbar...", "RegistryKey": "Show_Search_Icon_And_Label.reg", - "ApplyText": "Changing taskbar search to icon with label...", - "UndoAction": "Show Search Box", "RegistryUndoKey": "Show_Search_Box.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "ShowSearchBoxTb", - "Label": "on the taskbar", "Category": "Taskbar", - "Action": "Show Search Box", - "RegistryKey": "Show_Search_Box.reg", - "ApplyText": "Changing taskbar search to search box...", + "Action": "Show Search Box on the taskbar", + "ApplyText": "Showing Search Box on the taskbar...", "UndoAction": null, + "UndoText": null, + "RegistryKey": "Show_Search_Box.reg", "RegistryUndoKey": null, "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "HideTaskview", - "Label": "'Task view' button on the taskbar", "ToolTip": "This will disable the 'Task view' button on the taskbar, which allows you to see all your open windows and virtual desktops.", "Category": "Taskbar", "Priority": 3, - "Action": "Hide", + "Action": "Hide 'Task view' button on the taskbar", + "ApplyText": "Hiding 'Task view' button on the taskbar...", + "UndoAction": "Show 'Task view' button on the taskbar", + "UndoText": "Showing 'Task view' button on the taskbar...", "RegistryKey": "Hide_Taskview_Taskbar.reg", - "ApplyText": "Hiding the taskview button from the taskbar...", - "UndoAction": "Show", "RegistryUndoKey": "Show_Taskview_Taskbar.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "DisableWidgets", - "Label": "widgets on the taskbar & lock screen", "ToolTip": "This will disable the widgets features in Windows, including the widgets button on the taskbar and the widgets that can appear on the lock screen. This feature uses policies, which will lock down certain settings.", "Category": "Taskbar", "Priority": 4, - "Action": "Disable", - "RegistryKey": "Disable_Widgets_Service.reg", + "Action": "Disable widgets on the taskbar & lock screen", "ApplyText": "Disabling widgets on the taskbar & lock screen...", - "UndoAction": "Enable", + "UndoAction": "Enable widgets on the taskbar & lock screen", + "UndoText": "Enabling widgets on the taskbar & lock screen...", + "RegistryKey": "Disable_Widgets_Service.reg", "RegistryUndoKey": "Enable_Widgets_Service.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "HideChat", - "Label": "Chat (meet now) icon on the taskbar", "ToolTip": "This will disable the Chat (meet now) icon on the taskbar.", "Category": "Taskbar", "Priority": 5, - "Action": "Hide", - "RegistryKey": "Disable_Chat_Taskbar.reg", + "Action": "Hide Chat (meet now) icon on the taskbar", "ApplyText": "Hiding the chat icon from the taskbar...", - "UndoAction": "Show", + "UndoAction": "Show Chat (meet now) icon on the taskbar", + "UndoText": "Showing Chat (meet now) icon on the taskbar...", + "RegistryKey": "Disable_Chat_Taskbar.reg", "RegistryUndoKey": "Enable_Chat_Taskbar.reg", "MinVersion": null, "MaxVersion": 22621 }, { "FeatureId": "DisableStorageSense", - "Label": "Storage Sense automatic disk cleanup", "ToolTip": "This will disable Storage Sense, which automatically frees up disk space by deleting temporary files, emptying the recycle bin and cleaning up files in the Downloads folder.", "Category": "System", - "Action": "Disable", - "RegistryKey": "Disable_Storage_Sense.reg", + "Action": "Disable Storage Sense automatic disk cleanup", "ApplyText": "Disabling Storage Sense automatic disk cleanup...", - "UndoAction": "Enable", + "UndoAction": "Enable Storage Sense automatic disk cleanup", + "UndoText": "Enabling Storage Sense automatic disk cleanup...", + "RegistryKey": "Disable_Storage_Sense.reg", "RegistryUndoKey": "Enable_Storage_Sense.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "DisableFastStartup", - "Label": "fast start-up", "ToolTip": "Fast Start-up helps your PC start faster after shutdown by saving a system image to disk. Disabling Fast Start-up can help with certain issues, but may result in slightly longer boot times.", "Category": "System", - "Action": "Disable", - "RegistryKey": "Disable_Fast_Startup.reg", + "Action": "Disable fast start-up", "ApplyText": "Disabling Fast Start-up...", - "UndoAction": "Enable", + "UndoAction": "Enable fast start-up", + "UndoText": "Enabling fast start-up...", + "RegistryKey": "Disable_Fast_Startup.reg", "RegistryUndoKey": "Enable_Fast_Startup.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableBitlockerAutoEncryption", - "Label": "BitLocker automatic device encryption", "ToolTip": "For devices that support it, Windows 11 automatically enables BitLocker device encryption. Disabling this will turn off automatic encryption of the device, but you can still manually enable BitLocker encryption if desired.", "Category": "System", - "Action": "Disable", - "RegistryKey": "Disable_Bitlocker_Auto_Encryption.reg", + "Action": "Disable BitLocker automatic device encryption", "ApplyText": "Disabling BitLocker automatic device encryption...", - "UndoAction": "Enable", + "UndoAction": "Enable BitLocker automatic device encryption", + "UndoText": "Enabling BitLocker automatic device encryption...", + "RegistryKey": "Disable_Bitlocker_Auto_Encryption.reg", "RegistryUndoKey": "Enable_Bitlocker_Auto_Encryption.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "DisableModernStandbyNetworking", - "Label": "Modern Standby network connectivity", "ToolTip": "By default, devices that support Modern Standby maintain network connectivity while in sleep mode. Disabling network connectivity during Modern Standby can help save battery life.", "Category": "System", - "Action": "Disable", - "RegistryKey": "Disable_Modern_Standby_Networking.reg", + "Action": "Disable Modern Standby network connectivity", "ApplyText": "Disabling network connectivity during Modern Standby...", - "UndoAction": "Enable", + "UndoAction": "Enable Modern Standby network connectivity", + "UndoText": "Enabling Modern Standby network connectivity...", + "RegistryKey": "Disable_Modern_Standby_Networking.reg", "RegistryUndoKey": "Enable_Modern_Standby_Networking.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "EnableEndTask", - "Label": "'End Task' option in taskbar context menu", "ToolTip": "When enabled, adds an 'End Task' option to the right-click context menu for apps in the taskbar, allowing you to quickly force close apps.", "Category": "Taskbar", "Priority": 6, - "Action": "Show", + "Action": "Show 'End Task' option in taskbar context menu", + "ApplyText": "Showing 'End Task' option in taskbar context menu...", + "UndoAction": "Hide 'End Task' option in taskbar context menu", + "UndoText": "Hiding 'End Task' option in taskbar context menu...", "RegistryKey": "Enable_End_Task.reg", - "ApplyText": "Enabling the 'End Task' option in the taskbar right click menu...", - "UndoAction": "Hide", "RegistryUndoKey": "Disable_End_Task.reg", "MinVersion": 22631, "MaxVersion": null }, { "FeatureId": "EnableLastActiveClick", - "Label": "'Last Active Click' behavior for taskbar apps", "ToolTip": "When enabled, clicking on an app in the taskbar will switch to the last active window of that app, instead of only showing the thumbnail preview.", "Category": "Taskbar", "Priority": 7, - "Action": "Enable", + "Action": "Enable 'Last Active Click' behavior for taskbar apps", + "ApplyText": "Enabling 'Last Active Click' behavior for taskbar apps...", + "UndoAction": "Disable 'Last Active Click' behavior for taskbar apps", + "UndoText": "Disabling 'Last Active Click' behavior for taskbar apps...", "RegistryKey": "Enable_Last_Active_Click.reg", - "ApplyText": "Enabling the 'Last Active Click' behavior in the taskbar app area...", - "UndoAction": "Disable", "RegistryUndoKey": "Disable_Last_Active_Click.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "CombineTaskbarAlways", - "Label": "Always combine taskbar buttons and hide labels for the main display", "Category": "Taskbar", - "Action": "Combine Taskbar Always", - "RegistryKey": "Combine_Taskbar_Always.reg", + "Action": "Always combine taskbar buttons and hide labels for the main display", "ApplyText": "Setting the taskbar on the main display to always combine buttons and hide labels...", "UndoAction": null, + "UndoText": null, + "RegistryKey": "Combine_Taskbar_Always.reg", "RegistryUndoKey": null, "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "CombineMMTaskbarAlways", - "Label": "Always combine taskbar buttons and hide labels for secondary displays", "Category": "Taskbar", - "Action": "Combine Multi-Monitor Taskbar Always", - "RegistryKey": "Combine_MMTaskbar_Always.reg", + "Action": "Always combine taskbar buttons and hide labels for secondary displays", "ApplyText": "Setting the taskbar on secondary displays to always combine buttons and hide labels...", "UndoAction": null, + "UndoText": null, + "RegistryKey": "Combine_MMTaskbar_Always.reg", "RegistryUndoKey": null, "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "CombineTaskbarWhenFull", - "Label": "Combine taskbar buttons and hide labels when taskbar is full for the main display", "Category": "Taskbar", - "Action": "Combine Taskbar When Full", - "RegistryKey": "Combine_Taskbar_When_Full.reg", + "Action": "Combine taskbar buttons and hide labels when taskbar is full for the main display", "ApplyText": "Setting the taskbar on the main display to only combine buttons and hide labels when the taskbar is full...", - "UndoAction": "Combine Taskbar Always", + "UndoAction": "Always combine taskbar buttons and hide labels for the main display", + "UndoText": "Setting to always combine taskbar buttons and hide labels for the main display...", + "RegistryKey": "Combine_Taskbar_When_Full.reg", "RegistryUndoKey": "Combine_Taskbar_Always.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "CombineMMTaskbarWhenFull", - "Label": "Combine taskbar buttons and hide labels when taskbar is full for secondary displays", "Category": "Taskbar", - "Action": "Combine Multi-Monitor Taskbar When Full", - "RegistryKey": "Combine_MMTaskbar_When_Full.reg", + "Action": "Combine taskbar buttons and hide labels when taskbar is full for secondary displays", "ApplyText": "Setting the taskbar on secondary displays to only combine buttons and hide labels when the taskbar is full...", - "UndoAction": "Combine Multi-Monitor Taskbar Always", + "UndoAction": "Always combine taskbar buttons and hide labels for secondary displays", + "UndoText": "Setting to always combine taskbar buttons and hide labels for secondary displays...", + "RegistryKey": "Combine_MMTaskbar_When_Full.reg", "RegistryUndoKey": "Combine_MMTaskbar_Always.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "CombineTaskbarNever", - "Label": "Never combine taskbar buttons and show labels for the main display", "Category": "Taskbar", - "Action": "Never Combine Taskbar", - "RegistryKey": "Combine_Taskbar_Never.reg", + "Action": "Never combine taskbar buttons and show labels for the main display", "ApplyText": "Setting the taskbar on the main display to never combine buttons or hide labels...", - "UndoAction": "Combine Taskbar Always", + "UndoAction": "Always combine taskbar buttons and hide labels for the main display", + "UndoText": "Setting to always combine taskbar buttons and hide labels for the main display...", + "RegistryKey": "Combine_Taskbar_Never.reg", "RegistryUndoKey": "Combine_Taskbar_Always.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "CombineMMTaskbarNever", - "Label": "Never combine taskbar buttons and show labels for secondary displays", "Category": "Taskbar", - "Action": "Never Combine Multi-Monitor Taskbar", - "RegistryKey": "Combine_MMTaskbar_Never.reg", + "Action": "Never combine taskbar buttons and show labels for secondary displays", "ApplyText": "Setting the taskbar on secondary displays to never combine buttons or hide labels...", - "UndoAction": "Combine Multi-Monitor Taskbar Always", + "UndoAction": "Always combine taskbar buttons and hide labels for secondary displays", + "UndoText": "Setting to always combine taskbar buttons and hide labels for secondary displays...", + "RegistryKey": "Combine_MMTaskbar_Never.reg", "RegistryUndoKey": "Combine_MMTaskbar_Always.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "MMTaskbarModeAll", - "Label": "Show app icons on all taskbars", "Category": "Taskbar", - "Action": "Show All Taskbar Icons", - "RegistryKey": "MMTaskbarMode_All.reg", + "Action": "Show app icons on all taskbars", "ApplyText": "Setting the taskbar to show app icons on all taskbars...", "UndoAction": null, + "UndoText": null, + "RegistryKey": "MMTaskbarMode_All.reg", "RegistryUndoKey": null, "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "MMTaskbarModeMainActive", - "Label": "Show app icons on main taskbar and on taskbar where the windows is open", "Category": "Taskbar", - "Action": "Show Taskbar Icons Main + Active", + "Action": "Show app icons on main taskbar and on taskbar where the window is open", + "ApplyText": "Setting the taskbar to show app icons on the main taskbar and on the taskbar where the window is open...", + "UndoAction": "Show app icons on all taskbars", + "UndoText": "Showing app icons on all taskbars...", "RegistryKey": "MMTaskbarMode_Main_Active.reg", - "ApplyText": "Setting the taskbar to show app icons on main taskbar and on taskbar where the windows is open...", - "UndoAction": "Show All Taskbar Icons", "RegistryUndoKey": "MMTaskbarMode_All.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "MMTaskbarModeActive", - "Label": "Show app icons only on taskbar where the window is open", "Category": "Taskbar", - "Action": "Show Taskbar Icons Active Only", - "RegistryKey": "MMTaskbarMode_Active.reg", + "Action": "Show app icons only on taskbar where the window is open", "ApplyText": "Setting the taskbar to only show app icons on the taskbar where the window is open...", - "UndoAction": "Show All Taskbar Icons", + "UndoAction": "Show app icons on all taskbars", + "UndoText": "Showing app icons on all taskbars...", + "RegistryKey": "MMTaskbarMode_Active.reg", "RegistryUndoKey": "MMTaskbarMode_All.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "ExplorerToHome", - "Label": "Change the default location that File Explorer opens to 'Home'", "Category": "File Explorer", - "Action": "Explorer to Home", - "RegistryKey": "Launch_File_Explorer_To_Home.reg", - "ApplyText": "Changing the default location that File Explorer opens to, to 'Home'...", + "Action": "Open File Explorer to Home", + "ApplyText": "Setting File Explorer to open to 'Home' by default...", "UndoAction": null, + "UndoText": null, + "RegistryKey": "Launch_File_Explorer_To_Home.reg", "RegistryUndoKey": null, "MinVersion": null, "MaxVersion": null }, { "FeatureId": "ExplorerToThisPC", - "Label": "Change the default location that File Explorer opens to 'This PC'", "Category": "File Explorer", - "Action": "Explorer to This PC", + "Action": "Open File Explorer to This PC", + "ApplyText": "Setting File Explorer to open to 'This PC' by default...", + "UndoAction": "Open File Explorer to Home", + "UndoText": "Setting File Explorer to open to 'Home' by default...", "RegistryKey": "Launch_File_Explorer_To_This_PC.reg", - "ApplyText": "Changing the default location that File Explorer opens to, to 'This PC'...", - "UndoAction": "Explorer to Home", "RegistryUndoKey": "Launch_File_Explorer_To_Home.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "ExplorerToDownloads", - "Label": "Change the default location that File Explorer opens to 'Downloads'", "Category": "File Explorer", - "Action": "Explorer to Downloads", + "Action": "Open File Explorer to Downloads", + "ApplyText": "Setting File Explorer to open to 'Downloads' by default...", + "UndoAction": "Open File Explorer to Home", + "UndoText": "Setting File Explorer to open to 'Home' by default...", "RegistryKey": "Launch_File_Explorer_To_Downloads.reg", - "ApplyText": "Changing the default location that File Explorer opens to, to 'Downloads'...", - "UndoAction": "Explorer to Home", "RegistryUndoKey": "Launch_File_Explorer_To_Home.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "ExplorerToOneDrive", - "Label": "Change the default location that File Explorer opens to 'OneDrive'", "Category": "File Explorer", - "Action": "Explorer to OneDrive", + "Action": "Open File Explorer to OneDrive", + "ApplyText": "Setting File Explorer to open to 'OneDrive' by default...", + "UndoAction": "Open File Explorer to Home", + "UndoText": "Setting File Explorer to open to 'Home' by default...", "RegistryKey": "Launch_File_Explorer_To_OneDrive.reg", - "ApplyText": "Changing the default location that File Explorer opens to, to 'OneDrive'...", - "UndoAction": "Explorer to Home", "RegistryUndoKey": "Launch_File_Explorer_To_Home.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "ShowKnownFileExt", - "Label": "file extensions for known file types", "ToolTip": "This will show file extensions for known file types. By default, Windows hides file extensions for known file types which can lead to confusion and security risks.", "Category": "File Explorer", - "Action": "Show", + "Action": "Show file extensions for known file types", + "ApplyText": "Showing file extensions for known file types...", + "UndoAction": "Hide file extensions for known file types", + "UndoText": "Hiding file extensions for known file types...", "RegistryKey": "Show_Extensions_For_Known_File_Types.reg", - "ApplyText": "Enabling file extensions for known file types...", - "UndoAction": "Hide", "RegistryUndoKey": "Hide_Extensions_For_Known_File_Types.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "ShowHiddenFolders", - "Label": "hidden files, folders and drives", "ToolTip": "By default, Windows hides certain files, folders and drives to prevent accidental modification or deletion. Turn this on to show all files in File Explorer.", "Category": "File Explorer", - "Action": "Show", + "Action": "Show hidden files, folders and drives", + "ApplyText": "Showing hidden files, folders and drives...", + "UndoAction": "Hide hidden files, folders and drives", + "UndoText": "Hiding hidden files, folders and drives...", "RegistryKey": "Show_Hidden_Folders.reg", - "ApplyText": "Unhiding hidden files, folders and drives...", - "UndoAction": "Hide", "RegistryUndoKey": "Hide_Hidden_Folders.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "HideHome", - "Label": "'Home' from navigation pane", "ToolTip": "Hides the 'Home' section from the File Explorer navigation pane.", "Category": "File Explorer", - "Action": "Hide", + "Action": "Hide 'Home' from navigation pane", + "ApplyText": "Hiding 'Home' from the File Explorer navigation pane...", + "UndoAction": "Show 'Home' from navigation pane", + "UndoText": "Showing 'Home' from the File Explorer navigation pane...", "RegistryKey": "Hide_Home_from_Explorer.reg", - "ApplyText": "Hiding the home section from the File Explorer navigation pane...", - "UndoAction": "Show", "RegistryUndoKey": "Show_Home_in_Explorer.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "HideGallery", - "Label": "'Gallery' from navigation pane", "ToolTip": "Hides the 'Gallery' section from the File Explorer navigation pane.", "Category": "File Explorer", - "Action": "Hide", + "Action": "Hide 'Gallery' from navigation pane", + "ApplyText": "Hiding 'Gallery' from the File Explorer navigation pane...", + "UndoAction": "Show 'Gallery' from navigation pane", + "UndoText": "Showing 'Gallery' from the File Explorer navigation pane...", "RegistryKey": "Hide_Gallery_from_Explorer.reg", - "ApplyText": "Hiding the gallery section from the File Explorer navigation pane...", - "UndoAction": "Show", "RegistryUndoKey": "Show_Gallery_in_Explorer.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "HideDupliDrive", - "Label": "duplicate removable drive entries", "ToolTip": "By default, Windows shows removable drives both under 'This PC' and in the navigation pane with its own entry. Enable this setting to only show removable drives under 'This PC'.", "Category": "File Explorer", - "Action": "Hide", - "RegistryKey": "Hide_duplicate_removable_drives_from_navigation_pane_of_File_Explorer.reg", + "Action": "Hide duplicate removable drive entries", "ApplyText": "Hiding duplicate removable drive entries from the File Explorer navigation pane...", - "UndoAction": "Show", + "UndoAction": "Show duplicate removable drive entries", + "UndoText": "Showing duplicate removable drive entries...", + "RegistryKey": "Hide_duplicate_removable_drives_from_navigation_pane_of_File_Explorer.reg", "RegistryUndoKey": "Show_duplicate_removable_drives_in_navigation_pane_of_File_Explorer.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "AddFoldersToThisPC", - "Label": "common folders back to 'This PC' page", "ToolTip": "This setting will add common folders like Desktop, Documents, Downloads, Music, Pictures and Videos back to the 'This PC' page in File Explorer.", "Category": "File Explorer", - "Action": "Add", - "RegistryKey": "Add_All_Folders_Under_This_PC.reg", + "Action": "Add common folders back to 'This PC' page", "ApplyText": "Adding all common folders (Desktop, Downloads, etc.) back to 'This PC' in File Explorer...", - "UndoAction": "Remove", + "UndoAction": "Remove common folders from 'This PC' page", + "UndoText": "Removing common folders from 'This PC' page...", + "RegistryKey": "Add_All_Folders_Under_This_PC.reg", "RegistryUndoKey": "Remove_All_Folders_Under_This_PC.reg", "MinVersion": 22000, "MaxVersion": null }, { "FeatureId": "DisableTransparency", - "Label": "transparency effects", "ToolTip": "This will disable transparency effects on Windows and interfaces. Which can help improve performance on older hardware.", "Category": "Appearance", - "Action": "Disable", - "RegistryKey": "Disable_Transparency.reg", + "Action": "Disable transparency effects", "ApplyText": "Disabling transparency effects...", - "UndoAction": "Enable", + "UndoAction": "Enable transparency effects", + "UndoText": "Enabling transparency effects...", + "RegistryKey": "Disable_Transparency.reg", "RegistryUndoKey": "Enable_Transparency.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableAnimations", - "Label": "animations and visual effects", "ToolTip": "This will disable animations and some visual effects in Windows, which can make the interface feel snappier, especially on older hardware.", "Category": "Appearance", - "Action": "Disable", - "RegistryKey": "Disable_Animations.reg", + "Action": "Disable animations and visual effects", "ApplyText": "Disabling animations and visual effects...", - "UndoAction": "Enable", + "UndoAction": "Enable animations and visual effects", + "UndoText": "Enabling animations and visual effects...", + "RegistryKey": "Disable_Animations.reg", "RegistryUndoKey": "Enable_Animations.reg", "RequiresReboot": true, "MinVersion": null, @@ -1322,155 +1322,155 @@ }, { "FeatureId": "DisableUpdateASAP", - "Label": "updates as soon as they're available", "ToolTip": "This will prevent your PC from being among the first to receive new non-security updates. Your PC will still receive these updates eventually.", "Category": "Windows Update", - "Action": "Prevent getting", - "RegistryKey": "Disable_Update_ASAP.reg", + "Action": "Prevent getting updates as soon as they're available", "ApplyText": "Preventing Windows from getting updates as soon as they are available...", - "UndoAction": "Get", + "UndoAction": "Allow getting updates as soon as they are available", + "UndoText": "Allowing updates as soon as they are available...", + "RegistryKey": "Disable_Update_ASAP.reg", "RegistryUndoKey": "Enable_Update_ASAP.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "PreventUpdateAutoReboot", - "Label": "automatic restarts after updates while signed in", "ToolTip": "This will prevent your PC from automatically restarting after updates while any user is signed in.", "Category": "Windows Update", - "Action": "Prevent", - "RegistryKey": "Prevent_Auto_Reboot.reg", + "Action": "Prevent automatic restarts after updates while signed in", "ApplyText": "Preventing automatic restarts after updates while signed in...", - "UndoAction": "Allow", + "UndoAction": "Allow automatic restarts after updates while signed in", + "UndoText": "Allowing automatic restarts after updates while signed in...", + "RegistryKey": "Prevent_Auto_Reboot.reg", "RegistryUndoKey": "Allow_Auto_Reboot.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "DisableDeliveryOptimization", - "Label": "sharing downloaded updates with other PCs", "ToolTip": "This will prevent your PC from sharing downloaded updates with other PCs on the local network or on the internet. This also prevents your PC from downloading updates from other PCs.", "Category": "Windows Update", - "Action": "Disable", - "RegistryKey": "Disable_Delivery_Optimization.reg", + "Action": "Disable sharing downloaded updates with other PCs", "ApplyText": "Disabling sharing of downloaded updates with other PCs...", - "UndoAction": "Enable", + "UndoAction": "Enable sharing downloaded updates with other PCs", + "UndoText": "Enabling sharing of downloaded updates with other PCs...", + "RegistryKey": "Disable_Delivery_Optimization.reg", "RegistryUndoKey": "Enable_Delivery_Optimization.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "ForceRemoveEdge", - "Label": "Forcefully uninstall Microsoft Edge. NOT RECOMMENDED!", "Category": null, - "Action": "Force Remove Edge", - "RegistryKey": null, + "Action": "Forcefully uninstall Microsoft Edge (not recommended)", "ApplyText": null, "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "MinVersion": null, "MaxVersion": null }, { "FeatureId": "HideIncludeInLibrary", - "Label": "'Include in library' option in the context menu", "ToolTip": "Hides the 'Include in library' option from the File Explorer context menu.", "Category": "File Explorer", - "Action": "Hide", - "RegistryKey": "Disable_Include_in_library_from_context_menu.reg", + "Action": "Hide 'Include in library' option in the context menu", "ApplyText": "Hiding 'Include in library' in the context menu...", - "UndoAction": "Show", + "UndoAction": "Show 'Include in library' option in the context menu", + "UndoText": "Showing 'Include in library' option in the context menu...", + "RegistryKey": "Disable_Include_in_library_from_context_menu.reg", "RegistryUndoKey": "Enable_Include_in_library_in_context_menu.reg", "MinVersion": null, "MaxVersion": 21999 }, { "FeatureId": "HideGiveAccessTo", - "Label": "'Give access to' option in the context menu", "ToolTip": "Hides the 'Give access to' option from the File Explorer context menu.", "Category": "File Explorer", - "Action": "Hide", - "RegistryKey": "Disable_Give_access_to_context_menu.reg", + "Action": "Hide 'Give access to' option in the context menu", "ApplyText": "Hiding 'Give access to' in the context menu...", - "UndoAction": "Show", + "UndoAction": "Show 'Give access to' option in the context menu", + "UndoText": "Showing 'Give access to' option in the context menu...", + "RegistryKey": "Disable_Give_access_to_context_menu.reg", "RegistryUndoKey": "Enable_Give_access_to_context_menu.reg", "MinVersion": null, "MaxVersion": 21999 }, { "FeatureId": "HideShare", - "Label": "'Share' option in the context menu", "ToolTip": "Hides the 'Share' option from the File Explorer context menu.", "Category": "File Explorer", - "Action": "Hide", - "RegistryKey": "Disable_Share_from_context_menu.reg", + "Action": "Hide 'Share' option in the context menu", "ApplyText": "Hiding 'Share' in the context menu...", - "UndoAction": "Show", + "UndoAction": "Show 'Share' option in the context menu", + "UndoText": "Showing 'Share' option in the context menu...", + "RegistryKey": "Disable_Share_from_context_menu.reg", "RegistryUndoKey": "Enable_Share_in_context_menu.reg", "MinVersion": null, "MaxVersion": 21999 }, { "FeatureId": "HideOnedrive", - "Label": "'OneDrive' folder from navigation pane", "ToolTip": "Hides the 'OneDrive' folder from the File Explorer navigation pane.", "Category": "File Explorer", - "Action": "Hide", + "Action": "Hide 'OneDrive' folder from navigation pane", + "ApplyText": "Hiding the 'OneDrive' folder from the File Explorer navigation pane...", + "UndoAction": "Show 'OneDrive' folder from navigation pane", + "UndoText": "Showing 'OneDrive' folder from navigation pane...", "RegistryKey": "Hide_Onedrive_Folder.reg", - "ApplyText": "Hiding the OneDrive folder from the File Explorer navigation pane...", - "UndoAction": "Show", "RegistryUndoKey": "Show_Onedrive_Folder.reg", "MinVersion": null, "MaxVersion": 21999 }, { "FeatureId": "Hide3dObjects", - "Label": "'3D objects' folder under 'This PC'", "ToolTip": "Hides the '3D objects' folder from the File Explorer navigation pane.", "Category": "File Explorer", - "Action": "Hide", + "Action": "Hide '3D objects' folder from navigation pane", + "ApplyText": "Hiding the '3D objects' folder from the File Explorer navigation pane...", + "UndoAction": "Show '3D objects' folder in the File Explorer navigation pane", + "UndoText": "Showing the '3D objects' folder in the File Explorer navigation pane...", "RegistryKey": "Hide_3D_Objects_Folder.reg", - "ApplyText": "Hiding the 3D objects folder from the File Explorer navigation pane...", - "UndoAction": "Show", "RegistryUndoKey": "Show_3D_Objects_Folder.reg", "MinVersion": null, "MaxVersion": 21999 }, { "FeatureId": "HideMusic", - "Label": "'Music' folder under 'This PC'", "ToolTip": "Hides the 'Music' folder from the File Explorer navigation pane.", "Category": "File Explorer", - "Action": "Hide", + "Action": "Hide 'Music' folder from navigation pane", + "ApplyText": "Hiding the 'Music' folder from the File Explorer navigation pane...", + "UndoAction": "Show 'Music' folder in the File Explorer navigation pane", + "UndoText": "Showing the 'Music' folder in the File Explorer navigation pane...", "RegistryKey": "Hide_Music_Folder.reg", - "ApplyText": "Hiding the music folder from the File Explorer navigation pane...", - "UndoAction": "Show", "RegistryUndoKey": "Show_Music_Folder.reg", "MinVersion": null, "MaxVersion": 21999 }, { "FeatureId": "DisableBraveBloat", - "Label": "bloat in Brave browser (AI, Crypto, etc.)", "ToolTip": "This will disable Brave's built-in AI features, Crypto wallet, News, Rewards, Talk and VPN. This feature uses policies, which will lock down certain settings.", "Category": "Other", - "Action": "Disable", + "Action": "Disable bloat in Brave browser (AI, Crypto, etc.)", + "ApplyText": "Disabling bloat in Brave browser (AI, Crypto, etc.)...", + "UndoAction": "Enable bloat in Brave browser (AI, Crypto, etc.)", + "UndoText": "Enabling bloat in Brave browser (AI, Crypto, etc.)...", "RegistryKey": "Disable_Brave_Bloat.reg", - "ApplyText": "Disabling Brave AI, Crypto, News, Rewards, Talk and VPN in Brave browser...", - "UndoAction": "Enable", "RegistryUndoKey": "Enable_Brave_Bloat.reg", "MinVersion": null, "MaxVersion": null }, { "FeatureId": "EnableWindowsSandbox", - "Label": "Windows Sandbox", "ToolTip": "Windows Sandbox is a lightweight desktop environment for safely running applications in isolation. Software installed inside the Windows Sandbox environment remains 'sandboxed' and runs separately from the host machine. Only supported on Windows 11 Pro, Workstation, and Enterprise editions.", "Category": "Optional Windows Features", - "Action": "Enable", - "RegistryKey": null, + "Action": "Enable Windows Sandbox", "ApplyText": "Enabling Windows Sandbox...", "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "RequiresReboot": true, "MinVersion": 22483, @@ -1478,17 +1478,17 @@ }, { "FeatureId": "EnableWindowsSubsystemForLinux", - "Label": "Windows Subsystem for Linux", "ToolTip": "Windows Subsystem for Linux allows you to run a Linux environment directly on Windows without the need for a virtual machine.", "Category": "Optional Windows Features", - "Action": "Enable", - "RegistryKey": null, + "Action": "Enable Windows Subsystem for Linux", "ApplyText": "Enabling Windows Subsystem for Linux...", "UndoAction": null, + "UndoText": null, + "RegistryKey": null, "RegistryUndoKey": null, "RequiresReboot": true, "MinVersion": 22000, "MaxVersion": null } ] -} \ No newline at end of file +} diff --git a/Scripts/CLI/PrintPendingChanges.ps1 b/Scripts/CLI/PrintPendingChanges.ps1 index 30ee600..109308b 100644 --- a/Scripts/CLI/PrintPendingChanges.ps1 +++ b/Scripts/CLI/PrintPendingChanges.ps1 @@ -11,7 +11,7 @@ function PrintPendingChanges { } if ($script:Params['CreateRestorePoint']) { - Write-Output "- $($script:Features['CreateRestorePoint'].Label)" + Write-Output "- $($script:Features['CreateRestorePoint'].Action)" } foreach ($parameterName in $script:Params.Keys) { if ($script:ControlParams -contains $parameterName) { @@ -65,18 +65,17 @@ function PrintPendingChanges { } default { if ($script:Features -and $script:Features.ContainsKey($parameterName)) { - $action = if ($undoChanges -and $script:Features[$parameterName].UndoAction) { + $message = if ($undoChanges -and $script:Features[$parameterName].UndoAction) { $script:Features[$parameterName].UndoAction } else { $script:Features[$parameterName].Action } - $message = $script:Features[$parameterName].Label - if ($action) { - Write-Output "- $action $message" + if ($message) { + Write-Output "- $message" } else { - Write-Output "- $message" + Write-Output "- $parameterName" } } else { @@ -94,9 +93,7 @@ function PrintPendingChanges { $uniqueSkipped = $skippedParams | Sort-Object -Unique foreach ($skippedParam in $uniqueSkipped) { - $action = $script:Features[$skippedParam].Action - $message = $script:Features[$skippedParam].Label - Write-Output "- $action $message" + Write-Output "- $($script:Features[$skippedParam].Action)" } } @@ -104,4 +101,4 @@ function PrintPendingChanges { Write-Output "" Write-Output "Press enter to execute the script or press CTRL+C to quit..." Read-Host | Out-Null -} \ No newline at end of file +} diff --git a/Scripts/Features/ExecuteChanges.ps1 b/Scripts/Features/ExecuteChanges.ps1 index a93e138..fd0ba25 100644 --- a/Scripts/Features/ExecuteChanges.ps1 +++ b/Scripts/Features/ExecuteChanges.ps1 @@ -30,7 +30,7 @@ function ExecuteParameter { $undoRegFile = Join-Path 'Undo' $undoRegFile } - ImportRegistryFile "> $($undoFeature.UndoAction) $($undoFeature.Label)" $undoRegFile + ImportRegistryFile "> $($undoFeature.UndoText)" $undoRegFile return } @@ -219,19 +219,13 @@ function ExecuteAllChanges { $stepName = $paramKey if ($script:Features.ContainsKey($paramKey)) { $feature = $script:Features[$paramKey] - if ($undoChanges -and $feature.UndoAction) { - $stepName = "$($feature.UndoAction) $($feature.Label)" + if ($undoChanges -and $feature.UndoText) { + $stepName = $feature.UndoText } elseif ($feature.ApplyText) { - # Prefer explicit ApplyText when provided $stepName = $feature.ApplyText - } elseif ($feature.Label) { - # Fallback: construct a name from Action and Label, or just Label - if ($feature.Action) { - $stepName = "$($feature.Action) $($feature.Label)" - } else { - $stepName = $feature.Label - } + } elseif ($feature.Action) { + $stepName = $feature.Action } } @@ -241,4 +235,4 @@ function ExecuteAllChanges { ExecuteParameter -paramKey $paramKey } -} \ No newline at end of file +} diff --git a/Scripts/Features/RestartExplorer.ps1 b/Scripts/Features/RestartExplorer.ps1 index 054f4fa..c7be2cb 100644 --- a/Scripts/Features/RestartExplorer.ps1 +++ b/Scripts/Features/RestartExplorer.ps1 @@ -10,7 +10,7 @@ function RestartExplorer { foreach ($paramKey in $script:Params.Keys) { if ($script:Features.ContainsKey($paramKey) -and $script:Features[$paramKey].RequiresReboot -eq $true) { $feature = $script:Features[$paramKey] - Write-Host "Warning: '$($feature.Action) $($feature.Label)' requires a reboot to take full effect" -ForegroundColor Yellow + Write-Host "Warning: '$($feature.Action)' requires a reboot to take full effect" -ForegroundColor Yellow } } diff --git a/Scripts/GUI/Show-ApplyModal.ps1 b/Scripts/GUI/Show-ApplyModal.ps1 index 53b8e45..81dd3b8 100644 --- a/Scripts/GUI/Show-ApplyModal.ps1 +++ b/Scripts/GUI/Show-ApplyModal.ps1 @@ -162,7 +162,7 @@ function Show-ApplyModal { foreach ($paramKey in $script:Params.Keys) { if ($script:Features.ContainsKey($paramKey) -and $script:Features[$paramKey].RequiresReboot -eq $true) { $feature = $script:Features[$paramKey] - $rebootFeatures += "$($feature.Action) $($feature.Label)" + $rebootFeatures += $feature.Action } } diff --git a/Scripts/GUI/Show-MainWindow.ps1 b/Scripts/GUI/Show-MainWindow.ps1 index ec3210c..00980fa 100644 --- a/Scripts/GUI/Show-MainWindow.ps1 +++ b/Scripts/GUI/Show-MainWindow.ps1 @@ -446,7 +446,7 @@ function Show-MainWindow { # Dynamically builds Tweaks UI from Features.json function BuildDynamicTweaks { - $featuresJson = LoadJsonFile -filePath $script:FeaturesFilePath -expectedVersion "1.0" + $featuresJson = LoadJsonFile -filePath $script:FeaturesFilePath -expectedVersion $script:FeaturesConfigVersion if (-not $featuresJson) { Show-MessageBox -Message "Unable to load Features.json file!" -Title "Error" -Button 'OK' -Icon 'Error' | Out-Null @@ -709,7 +709,7 @@ function Show-MainWindow { if ($feature.FeatureId -match '^Disable') { $opt = 'Disable' } elseif ($feature.FeatureId -match '^Enable') { $opt = 'Enable' } $items = @('No Change', $opt) $comboName = ("Feature_{0}_Combo" -f $feature.FeatureId) -replace '[^a-zA-Z0-9_]','' - $combo = CreateLabeledCombo -parent $panel -labelText ($feature.Action + ' ' + $feature.Label) -comboName $comboName -items $items + $combo = CreateLabeledCombo -parent $panel -labelText $feature.Action -comboName $comboName -items $items # attach tooltip from Features.json if present if ($feature.ToolTip) { $tipBlock = New-Object System.Windows.Controls.TextBlock @@ -721,7 +721,7 @@ function Show-MainWindow { try { $lblBorderObj = $window.FindName("$comboName`_LabelBorder") } catch {} if ($lblBorderObj) { $lblBorderObj.ToolTip = $tipBlock } } - $script:UiControlMappings[$comboName] = @{ Type='feature'; FeatureId = $feature.FeatureId; Action = $feature.Action; Label = $feature.Label } + $script:UiControlMappings[$comboName] = @{ Type='feature'; FeatureId = $feature.FeatureId; Action = $feature.Action } } } } @@ -729,7 +729,7 @@ function Show-MainWindow { # Build a feature-label lookup so GenerateOverview can resolve feature IDs without reloading JSON $script:FeatureLabelLookup = @{} foreach ($f in $featuresJson.Features) { - $script:FeatureLabelLookup[$f.FeatureId] = $f.Action + ' ' + $f.Label + $script:FeatureLabelLookup[$f.FeatureId] = $f.Action } } @@ -1466,8 +1466,7 @@ function Show-MainWindow { } elseif ($mapping.Type -eq 'feature') { $label = $script:FeatureLabelLookup[$mapping.FeatureId] - if (-not $label) { $label = $mapping.Action + ' ' + $mapping.Label } - $changesList += $label + if ($label) { $changesList += $label } } } } diff --git a/Scripts/GUI/Show-RevertSettingsModal.ps1 b/Scripts/GUI/Show-RevertSettingsModal.ps1 index c388e1e..8f30752 100644 --- a/Scripts/GUI/Show-RevertSettingsModal.ps1 +++ b/Scripts/GUI/Show-RevertSettingsModal.ps1 @@ -70,17 +70,12 @@ function Show-RevertSettingsModal { $undoFeature = GetUndoFeatureForParam -paramKey $setting.Name $label = $setting.Name - if ($feature -and $feature.Label) { - if ($feature.Action) { - $label = "$($feature.Action) $($feature.Label)" - } - else { - $label = $feature.Label - } + if ($feature -and $feature.Action) { + $label = $feature.Action } - $undoLabel = if ($undoFeature -and $undoFeature.Label) { - "$($undoFeature.UndoAction) $($undoFeature.Label)" + $undoLabel = if ($undoFeature -and $undoFeature.UndoAction) { + $undoFeature.UndoAction } else { 'No revert action available' } diff --git a/Scripts/Helpers/GetUndoFeatureForParam.ps1 b/Scripts/Helpers/GetUndoFeatureForParam.ps1 index d8ddb9a..d7b11b9 100644 --- a/Scripts/Helpers/GetUndoFeatureForParam.ps1 +++ b/Scripts/Helpers/GetUndoFeatureForParam.ps1 @@ -9,7 +9,7 @@ function GetUndoFeatureForParam { } $feature = $script:Features[$paramKey] - if (-not ($feature.RegistryUndoKey -and $feature.UndoAction)) { + if (-not ($feature.RegistryUndoKey -and ($feature.UndoText -or $feature.UndoAction))) { return $null } diff --git a/Win11Debloat.ps1 b/Win11Debloat.ps1 index 8e74063..ffe5d14 100644 --- a/Win11Debloat.ps1 +++ b/Win11Debloat.ps1 @@ -106,6 +106,7 @@ param ( # Define script-level variables & paths $script:Version = "2026.03.15" +$script:FeaturesConfigVersion = "2.0" $script:AppsListFilePath = "$PSScriptRoot/Config/Apps.json" $script:DefaultSettingsFilePath = "$PSScriptRoot/Config/DefaultSettings.json" $script:FeaturesFilePath = "$PSScriptRoot/Config/Features.json" @@ -199,6 +200,15 @@ if ($missingRequiredPaths.Count -gt 0) { $script:Features = @{} try { $featuresData = Get-Content -Path $script:FeaturesFilePath -Raw | ConvertFrom-Json + + if (-not $featuresData.Version -or $featuresData.Version -ne $script:FeaturesConfigVersion) { + Write-Error "Features.json version mismatch (expected $($script:FeaturesConfigVersion), found $($featuresData.Version))" + Write-Output "" + Write-Output "Press any key to exit..." + $null = [System.Console]::ReadKey() + Exit + } + foreach ($feature in $featuresData.Features) { $script:Features[$feature.FeatureId] = $feature }