diff --git a/revanced.ps1 b/revanced.ps1 index f5dbde5..976e725 100644 --- a/revanced.ps1 +++ b/revanced.ps1 @@ -168,7 +168,7 @@ function main { $apks = (Get-ChildItem *.apk).Name [String]$selectedApk = '' if ($apks.Length -eq 0) {throw "No YouTube apk files found!"} - elseif ($apks.Length -eq 1) {$selectedApk = $apks[0].Name} + elseif ($apks.getType().Name -eq 'String') {$selectedApk = $apks} else { $selectedApk = (renderForm -items $apks -label "Select apk file to patch" -title "Installer for ReVanced - apk selector" -mode One) if (-not $selectedApk) {throw "No apk selected!"} @@ -178,9 +178,23 @@ function main { $integrationsList = New-Object System.Collections.ArrayList + class Integration { + [String] $id + [String] $description + + Integration([String] $_id, [String] $_description) { + $this.id = $_id + $this.description = $_description + } + + [String] ToString() { + return "$($this.id) - $($this.description)" + } + } + foreach ($i in (execJava -jar .\app\revanced-cli.jar -b .\app\revanced-patches.jar -l)) { - $i = $i.ToString().substring(6) - [void] $integrationsList.Add($i) + $i = $i.ToString().substring(6).split("`t") + [void] $integrationsList.Add([Integration]::new($i[0].TrimStart(), $i[1])) } # integrations selector @@ -189,17 +203,17 @@ function main { [System.Collections.ArrayList]$savedExclusions = New-Object System.Collections.ArrayList $savedExclusionsNames = $config.excluded foreach ($i in $integrationsList) { - $integrationID = $i.Split(':')[0] - if (($savedExclusionsNames.Count -gt 1) -and $savedExclusionsNames.Contains($integrationID)) { - $savedExclusions.Add($true) - $savedExclusionsNames.Remove($integrationID) + if (($savedExclusionsNames.Count -gt 1) -and $savedExclusionsNames.Contains($i.id)) { + [void] $savedExclusions.Add($true) + [void] $savedExclusionsNames.Remove($integrationID) } else { [void] $savedExclusions.Add($false) } } + foreach ($i in (renderForm -items $integrationsList -label "Select integrations to exclude" -title "Installer for ReVanced - integrations" -mode MultiExtended -selected $savedExclusions)) { - [void] $excludedIntegrations.Add($i.Split(':')[0]) + [void] $excludedIntegrations.Add($i.Split(' ')[0]) #FIXME: hacky way to do this, but it works } $config.excluded = $excludedIntegrations