mirror of
https://github.com/SideStore/SideStore.git
synced 2026-02-09 06:43:25 +01:00
Adds “Install AltDaemon” option to settings (jailbreak only)
Exports AltDaemon that can be installed with Filza or another file/package manager.
This commit is contained in:
@@ -18,6 +18,7 @@ extension SettingsViewController
|
||||
case account
|
||||
case patreon
|
||||
case backgroundRefresh
|
||||
case jailbreak
|
||||
case instructions
|
||||
case credits
|
||||
case debug
|
||||
@@ -167,6 +168,16 @@ private extension SettingsViewController
|
||||
case .backgroundRefresh:
|
||||
settingsHeaderFooterView.secondaryLabel.text = NSLocalizedString("Automatically refresh apps in the background when connected to the same WiFi as AltServer.", comment: "")
|
||||
|
||||
case .jailbreak:
|
||||
if isHeader
|
||||
{
|
||||
settingsHeaderFooterView.primaryLabel.text = NSLocalizedString("JAILBREAK", comment: "")
|
||||
}
|
||||
else
|
||||
{
|
||||
settingsHeaderFooterView.secondaryLabel.text = NSLocalizedString("AltDaemon allows AltStore to install and refresh apps without a computer. You can install AltDaemon using Filza or another file manager.", comment: "")
|
||||
}
|
||||
|
||||
case .instructions:
|
||||
break
|
||||
|
||||
@@ -320,6 +331,7 @@ extension SettingsViewController
|
||||
{
|
||||
case .signIn: return (self.activeTeam == nil) ? 1 : 0
|
||||
case .account: return (self.activeTeam == nil) ? 0 : 3
|
||||
case .jailbreak: return UIDevice.current.isJailbroken ? 1 : 0
|
||||
default: return super.tableView(tableView, numberOfRowsInSection: section.rawValue)
|
||||
}
|
||||
}
|
||||
@@ -331,8 +343,9 @@ extension SettingsViewController
|
||||
{
|
||||
case .signIn where self.activeTeam != nil: return nil
|
||||
case .account where self.activeTeam == nil: return nil
|
||||
case .jailbreak where !UIDevice.current.isJailbroken: return nil
|
||||
|
||||
case .signIn, .account, .patreon, .credits, .debug:
|
||||
case .signIn, .account, .patreon, .jailbreak, .credits, .debug:
|
||||
let headerView = tableView.dequeueReusableHeaderFooterView(withIdentifier: "HeaderFooterView") as! SettingsHeaderFooterView
|
||||
self.prepare(headerView, for: section, isHeader: true)
|
||||
return headerView
|
||||
@@ -347,8 +360,9 @@ extension SettingsViewController
|
||||
switch section
|
||||
{
|
||||
case .signIn where self.activeTeam != nil: return nil
|
||||
case .jailbreak where !UIDevice.current.isJailbroken: return nil
|
||||
|
||||
case .signIn, .patreon, .backgroundRefresh:
|
||||
case .signIn, .patreon, .backgroundRefresh, .jailbreak:
|
||||
let footerView = tableView.dequeueReusableHeaderFooterView(withIdentifier: "HeaderFooterView") as! SettingsHeaderFooterView
|
||||
self.prepare(footerView, for: section, isHeader: false)
|
||||
return footerView
|
||||
@@ -364,8 +378,9 @@ extension SettingsViewController
|
||||
{
|
||||
case .signIn where self.activeTeam != nil: return 1.0
|
||||
case .account where self.activeTeam == nil: return 1.0
|
||||
case .jailbreak where !UIDevice.current.isJailbroken: return 1.0
|
||||
|
||||
case .signIn, .account, .patreon, .credits, .debug:
|
||||
case .signIn, .account, .patreon, .jailbreak, .credits, .debug:
|
||||
let height = self.preferredHeight(for: self.prototypeHeaderFooterView, in: section, isHeader: true)
|
||||
return height
|
||||
|
||||
@@ -380,8 +395,9 @@ extension SettingsViewController
|
||||
{
|
||||
case .signIn where self.activeTeam != nil: return 1.0
|
||||
case .account where self.activeTeam == nil: return 1.0
|
||||
case .jailbreak where !UIDevice.current.isJailbroken: return 1.0
|
||||
|
||||
case .signIn, .patreon, .backgroundRefresh:
|
||||
case .signIn, .patreon, .backgroundRefresh, .jailbreak:
|
||||
let height = self.preferredHeight(for: self.prototypeHeaderFooterView, in: section, isHeader: false)
|
||||
return height
|
||||
|
||||
@@ -399,6 +415,14 @@ extension SettingsViewController
|
||||
{
|
||||
case .signIn: self.signIn()
|
||||
case .instructions: break
|
||||
case .jailbreak:
|
||||
let fileURL = Bundle.main.url(forResource: "AltDaemon", withExtension: "deb")!
|
||||
|
||||
let activityViewController = UIActivityViewController(activityItems: [fileURL], applicationActivities: nil)
|
||||
self.present(activityViewController, animated: true, completion: nil)
|
||||
|
||||
tableView.deselectRow(at: indexPath, animated: true)
|
||||
|
||||
case .credits:
|
||||
let row = CreditsRow.allCases[indexPath.row]
|
||||
switch row
|
||||
|
||||
Reference in New Issue
Block a user