Commit Graph

691 Commits

Author SHA1 Message Date
Riley Testut
0badb0a091 Changes NewsCollectionViewCell image aspect ratio to 3:2
Also updates fonts to use dynamic text styles.
2023-12-07 16:45:42 -06:00
Riley Testut
090ab36ff3 Merge branch 'patreon' 2023-12-01 17:20:24 -06:00
Riley Testut
fe3d8a4edb Hides “UPDATE” option for Patreon apps with expired pledges 2023-12-01 16:50:48 -06:00
Riley Testut
42302786e2 Disables actions for Patreon apps with expired pledges instead of hiding them 2023-12-01 16:50:48 -06:00
Riley Testut
92f3be07f6 Downloads latest _available_ version when updating from AppViewController
Asks user to fall back to latest supported verson if version is not compatible with device’s iOS version.
2023-12-01 16:50:48 -06:00
Riley Testut
2c1ffedfe3 Designates Patreon apps with label + displays price (if provided) 2023-12-01 16:50:48 -06:00
Riley Testut
f9cff51d1c Supports updating apps from (almost) all AppBannerViews
Previously, you could only update apps from MyAppsViewController and AppViewController.
2023-12-01 16:50:48 -06:00
Riley Testut
5732da1f2c Fixes AltStore still being refreshing even after pledge expires 2023-12-01 16:50:48 -06:00
Riley Testut
a20950b693 Fixes showing Patreon page when installing non-Patreon apps 2023-12-01 16:50:48 -06:00
Riley Testut
2377ada199 Supports remotely disabling workaround for downloading Patreon attachments
In case our workaround for downloading Patreon post attachments breaks, we can remotely disable it and force AltStore to use its fallback instead (taking user to post directly).
2023-12-01 16:50:48 -06:00
Riley Testut
bd0220ea35 Supports downloading apps from locked Patreon posts
Uses cached Patreon session cookies to access post attachments despite no official API support.
2023-12-01 16:50:48 -06:00
Riley Testut
d9ebd21541 Limits installed Patreon apps that no longer have active pledge
Patreon apps with inactive pledges still support these actions:
* Backed up
* Deactivated
* Export backup
2023-12-01 16:49:56 -06:00
Riley Testut
2d267a1e99 Switches from StoreApp.isBeta to isPledged to determine whether app is visible
If StoreApp.isHiddenWithoutPledge == false (default), we’ll still show the app.
2023-12-01 16:49:56 -06:00
Riley Testut
28a93b82a9 [AltStoreCore] Renames PatreonAccount.isPatron to isAltStorePatron 2023-12-01 16:49:56 -06:00
Riley Testut
933cec99ce Updates apps’ pledge status upon (de-)authenticating with Patreon
No longer deactivates apps whenever pledge expires.
2023-12-01 16:49:56 -06:00
Riley Testut
5cb283dc95 [AltStoreCore] Caches Patreon session cookies from in-app browser
Allows us to download apps from locked Patreon posts.
2023-12-01 16:49:56 -06:00
Riley Testut
45da6b626f [AltStoreCore] Adds AppProtocol.storeApp
Simplifies retrieving the associated StoreApp for an app.
2023-12-01 16:49:56 -06:00
Riley Testut
a1038d8850 Verifies StoreApp.isPledged status when updating source 2023-12-01 16:49:56 -06:00
Riley Testut
58be8ffb2b Fixes deadlock when getting/setting progress for an app 2023-11-02 15:00:32 -05:00
Riley Testut
80a73e6b40 Updates placeholder text for SourcesViewController 2023-10-23 09:26:37 -05:00
Riley Testut
151d2e5c8c Uses constant 5pt corner radius for non-rounded screenshots
Fixes iPad corners appearing too rounded.
2023-10-20 17:15:27 -05:00
Riley Testut
3120c036c8 Fixes incorrectly centering screenshot thumbnail when there’s only one visible initially 2023-10-20 17:13:28 -05:00
Riley Testut
f11cef5352 Shrinks AppCardCollectionViewCell height if there are no screenshots 2023-10-19 17:18:48 -05:00
Riley Testut
fd11278f03 Fixes AppBannerView sticking to safe area when scrolling 2023-10-19 16:48:58 -05:00
Riley Testut
a6bc4b5d5f Merge branch 'revised_source_json'
# Conflicts:
#	AltStore.xcodeproj/project.pbxproj
#	AltStore/App Detail/AppContentViewController.swift
#	AltStore/App Detail/AppViewController.swift
#	AltStore/Base.lproj/Main.storyboard
#	AltStoreCore/Model/DatabaseManager.swift
2023-10-19 16:43:50 -05:00
Riley Testut
a018803afc Reduces spacing between apps in BrowseViewController 2023-10-19 16:24:56 -05:00
Riley Testut
2822c52f11 Replaces BrowseCollectionViewCell with AppCardCollectionViewCell
* Handles dynamic screenshot sizes
* Allows swiping through screenshots
* Supports iPhone + iPad screenshots
2023-10-19 16:24:56 -05:00
Riley Testut
cd67222237 Supports both iPhone + iPad screenshots
Prefers showing screenshots for current device, but falls back to all screenshots if there are no relevant ones.
2023-10-19 16:24:56 -05:00
Riley Testut
0c14de4474 Improves paging screenshots with different aspect ratios
We now page by the smallest screenshot width to ensure we never overshoot an item.
2023-10-19 16:24:56 -05:00
Riley Testut
20417f39ba Supports viewing full screen app screenshots from AppViewController
[Missed] Uses layout config for PreviewAppScreenshots
2023-10-19 16:24:56 -05:00
Riley Testut
3656bf165b Merge branch 'sources_tab'
# Conflicts:
#	AltStore.xcodeproj/project.pbxproj
2023-10-19 14:18:43 -05:00
Riley Testut
df2a8f2b93 Merge branch 'logging' 2023-10-19 14:16:50 -05:00
Riley Testut
0eac8f885d Fixes “Add/Remove Source” button title not updating after removing source 2023-10-19 14:11:24 -05:00
Riley Testut
8a0d27488e Fixes incorrect Sources tab background color in dark mode 2023-10-19 13:39:15 -05:00
Riley Testut
3cc991b476 [Apps] Moves source JSON files to separate repo 2023-10-19 12:38:52 -05:00
Riley Testut
253aff29e9 Fixes misplaced back button 2023-10-18 19:11:11 -05:00
Riley Testut
0659d83afb Adds AddSourceViewController to add sources by URL or from list of recommended sources 2023-10-18 18:56:40 -05:00
Riley Testut
d85905ba61 Updates Browse tab icon 2023-10-18 17:18:03 -05:00
Riley Testut
22d204be6b Supports exporting OSLogs from ErrorLogViewController 2023-10-18 14:28:36 -05:00
Riley Testut
a092c99b84 Logs misc. events with OSLog
* Discovering AltServers
* Clearing app cache
* Updating Friend Zone Patrons
2023-10-18 14:28:36 -05:00
Riley Testut
82d4e4d4d8 Logs AltJIT-related events with OSLog 2023-10-18 14:28:36 -05:00
Riley Testut
bf0a5b9e2d Logs Fugu14-related events with OSLog 2023-10-18 14:28:17 -05:00
Riley Testut
2133b6240d Logs sideloading-related events with OSLog 2023-10-18 14:28:17 -05:00
Riley Testut
5a79eefc70 Fixes “Unable to satisfy constraints” warnings for SourcesViewController 2023-10-17 15:55:51 -05:00
Riley Testut
b8b46f5280 Updates incorrect Main.storyboard frames 2023-10-17 14:50:35 -05:00
Riley Testut
1b56ac708f Refactors SourceViewController into dedicated tab
* Updates UI to use source icons + tint colors
* Adds Edit button + swipe actions
2023-10-17 14:49:13 -05:00
Riley Testut
9930f62f2f Uses uniform height for SourceDetailContentViewController News items (iOS 17+) 2023-10-16 19:12:42 -05:00
Riley Testut
1a5ffcdd31 Adjusts illegible Source tint colors for SourceDetailViewController 2023-10-16 19:10:34 -05:00
Riley Testut
d890af0160 Adds AppBannerView.style to switch between app and source styles
`app` banners have rounded rect icons and use a lighter version of tint color as background, while `source` banners have circular icons and use the original tint color as background.
2023-10-16 19:03:04 -05:00
Riley Testut
ff1e221c41 Adds UIColor.adjustedForDisplay() to display illegible tint colors
Adjusts illegible tint colors so that they can be displayed in the UI, e.g. by making them brighter or darker.
2023-10-16 19:03:04 -05:00