winutil/functions/private/Get-WinUtilToggleStatus.ps1

61 lines
2.0 KiB
PowerShell
Raw Normal View History

Test 2023 7 20 (#917) * Remove Edge from Start Menu and Desktop (#898) * Update edgeremoval.bat * Fix Edge not being deleted from Desktop * Compile Winutil * fix yubikey users service * Compile Winutil * AJRouter and Kiosk Disable * Compile Winutil * TermService enable This service will hang when applying tweaks. Changing to Auto from Manual * Compile Winutil * Fix bug with Telemetry Tweak services should NOT be tweaked here * dupe tweak removal * hibernate off and delete * Compile Winutil * Cleaning Windows Update Folder * Compile Winutil * GameDVR Fix * Compile Winutil * Fixed consistency in variable names and values inside edgeremoval.bat (#902) * Compile Winutil * add spdx license * Compile Winutil * Updated Dark mode check (#904) * Compile Winutil * Update Dark Mode Check updated the theme check to use the existing function * Description update Updated Description --------- Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com> * Compile Winutil * fixes #569 * Compile Winutil * Added Bing Search toggle plus some support functions (#908) * Compile Winutil * Update winget.ps1 * Compile Winutil * Fix Winget Install * Compile Winutil * Update Install-WinUtilWinget.ps1 * Compile Winutil * Update Install-WinUtilWinget.ps1 * Compile Winutil * Update Install-WinUtilWinget.ps1 * Compile Winutil * Winget fixes * Compile Winutil --------- Co-authored-by: Antun Nitraj <antnitraj@gmail.com> Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com> Co-authored-by: DeveloperDurp <developerdurp@durp.info> Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com>
2023-07-27 16:06:41 -05:00
Function Get-WinUtilToggleStatus {
<#
2023 09 23 test (#1117) * move restore point to runspace (#1056) * Add Guilded into Communication Tab (#1059) * Add Guilded into Communication Tab * Remove Choco Package due to there is no Chocolatey packages * : Add ZeroTier One to utilities menu (#1061) * Update applications.json (#1063) Update to add [SuperF4 - Stefan Sundin](https://stefansundin.github.io/superf4/), as mentioned in #374 [Choco - SuperF4](https://community.chocolatey.org/packages/superf4) maintained by Xav83. [WinGet - SuperF4](https://winstall.app/apps/StefanSundin.Superf4) SuperF4 and Winget package published by Stefan Sundin. * Update inputXML.xaml (#1062) Updated inputXML.xaml to account for addition of the SuperF4 software. * Added AIMP music player (#1064) * Add Ventoy (Chocolatey Only Package) & .NET Core Runtime (Winget & Chocolatey) (#1066) * Tidy up SuperF4 line. * Tidy up SuperF4 line. Used spaces instead of tabs. * Add dotnet 7.0.11 Desktop Runtime * Undone changes to SuperF4 line * Addition of Ventoy (chocolatey only) package * Comment Spacing, Indentation, and Capitalization (#1084) * Comment Spacing, Indentation, and Capitalization * Comment Grammar and Spacing Makes grammar in comments better and more consistent Adds space before comment and centers word in `Write-Host` commands * More Grammar and Formatting * Add some comments * Populate PlaceHolder comments in functions Files I found that has issues: Get-WinUtilRegistry.ps1 Install-WinUtilWinget.ps1 Invoke-WinUtilDarkMode.ps1 Remove-WinUtilAPPX.ps1 Test-WinUtilPackageManager.ps1 Update-WinUtilProgramWinget.ps1 Invoke-WPFUpdatessecurity.ps1 * Tweak a few more comments * Tweak another write-host statement * Undo Catch statement adjustment It's outside of the scope of this pull request * Trim Trailing Whitespace (#1085) * Trim Trailing Whitespace * Revert "Trim Trailing Whitespace" This reverts commit 0ce32aa2c2fbf860138856375bdea05e119c36f4. * Trim Trailing Whitespace, take 2 * Bug Fixes - Edge Removal pullback to local - Formatting fixes * testing refactor to ps1 * Update winget-install to 3.0.1 (#1086) * Update tweaks.json (#1087) Capitalized first letter of "path" --> "Path" keys * Update edgeremoval.ps1 * Update edgeremoval.ps1 * Update edgeremoval.ps1 add error handling * Update functions.Tests.ps1 * fix catch error * add MSI Afterburner (#1097) * Add GitHub stats * Remove Application Experience * Thorium addition * remove sample submission * testing * Ultimate Performance * Home GPEDIT * Fix Winget Install on New System --------- Co-authored-by: DeveloperDurp <developerdurp@durp.info> Co-authored-by: Justawildwolf <62820836+blusewill@users.noreply.github.com> Co-authored-by: Tim Stone <github@tsdev.au> Co-authored-by: Will Barnard <5012445+mrwillbarnz@users.noreply.github.com> Co-authored-by: Ian Bassi <ian.bassi@outlook.com> Co-authored-by: Carter <60557606+Carterpersall@users.noreply.github.com> Co-authored-by: Yorai Levi <yorai.email@gmail.com> Co-authored-by: Saikrishnan K <53394202+K-Saikrishnan@users.noreply.github.com>
2023-10-19 17:12:55 -05:00
.SYNOPSIS
Pulls the registry keys for the given toggle switch and checks whether the toggle should be checked or unchecked
.PARAMETER ToggleSwitch
The name of the toggle to check
.OUTPUTS
Boolean to set the toggle's status to
Test 2023 7 20 (#917) * Remove Edge from Start Menu and Desktop (#898) * Update edgeremoval.bat * Fix Edge not being deleted from Desktop * Compile Winutil * fix yubikey users service * Compile Winutil * AJRouter and Kiosk Disable * Compile Winutil * TermService enable This service will hang when applying tweaks. Changing to Auto from Manual * Compile Winutil * Fix bug with Telemetry Tweak services should NOT be tweaked here * dupe tweak removal * hibernate off and delete * Compile Winutil * Cleaning Windows Update Folder * Compile Winutil * GameDVR Fix * Compile Winutil * Fixed consistency in variable names and values inside edgeremoval.bat (#902) * Compile Winutil * add spdx license * Compile Winutil * Updated Dark mode check (#904) * Compile Winutil * Update Dark Mode Check updated the theme check to use the existing function * Description update Updated Description --------- Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com> * Compile Winutil * fixes #569 * Compile Winutil * Added Bing Search toggle plus some support functions (#908) * Compile Winutil * Update winget.ps1 * Compile Winutil * Fix Winget Install * Compile Winutil * Update Install-WinUtilWinget.ps1 * Compile Winutil * Update Install-WinUtilWinget.ps1 * Compile Winutil * Update Install-WinUtilWinget.ps1 * Compile Winutil * Winget fixes * Compile Winutil --------- Co-authored-by: Antun Nitraj <antnitraj@gmail.com> Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com> Co-authored-by: DeveloperDurp <developerdurp@durp.info> Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com>
2023-07-27 16:06:41 -05:00
#>
Param($ToggleSwitch)
Test 2023 10 24 (#1176) * Compile Winutil * Update README.md (#1142) * Update README.md * Update README.md Update the README.md to be more precise & clear. Fix up grammatical mistakes, allow users to figure out their issues easier. Fix crediting of IRM execution script. * Update README.md * Compile Winutil * replacing the hard-coded paths for windows dir (#1126) * Changed version of python for winget to 3.12 (#1137) * Compile Winutil * Added Programs to the Install List (#1143) * Added the checkboxes of what I want to add * Added duplicati * Added KDE Connect * Added OpenVPN Connect * Added Oracle Virtual Box * Added Paint.net * Fixed an error spotted in the KDE Connect package names * Added the checkboxes into inputXML.xaml * Added the package details to config\applications.json * Reverted changes from winutil --------- Co-authored-by: Chris Titus <contact@christitus.com> * Compile Winutil * New Section: Customize Preferences (inside tweaks section) (#1163) * convert numlock on startup checkboxs into toggle button * convert verboselogon checkbox into toggle button * gui changes : added new section, new style for toggle buttons * convert showfileextentions checkbox into toggle button * convert mouse acceleration checkboxs into togglebutton * manor changes : cleanup, adding tooltips * fix style of toggle tweaks added new style 'labelfortweaks' that fix sytle and give mouse hover effect like previous tweaks that are using checkbox style but here for toggle tweaks we are using label and to make other tweaks style 'labelfortweaks' sytle is used. it mimic the style of checkbox style --------- Co-authored-by: Chris Titus <contact@christitus.com> * Compile Winutil * add Thunderbird (#1165) * Compile Winutil * Update the screenshot in README w/ dark mode (#1173) * took a pr on main and pulling it to test (#1175) * Add Session messenger to the applications list. (#1166) * Update applications.json * Update inputXML.xaml * Compile Winutil --------- Co-authored-by: charlescgs <135472912+charlescgs@users.noreply.github.com> Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com> --------- Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com> Co-authored-by: aim <aimansadiqrahman@gmail.com> Co-authored-by: edelvarden <42596339+edelvarden@users.noreply.github.com> Co-authored-by: dass2608 <139251779+dass2608@users.noreply.github.com> Co-authored-by: Inventhrice <45127310+Inventhrice@users.noreply.github.com> Co-authored-by: Padsala Tushal <57517785+padsalatushal@users.noreply.github.com> Co-authored-by: Antun Nitraj <antnitraj@gmail.com> Co-authored-by: Meen Beese <meenbeese@tutanota.com> Co-authored-by: charlescgs <135472912+charlescgs@users.noreply.github.com>
2023-11-14 15:45:48 -06:00
[FEAT] TweakToggles logik overhaul (#3014) * move logic to json template - remove Invoke-WPFToggle.ps1 - generalize Get-WinUtilToggleStatus - add bingsearch reg key for testing - use Invoke-WinUtilTweaks for actions - replace Add-Click with checked & unchecked to make undo work * add reg params for toggles into tweaks.json - add all reg keys to tweaks.json into existing toggle entry - remove unneeded scripts * fix HKU - load HKU if needed (for tweaks & GetToggleStatus) - remove unneeded Invoke-WinUtilNumLock - has loaded HKU does not load/not stay loaded * add a lot of error handling * Bugfix: New-PSDrive seems to return the "hku" itself so weirdly gets prepended to the return value so the result becomes ("hku", $false). In powershell pretty much every variable that exists is interpreted as $true so the toggle for numlock got incorrectly checked * globally fix HKU error & minimize console feedback - fix HKU issue globally - remove some console logs, change some others to write-debug * update Explorerrefresh - change Invoke-WinUtilExplorerRefresh to handle refresh and restart - add restart logic to window snapping Flyout & Suggestions - rename Invoke-WinUtilExplorerRefresh to Invoke-WinUtilExplorerUpdate * add explorer restart where needed to take effect add explorer restart logic for hidden files + Fileextension toggles * fix missing theme change logic in darkmode toggle * fix window snapping - fix issue defining WindowArrangementActive as dword instead of string * fix bing search - switch bing search enabled/disabled values * add a little bit of error handling - add error handling for Get-WinUtilToggleStatus --------- Co-authored-by: Marterich <47688561+Marterich@users.noreply.github.com>
2024-12-05 21:24:36 -06:00
$ToggleSwitchReg = $sync.configs.tweaks.$ToggleSwitch.registry
try {
if (($ToggleSwitchReg.path -imatch "hku") -and !(Get-PSDrive -Name HKU -ErrorAction SilentlyContinue)) {
$null = (New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS)
if (Get-PSDrive -Name HKU -ErrorAction SilentlyContinue) {
Write-Debug "HKU drive created successfully"
} else {
Write-Debug "Failed to create HKU drive"
}
}
} catch {
Write-Error "An error occurred regarding the HKU Drive: $_"
return $false
}
if ($ToggleSwitchReg) {
$count = 0
foreach ($regentry in $ToggleSwitchReg) {
try {
$regstate = (Get-ItemProperty -path $regentry.Path).$($regentry.Name)
if ($regstate -eq $regentry.Value) {
$count += 1
Write-Debug "$($regentry.Name) is true (state: $regstate, value: $($regentry.Value), original: $($regentry.OriginalValue))"
} else {
Write-Debug "$($regentry.Name) is false (state: $regstate, value: $($regentry.Value), original: $($regentry.OriginalValue))"
}
} catch {
Write-Error "An error occurred while accessing registry entry $($regentry.Path): $_"
}
}
if ($count -eq $ToggleSwitchReg.Count) {
Write-Debug "$($ToggleSwitchReg.Name) is true (count: $count)"
return $true
} else {
Write-Debug "$($ToggleSwitchReg.Name) is false (count: $count)"
return $false
}
} else {
return $false
}
Test 2024 03 30 (#1852) * Winget Sources fix (#1773) - Sometimes, if Winget is installed under user-scope, the source isn't properly installed so that the Admin user can properly use Winget. - This change installs the sources directly from the Winget CDN. - Fixes #1771 https://github.com/microsoft/winget-cli/discussions/3258#discussioncomment-5951658 * Compile Winutil * Finished conversion of DISM commands into DISM cmdlets (#1776) * Continue conversion Began 2nd stage of DISM command conversion. Almost all commands have been replaced by cmdlets * Continue conversion (part 2) Finished part 2 of DISM command to cmdlet conversion * Add New Toggle to Disable/Enable Widgets found in Taskbar (#1768) * Compile Winutil * Fix Search Box Not Showing Apps/Tweaks Checkboxes When typing out Capital-Letters (#1770) * Compile Winutil * Add Microsoft Power Automate and Swift toolchain (#1774) * Add power automate * Add swift toolchain * Compile Winutil * Restart Explorer after Applying/Undoing Classic Right-Click Advance Tweak (#1778) In general, I've added two lines of code to get the explorer process using 'Get-Process', then passed the process object into 'Stop-Process', Windows will automatically restart explorer, so there's no need to run a new process for explorer. Note: restarting explorer in the UndoScript might not be necessary, as it works just fine without it, that's according to the tests done by the author of this commit. * Compile Winutil * editing edgeremoval.ps1 (#1834) * editing edgeremoval.ps1 * Compile Winutil --------- Co-authored-by: DaEpicR <DaEpicR@users.noreply.github.com> * Compile Winutil * Update Github Actions Auto Close Issues (#1801) * Update Github Actions Auto Close Issues * Add try-catch & Error Logging in Github Actions Auto Close Issues * Add a Break Statement To Skip Checking The Remaining Labels of an Issue in Github Actions Auto Close Issues * Add tweak (#1837) * Compile Winutil * Disable SCOOBE in WPFTweaksTele (#1832) * Compile Winutil * Fix 'Disable Storage Sense' Tweak in 'tweaks.json' File (#1843) This was pointed out in GitHub issue https://github.com/ChrisTitusTech/winutil/issues/1838 * Compile Winutil * Add 'UndoScript' to 'Enable End Task With Right Click' Tweak in 'tweaks.json' File (#1842) * Compile Winutil * - Changed version check for Winget to keep Winget updated to latest version and a couple formatting fixes. (#1829) * Compile Winutil * Add 'UndoScript' to 'Disable Hibernation' Tweak in 'teaks.json' File (#1799) * Compile Winutil * Added Requested Apps and Update Command Example in 'README.md' File (#1795) * Add 'UltraVNC' App to 'application.json' File * Update Command Example under sub-section 'Automation' This Commit and its changes are related to issue #1767 , url for issue: https://github.com/ChrisTitusTech/winutil/issues/1767 * Add 'OrcaSlicer' App to 'application.json' File * Add 'Tixati' App to 'application.json' File * Add 'Unigram' App to 'application.json' File * Add 'PDFgear' App to 'application.json' File * Add 'Windows Firewall Control' App to 'application.json' File * Add 'VistaSwitcher' App to 'application.json' File * Add 'Windows Auto Dark Mode' App to 'application.json' File * Add 'CapFrameX' App to 'application.json' File * Update The Link for 'Unigram' App in 'application.json' File * Add 'Magic Wormhole' App to 'application.json' File * Compile Winutil * Add apps from #250 (#1787) * Add SQL management * Add java runtimes * Add azure data studio * Compile Winutil * Update inputXML.xaml (#1845) - Added UseLayoutRounding="True" - This may help fix some cases where text may look blurry on screen for some people. * Compile Winutil * A Temporary Fix to Compilation Program in 'Compile.ps1' Script (#1844) For whatever reason, Compiling using the 'Compile.ps1' Script when there's a Single Quote, in the description of an App for example, it'll try "escaping" it by adding another Single Quote, which's kind of weird. Before there was an Apostrophe, and it'll Compile into Question Marks, probably because the Compile Script doesn't know what an Apostrophe is, or it can't escape it (or for another reason, didn't dig deeper into it), in the end I've made it neither an Apostrophe nor a Single Quote, just the sentence without contractions (Without shortening by combining words). * Compile Winutil * Update Winget Install and Uninstall / Add NuGet and Microsoft.Winget.Client Modules (#1830) * - Changed how WinGet installs and uninstalls are handled, by utilizing and . * Update Winget Install and Uninstall / Add NuGet and Microsoft.Winget.Client Modules - Fixed commands for installing and uninstalling programs through WinGet. - Added NuGet Package Providers (thanks @Marterich) - Added Microsoft.WinGet.Client Module (thanks @Marterich) * Compile Winutil * Reopen #1747 PR (#1818) * Add fxsound * Add simplenote * Add flow launcher * Add CMake * Add musescore * Add jpegview * Add explorer patcher * Add lockhunter * Add BRU * Add spacesniffer * Add Quick Look * Add harmonoid * Add revolt * Add link shell extensions * Add WizFile * Add HWMonitor * Add XnView * Add tabby.sh * Add signalRGB * Add autoruns * Fix typo for 'Autoruns' App in 'applications.json' File * Remove 'Explorer Patcher' App in 'applications.json' File as mentioned by Chris's Feedback on https://github.com/ChrisTitusTech/winutil/pull/1818 PR, Explorer Patcher is known to cause Stability Related Issues to Users who use it, removing it from the Applications List would be a better/wiser decision. * Re-Add 'fxsound' App after Resolving Merge Conflict * Re-Add 'tabby.sh' App after Resolving Merge Conflict --------- Co-authored-by: ModernTTY <165050080+ModernTTY@users.noreply.github.com> * Compile Winutil * Fix Github Actions Auto Close Issues not leaving Issues Open (#1847) * Compile Winutil * Fix Robocopy Not Copying for Users who have a Space in their name (#1851) This was pointed out in https://github.com/ChrisTitusTech/winutil/issues/1848 issue * Compile Winutil * bug fixes from bad pr * Compile Winutil * Better JSON Parsing for Compile Script!! (#1850) * Better JSON Parsing for Compile Script!! Rendering Special XML Character should be possible when parsing json files that have some of these special characters, and without the need to worry about them. Try these changes to see what will be affected, and what won't be. * Undo #1844 PR Changes The problem that #1844 PR Tried to resolve temporarly, should now be fixed permanently with the previous changes to 'Compile.ps1' Script. * Compile Winutil * OO Shutup 10 Tweaks revamped (#1828) * Add new OOSU10 configs * Removed old OOSU config, added install and uninstall calls for the new conrfigs * change filenames, centralize logic in Invoke-WPFOOSU * Change Config Paths to the CTT main repo * removed whitespace * Add -Wait to avoid race condition when OOSU is run together with temp file cleanup --------- Co-authored-by: Chris Titus <contact@christitus.com> * Compile Winutil * Add catch for restore point errors * Compile Winutil --------- Co-authored-by: Rux <jonathan.e.rux@ruxunderscore.com> Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com> Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com> Co-authored-by: Mr.k <mineshtine28546271@gmail.com> Co-authored-by: ModernTTY <165050080+ModernTTY@users.noreply.github.com> Co-authored-by: Straight <107145976+DaEpicR@users.noreply.github.com> Co-authored-by: DaEpicR <DaEpicR@users.noreply.github.com> Co-authored-by: Consejos Tecnológicos de Edu <139326298+lCTdE@users.noreply.github.com> Co-authored-by: Martin Wiethan <47688561+Marterich@users.noreply.github.com>
2024-04-20 16:38:43 -05:00
}