Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 2 additions & 2 deletions Scripts/Features/Invoke-RestartExplorer.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ function Invoke-RestartExplorer {
}

Write-Host "> Attempting to restart the Windows Explorer process to apply all changes..."
if ($script:Params.ContainsKey("NoRestartExplorer")) {

if ($script:Params.ContainsKey('SkipExplorerRestart')) {
Write-Host "Explorer process restart was skipped, please manually reboot your PC to apply all changes" -ForegroundColor Yellow
return
}
Expand Down
2 changes: 1 addition & 1 deletion Scripts/GUI/Show-MainWindow.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -777,7 +777,7 @@ function Show-MainWindow {
}

$restartExplorerCheckBox = $window.FindName('RestartExplorerCheckBox')
if ($restartExplorerCheckBox -and $script:Params.ContainsKey("NoRestartExplorer")) {
if ($restartExplorerCheckBox -and $script:Params.ContainsKey('SkipExplorerRestart')) {
$restartExplorerCheckBox.IsChecked = $false
$restartExplorerCheckBox.IsEnabled = $false
}
Expand Down
3 changes: 2 additions & 1 deletion Scripts/Get.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ param (
[switch]$Sysprep,
[string]$LogPath,
[string]$User,
[switch]$NoRestartExplorer,
[Alias('NoRestartExplorer')]
[switch]$SkipExplorerRestart,
[switch]$CreateRestorePoint,
[switch]$RunDefaults,
[switch]$RunDefaultsLite,
Expand Down
2 changes: 1 addition & 1 deletion Scripts/Helpers/Import-ConfigToParams.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ function Import-ConfigToParams {
}

if ($deploymentLookup.ContainsKey('RestartExplorer') -and -not [bool]$deploymentLookup['RestartExplorer']) {
Add-Parameter 'NoRestartExplorer'
Add-Parameter 'SkipExplorerRestart'
$importedItems++
}

Expand Down
2 changes: 1 addition & 1 deletion Tests/Import-ConfigToParams.Tests.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ Describe 'Import-ConfigToParams' {
$script:Params[$featureId] | Should -BeTrue
}
$script:Params['CreateRestorePoint'] | Should -BeTrue
$script:Params['NoRestartExplorer'] | Should -BeTrue
$script:Params['SkipExplorerRestart'] | Should -BeTrue
$script:Params.ContainsKey('User') | Should -BeFalse
$script:Params.ContainsKey('AppRemovalTarget') | Should -BeFalse
}
Expand Down
11 changes: 10 additions & 1 deletion Tests/Resolve-UserProfilePath.Tests.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -56,12 +56,21 @@ Describe 'Test-ModernStandbySupport' {
Mock Stop-Process {}
$script:Params = @{ WhatIf = $true }
Invoke-RestartExplorer
$script:Params = @{ NoRestartExplorer = $true }
$script:Params = @{ SkipExplorerRestart = $true }
Invoke-RestartExplorer

Should -Invoke Stop-Process -Times 0 -Exactly
}

It 'treats NoRestartExplorer as a backward-compatible alias for SkipExplorerRestart' {
# Verify the alias is declared on Win11Debloat.ps1's canonical parameter,
# so legacy callers using -NoRestartExplorer continue to work without code duplication.
$command = Get-Command (Join-Path $PSScriptRoot '..\Win11Debloat.ps1')
$skipParam = $command.Parameters['SkipExplorerRestart']
$skipParam | Should -Not -BeNullOrEmpty
$skipParam.Aliases | Should -Contain 'NoRestartExplorer'
}

It 'restarts Explorer when allowed and reports reboot-required features' {
Mock Stop-Process {}
Mock Get-RebootFeatureLabels { @('Disable telemetry') }
Expand Down
5 changes: 3 additions & 2 deletions Win11Debloat.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@ param (
[switch]$Sysprep,
[string]$LogPath,
[string]$User,
[switch]$NoRestartExplorer,
[Alias('NoRestartExplorer')]
[switch]$SkipExplorerRestart,
[switch]$CreateRestorePoint,
[switch]$RunDefaults,
[switch]$RunDefaultsLite,
Expand Down Expand Up @@ -185,7 +186,7 @@ $script:RestoreBackupWindowSchema = Join-Path $schemasPath 'RestoreBackupWindow.
$script:LoadAppsDetailsScriptPath = Join-Path (Join-Path $scriptsPath 'FileIO') 'Import-AppDetailsFromJson.ps1'
$script:TestAppInWingetListScriptPath = Join-Path (Join-Path $scriptsPath 'AppRemoval') 'Test-AppInWingetList.ps1'

$script:ControlParams = 'WhatIf', 'Confirm', 'Verbose', 'Debug', 'LogPath', 'Silent', 'Sysprep', 'User', 'NoRestartExplorer', 'RunDefaults', 'RunDefaultsLite', 'RunSavedSettings', 'Config', 'CLI', 'AppRemovalTarget'
$script:ControlParams = 'WhatIf', 'Confirm', 'Verbose', 'Debug', 'LogPath', 'Silent', 'Sysprep', 'User', 'SkipExplorerRestart', 'RunDefaults', 'RunDefaultsLite', 'RunSavedSettings', 'Config', 'CLI', 'AppRemovalTarget'

# Script-level variables for GUI elements
$script:GuiWindow = $null
Expand Down
Loading