diff --git a/config/applications.json b/config/applications.json index 03600bab..e831f3b9 100644 --- a/config/applications.json +++ b/config/applications.json @@ -1423,6 +1423,14 @@ "link": "https://www.postman.com/", "winget": "Postman.Postman" }, + "WPFInstallpowerautomate": { + "category": "Microsoft Tools", + "choco": "powerautomatedesktop", + "content": "Power Automate", + "description": "Using Power Automate Desktop you can automate tasks on the desktop as well as the Web.", + "link": "https://www.microsoft.com/en-us/power-platform/products/power-automate", + "winget": "Microsoft.PowerAutomateDesktop" + }, "WPFInstallpowerbi": { "category": "Microsoft Tools", "choco": "powerbi", @@ -1743,6 +1751,14 @@ "link": "https://stefansundin.github.io/superf4/", "winget": "StefanSundin.Superf4" }, + "WPFInstallswift": { + "category": "Development", + "choco": "na", + "content": "Swift toolchain", + "description": "Swift is a general-purpose programming language that’s approachable for newcomers and powerful for experts.", + "link": "https://www.swift.org/", + "winget": "Swift.Toolchain" + }, "WPFInstallsynctrayzor": { "category": "Utilities", "choco": "synctrayzor", diff --git a/config/tweaks.json b/config/tweaks.json index 500049c9..1255899a 100644 --- a/config/tweaks.json +++ b/config/tweaks.json @@ -2398,12 +2398,20 @@ "panel": "1", "Order": "a028_", "InvokeScript": [ - "New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\" " + " + New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\" + Write-Host Restarting explorer.exe ... + $process = Get-Process -Name \"explorer\" + Stop-Process -InputObject $process + " ], "UndoScript": [ " Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force - Write-Host Restart Needed for change + # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure. + Write-Host Restarting explorer.exe ... + $process = Get-Process -Name \"explorer\" + Stop-Process -InputObject $process " ] }, @@ -2613,6 +2621,14 @@ "Order": "a067_", "Type": "Toggle" }, + "WPFToggleTaskbarWidgets": { + "Content": "Taskbar Widgets", + "Description": "If Enabled then Widgets Icon in Taskbar will be shown.", + "category": "Customize Preferences", + "panel": "2", + "Order": "a068_", + "Type": "Toggle" + }, "WPFchangedns": { "Content": "DNS", "category": "z__Advanced Tweaks - CAUTION", diff --git a/functions/private/Get-WinUtilToggleStatus.ps1 b/functions/private/Get-WinUtilToggleStatus.ps1 index cc5b5090..95160ef6 100644 --- a/functions/private/Get-WinUtilToggleStatus.ps1 +++ b/functions/private/Get-WinUtilToggleStatus.ps1 @@ -89,4 +89,13 @@ Function Get-WinUtilToggleStatus { return $true } } -} \ No newline at end of file + if ($ToggleSwitch -eq "WPFToggleTaskbarWidgets") { + $TaskbarWidgets = (Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced").TaskBarDa + if($TaskbarWidgets -eq 0) { + return $false + } + else{ + return $true + } + } +} diff --git a/functions/private/Install-WinUtilWinget.ps1 b/functions/private/Install-WinUtilWinget.ps1 index a0c7b7bd..2bdba08e 100644 --- a/functions/private/Install-WinUtilWinget.ps1 +++ b/functions/private/Install-WinUtilWinget.ps1 @@ -40,6 +40,8 @@ function Install-WinUtilWinget { Get-WinUtilWingetLatest Write-Host "Installing Winget w/ Prerequsites`r" Add-AppxProvisionedPackage -Online -PackagePath $ENV:TEMP\Microsoft.DesktopAppInstaller.msixbundle -DependencyPackagePath $ENV:TEMP\Microsoft.VCLibs.x64.Desktop.appx, $ENV:TEMP\Microsoft.UI.Xaml.x64.appx -LicensePath $ENV:TEMP\License1.xml + Write-Host "Manually adding Winget Sources, from Winget CDN." + Add-AppxPackage -Path https://cdn.winget.microsoft.com/cache/source.msix #Seems some installs of Winget don't add the repo source, this should makes sure that it's installed every time. Write-Host "Winget Installed" -ForegroundColor Green # Winget only needs a refresh of the environment variables to be used. Write-Output "Refreshing Environment Variables...`n" diff --git a/functions/private/Invoke-MicroWin-Helper.ps1 b/functions/private/Invoke-MicroWin-Helper.ps1 index 3ae08d49..f34adb35 100644 --- a/functions/private/Invoke-MicroWin-Helper.ps1 +++ b/functions/private/Invoke-MicroWin-Helper.ps1 @@ -54,38 +54,39 @@ function Remove-Features([switch] $dumpFeatures = $false, [switch] $keepDefender Remove-Features -keepDefender:$false #> - $appxlist = dism /English /image:$scratchDir /Get-Features | Select-String -Pattern "Feature Name : " -CaseSensitive -SimpleMatch - $appxlist = $appxlist -split "Feature Name : " | Where-Object {$_} + $featlist = (Get-WindowsOptionalFeature -Path $scratchDir).FeatureName if ($dumpFeatures) { - $appxlist > allfeaturesdump.txt + $featlist > allfeaturesdump.txt } - $appxlist = $appxlist | Where-Object { + $featlist = $featlist | Where-Object { $_ -NotLike "*Printing*" -AND $_ -NotLike "*TelnetClient*" -AND $_ -NotLike "*PowerShell*" -AND - $_ -NotLike "*NetFx*" + $_ -NotLike "*NetFx*" -AND + $_ -NotLike "*Media*" -AND + $_ -NotLike "*NFS*" } - if ($keepDefender) { $appxlist = $appxlist | Where-Object { $_ -NotLike "*Defender*" }} + if ($keepDefender) { $featlist = $featlist | Where-Object { $_ -NotLike "*Defender*" }} - foreach($feature in $appxlist) + foreach($feature in $featlist) { $status = "Removing feature $feature" - Write-Progress -Activity "Removing features" -Status $status -PercentComplete ($counter++/$appxlist.Count*100) + Write-Progress -Activity "Removing features" -Status $status -PercentComplete ($counter++/$featlist.Count*100) Write-Debug "Removing feature $feature" - # dism /image:$scratchDir /Disable-Feature /FeatureName:$feature /Remove /NoRestart > $null + Disable-WindowsOptionalFeature -Path "$scratchDir" -FeatureName $feature -Remove -ErrorAction SilentlyContinue -NoRestart } Write-Progress -Activity "Removing features" -Status "Ready" -Completed + Write-Host "You can re-enable the disabled features at any time, using either Windows Update or the SxS folder in \Sources." } function Remove-Packages { - $appxlist = dism /English /Image:$scratchDir /Get-Packages | Select-String -Pattern "Package Identity : " -CaseSensitive -SimpleMatch - $appxlist = $appxlist -split "Package Identity : " | Where-Object {$_} + $pkglist = (Get-WindowsPackage -Path "$scratchDir").PackageName - $appxlist = $appxlist | Where-Object { + $pkglist = $pkglist | Where-Object { $_ -NotLike "*ApplicationModel*" -AND $_ -NotLike "*indows-Client-LanguagePack*" -AND $_ -NotLike "*LanguageFeatures-Basic*" -AND @@ -123,11 +124,18 @@ function Remove-Packages $_ -NotLike "*UI.XaML*" } - foreach ($appx in $appxlist) + foreach ($pkg in $pkglist) { - $status = "Removing $appx" - Write-Progress -Activity "Removing Apps" -Status $status -PercentComplete ($counter++/$appxlist.Count*100) - dism /English /image:$scratchDir /Remove-Package /PackageName:$appx /NoRestart + try { + $status = "Removing $pkg" + Write-Progress -Activity "Removing Apps" -Status $status -PercentComplete ($counter++/$pkglist.Count*100) + Remove-WindowsPackage -Path "$scratchDir" -PackageName $pkg -NoRestart -ErrorAction SilentlyContinue + } + catch { + # This can happen if the package that is being removed is a permanent one, like FodMetadata + Write-Host "Could not remove OS package $($pkg)" + continue + } } Write-Progress -Activity "Removing Apps" -Status "Ready" -Completed } @@ -167,7 +175,7 @@ function Remove-ProvisionedPackages([switch] $keepSecurity = $false) { $status = "Removing Provisioned $($appx.PackageName)" Write-Progress -Activity "Removing Provisioned Apps" -Status $status -PercentComplete ($counter++/$appxProvisionedPackages.Count*100) - dism /English /image:$scratchDir /Remove-ProvisionedAppxPackage /PackageName:$($appx.PackageName) /NoRestart + Remove-AppxProvisionedPackage -Path $scratchDir -PackageName $appx.PackageName -ErrorAction SilentlyContinue } Write-Progress -Activity "Removing Provisioned Apps" -Status "Ready" -Completed } diff --git a/functions/private/Invoke-WinUtilTaskbarWidgets.ps1 b/functions/private/Invoke-WinUtilTaskbarWidgets.ps1 new file mode 100644 index 00000000..27077f55 --- /dev/null +++ b/functions/private/Invoke-WinUtilTaskbarWidgets.ps1 @@ -0,0 +1,34 @@ +function Invoke-WinUtilTaskbarWidgets { + <# + + .SYNOPSIS + Enable/Disable Taskbar Widgets + + .PARAMETER Enabled + Indicates whether to enable or disable Taskbar Widgets + + #> + Param($Enabled) + Try{ + if ($Enabled -eq $false){ + Write-Host "Enabling Taskbar Widgets" + $value = 1 + } + else { + Write-Host "Disabling Taskbar Widgets" + $value = 0 + } + $Path = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" + Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value + } + Catch [System.Security.SecurityException] { + Write-Warning "Unable to set $Path\$Name to $Value due to a Security Exception" + } + Catch [System.Management.Automation.ItemNotFoundException] { + Write-Warning $psitem.Exception.ErrorRecord + } + Catch{ + Write-Warning "Unable to set $Name due to unhandled exception" + Write-Warning $psitem.Exception.StackTrace + } +} diff --git a/functions/public/Invoke-WPFMicrowin.ps1 b/functions/public/Invoke-WPFMicrowin.ps1 index 6c8a2d6a..89d15872 100644 --- a/functions/public/Invoke-WPFMicrowin.ps1 +++ b/functions/public/Invoke-WPFMicrowin.ps1 @@ -117,7 +117,7 @@ public class PowerManagement { if (Test-Path $driverPath) { Write-Host "Adding Windows Drivers image($scratchDir) drivers($driverPath) " - dism /English /image:$scratchDir /add-driver /driver:$driverPath /recurse | Out-Host + Add-WindowsDriver -Path "$scratchDir" -Recurse -Driver "$driverPath" } else { @@ -335,7 +335,7 @@ public class PowerManagement { if (Test-Path $driverPath) { Write-Host "Adding Windows Drivers image($scratchDir) drivers($driverPath) " - dism /English /image:$scratchDir /add-driver /driver:$driverPath /recurse | Out-Host + Add-WindowsDriver -Path "$scratchDir" -Driver "$driverPath" -Recurse } else { diff --git a/functions/public/Invoke-WPFToggle.ps1 b/functions/public/Invoke-WPFToggle.ps1 index 1a60217e..fd8a82f4 100644 --- a/functions/public/Invoke-WPFToggle.ps1 +++ b/functions/public/Invoke-WPFToggle.ps1 @@ -25,5 +25,6 @@ function Invoke-WPFToggle { "WPFToggleSnapFlyout" {Invoke-WinUtilSnapFlyout $(Get-WinUtilToggleStatus WPFToggleSnapFlyout)} "WPFToggleMouseAcceleration" {Invoke-WinUtilMouseAcceleration $(Get-WinUtilToggleStatus WPFToggleMouseAcceleration)} "WPFToggleStickyKeys" {Invoke-WinUtilStickyKeys $(Get-WinUtilToggleStatus WPFToggleStickyKeys)} + "WPFToggleTaskbarWidgets" {Invoke-WinUtilTaskbarWidgets $(Get-WinUtilToggleStatus WPFToggleTaskbarWidgets)} } -} \ No newline at end of file +} diff --git a/scripts/main.ps1 b/scripts/main.ps1 index 4a722022..38007969 100644 --- a/scripts/main.ps1 +++ b/scripts/main.ps1 @@ -381,7 +381,7 @@ $sync["CheckboxFilter"].Add_TextChanged({ continue } - $textToSearch = $sync.CheckboxFilter.Text + $textToSearch = $sync.CheckboxFilter.Text.ToLower() $checkBoxName = $CheckBox.Key $textBlockName = $checkBoxName + "Link" diff --git a/winutil.ps1 b/winutil.ps1 index 2f5d7f82..8f04a35c 100644 --- a/winutil.ps1 +++ b/winutil.ps1 @@ -10,7 +10,7 @@ Author : Chris Titus @christitustech Runspace Author: @DeveloperDurp GitHub : https://github.com/ChrisTitusTech - Version : 24.03.30 + Version : 24.03.31 #> param ( [switch]$Debug, @@ -47,7 +47,7 @@ Add-Type -AssemblyName System.Windows.Forms # Variable to sync between runspaces $sync = [Hashtable]::Synchronized(@{}) $sync.PSScriptRoot = $PSScriptRoot -$sync.version = "24.03.30" +$sync.version = "24.03.31" $sync.configs = @{} $sync.ProcessRunning = $false @@ -575,6 +575,15 @@ Function Get-WinUtilToggleStatus { return $true } } + if ($ToggleSwitch -eq "WPFToggleTaskbarWidgets") { + $TaskbarWidgets = (Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced").TaskBarDa + if($TaskbarWidgets -eq 0) { + return $false + } + else{ + return $true + } + } } function Get-WinUtilVariables { @@ -777,6 +786,8 @@ function Install-WinUtilWinget { Get-WinUtilWingetLatest Write-Host "Installing Winget w/ Prerequsites`r" Add-AppxProvisionedPackage -Online -PackagePath $ENV:TEMP\Microsoft.DesktopAppInstaller.msixbundle -DependencyPackagePath $ENV:TEMP\Microsoft.VCLibs.x64.Desktop.appx, $ENV:TEMP\Microsoft.UI.Xaml.x64.appx -LicensePath $ENV:TEMP\License1.xml + Write-Host "Manually adding Winget Sources, from Winget CDN." + Add-AppxPackage -Path https://cdn.winget.microsoft.com/cache/source.msix #Seems some installs of Winget don't add the repo source, this should makes sure that it's installed every time. Write-Host "Winget Installed" -ForegroundColor Green # Winget only needs a refresh of the environment variables to be used. Write-Output "Refreshing Environment Variables...`n" @@ -850,38 +861,39 @@ function Remove-Features([switch] $dumpFeatures = $false, [switch] $keepDefender Remove-Features -keepDefender:$false #> - $appxlist = dism /English /image:$scratchDir /Get-Features | Select-String -Pattern "Feature Name : " -CaseSensitive -SimpleMatch - $appxlist = $appxlist -split "Feature Name : " | Where-Object {$_} + $featlist = (Get-WindowsOptionalFeature -Path $scratchDir).FeatureName if ($dumpFeatures) { - $appxlist > allfeaturesdump.txt + $featlist > allfeaturesdump.txt } - $appxlist = $appxlist | Where-Object { + $featlist = $featlist | Where-Object { $_ -NotLike "*Printing*" -AND $_ -NotLike "*TelnetClient*" -AND $_ -NotLike "*PowerShell*" -AND - $_ -NotLike "*NetFx*" + $_ -NotLike "*NetFx*" -AND + $_ -NotLike "*Media*" -AND + $_ -NotLike "*NFS*" } - if ($keepDefender) { $appxlist = $appxlist | Where-Object { $_ -NotLike "*Defender*" }} + if ($keepDefender) { $featlist = $featlist | Where-Object { $_ -NotLike "*Defender*" }} - foreach($feature in $appxlist) + foreach($feature in $featlist) { $status = "Removing feature $feature" - Write-Progress -Activity "Removing features" -Status $status -PercentComplete ($counter++/$appxlist.Count*100) + Write-Progress -Activity "Removing features" -Status $status -PercentComplete ($counter++/$featlist.Count*100) Write-Debug "Removing feature $feature" - # dism /image:$scratchDir /Disable-Feature /FeatureName:$feature /Remove /NoRestart > $null + Disable-WindowsOptionalFeature -Path "$scratchDir" -FeatureName $feature -Remove -ErrorAction SilentlyContinue -NoRestart } Write-Progress -Activity "Removing features" -Status "Ready" -Completed + Write-Host "You can re-enable the disabled features at any time, using either Windows Update or the SxS folder in \Sources." } function Remove-Packages { - $appxlist = dism /English /Image:$scratchDir /Get-Packages | Select-String -Pattern "Package Identity : " -CaseSensitive -SimpleMatch - $appxlist = $appxlist -split "Package Identity : " | Where-Object {$_} + $pkglist = (Get-WindowsPackage -Path "$scratchDir").PackageName - $appxlist = $appxlist | Where-Object { + $pkglist = $pkglist | Where-Object { $_ -NotLike "*ApplicationModel*" -AND $_ -NotLike "*indows-Client-LanguagePack*" -AND $_ -NotLike "*LanguageFeatures-Basic*" -AND @@ -919,11 +931,18 @@ function Remove-Packages $_ -NotLike "*UI.XaML*" } - foreach ($appx in $appxlist) + foreach ($pkg in $pkglist) { - $status = "Removing $appx" - Write-Progress -Activity "Removing Apps" -Status $status -PercentComplete ($counter++/$appxlist.Count*100) - dism /English /image:$scratchDir /Remove-Package /PackageName:$appx /NoRestart + try { + $status = "Removing $pkg" + Write-Progress -Activity "Removing Apps" -Status $status -PercentComplete ($counter++/$pkglist.Count*100) + Remove-WindowsPackage -Path "$scratchDir" -PackageName $pkg -NoRestart -ErrorAction SilentlyContinue + } + catch { + # This can happen if the package that is being removed is a permanent one, like FodMetadata + Write-Host "Could not remove OS package $($pkg)" + continue + } } Write-Progress -Activity "Removing Apps" -Status "Ready" -Completed } @@ -963,7 +982,7 @@ function Remove-ProvisionedPackages([switch] $keepSecurity = $false) { $status = "Removing Provisioned $($appx.PackageName)" Write-Progress -Activity "Removing Provisioned Apps" -Status $status -PercentComplete ($counter++/$appxProvisionedPackages.Count*100) - dism /English /image:$scratchDir /Remove-ProvisionedAppxPackage /PackageName:$($appx.PackageName) /NoRestart + Remove-AppxProvisionedPackage -Path $scratchDir -PackageName $appx.PackageName -ErrorAction SilentlyContinue } Write-Progress -Activity "Removing Provisioned Apps" -Status "Ready" -Completed } @@ -1919,6 +1938,40 @@ Function Invoke-WinUtilStickyKeys { Write-Warning $psitem.Exception.StackTrace } } +function Invoke-WinUtilTaskbarWidgets { + <# + + .SYNOPSIS + Enable/Disable Taskbar Widgets + + .PARAMETER Enabled + Indicates whether to enable or disable Taskbar Widgets + + #> + Param($Enabled) + Try{ + if ($Enabled -eq $false){ + Write-Host "Enabling Taskbar Widgets" + $value = 1 + } + else { + Write-Host "Disabling Taskbar Widgets" + $value = 0 + } + $Path = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" + Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value + } + Catch [System.Security.SecurityException] { + Write-Warning "Unable to set $Path\$Name to $Value due to a Security Exception" + } + Catch [System.Management.Automation.ItemNotFoundException] { + Write-Warning $psitem.Exception.ErrorRecord + } + Catch{ + Write-Warning "Unable to set $Name due to unhandled exception" + Write-Warning $psitem.Exception.StackTrace + } +} function Invoke-WinUtilTweaks { <# @@ -3694,7 +3747,7 @@ public class PowerManagement { if (Test-Path $driverPath) { Write-Host "Adding Windows Drivers image($scratchDir) drivers($driverPath) " - dism /English /image:$scratchDir /add-driver /driver:$driverPath /recurse | Out-Host + Add-WindowsDriver -Path "$scratchDir" -Recurse -Driver "$driverPath" } else { @@ -3912,7 +3965,7 @@ public class PowerManagement { if (Test-Path $driverPath) { Write-Host "Adding Windows Drivers image($scratchDir) drivers($driverPath) " - dism /English /image:$scratchDir /add-driver /driver:$driverPath /recurse | Out-Host + Add-WindowsDriver -Path "$scratchDir" -Driver "$driverPath" -Recurse } else { @@ -4310,6 +4363,7 @@ function Invoke-WPFToggle { "WPFToggleSnapFlyout" {Invoke-WinUtilSnapFlyout $(Get-WinUtilToggleStatus WPFToggleSnapFlyout)} "WPFToggleMouseAcceleration" {Invoke-WinUtilMouseAcceleration $(Get-WinUtilToggleStatus WPFToggleMouseAcceleration)} "WPFToggleStickyKeys" {Invoke-WinUtilStickyKeys $(Get-WinUtilToggleStatus WPFToggleStickyKeys)} + "WPFToggleTaskbarWidgets" {Invoke-WinUtilTaskbarWidgets $(Get-WinUtilToggleStatus WPFToggleTaskbarWidgets)} } } function Invoke-WPFtweaksbutton { @@ -6255,6 +6309,14 @@ $sync.configs.applications = '{ "link": "https://www.postman.com/", "winget": "Postman.Postman" }, + "WPFInstallpowerautomate": { + "category": "Microsoft Tools", + "choco": "powerautomatedesktop", + "content": "Power Automate", + "description": "Using Power Automate Desktop you can automate tasks on the desktop as well as the Web.", + "link": "https://www.microsoft.com/en-us/power-platform/products/power-automate", + "winget": "Microsoft.PowerAutomateDesktop" + }, "WPFInstallpowerbi": { "category": "Microsoft Tools", "choco": "powerbi", @@ -6575,6 +6637,14 @@ $sync.configs.applications = '{ "link": "https://stefansundin.github.io/superf4/", "winget": "StefanSundin.Superf4" }, + "WPFInstallswift": { + "category": "Development", + "choco": "na", + "content": "Swift toolchain", + "description": "Swift is a general-purpose programming language that???s approachable for newcomers and powerful for experts.", + "link": "https://www.swift.org/", + "winget": "Swift.Toolchain" + }, "WPFInstallsynctrayzor": { "category": "Utilities", "choco": "synctrayzor", @@ -9957,12 +10027,20 @@ $sync.configs.tweaks = '{ "panel": "1", "Order": "a028_", "InvokeScript": [ - "New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\" " + " + New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\" + Write-Host Restarting explorer.exe ... + $process = Get-Process -Name \"explorer\" + Stop-Process -InputObject $process + " ], "UndoScript": [ " Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force - Write-Host Restart Needed for change + # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure. + Write-Host Restarting explorer.exe ... + $process = Get-Process -Name \"explorer\" + Stop-Process -InputObject $process " ] }, @@ -10172,6 +10250,14 @@ $sync.configs.tweaks = '{ "Order": "a067_", "Type": "Toggle" }, + "WPFToggleTaskbarWidgets": { + "Content": "Taskbar Widgets", + "Description": "If Enabled then Widgets Icon in Taskbar will be shown.", + "category": "Customize Preferences", + "panel": "2", + "Order": "a068_", + "Type": "Toggle" + }, "WPFchangedns": { "Content": "DNS", "category": "z__Advanced Tweaks - CAUTION", @@ -11137,6 +11223,9 @@ $inputXML = ' + + + @@ -11276,15 +11365,15 @@ $inputXML = ' - - - + + + @@ -11328,6 +11417,9 @@ $inputXML = ' + + + @@ -11457,17 +11549,17 @@ $inputXML = ' + + + + + - - - - - @@ -11635,17 +11727,17 @@ $inputXML = ' + + + + + - - - - - @@ -11919,6 +12011,10 @@ $inputXML = ' + +