Riley Testut
850b6890e2
Fixes AltStore still being refreshing even after pledge expires
2024-12-26 21:15:29 +05:30
Riley Testut
e370034e0b
Fixes showing Patreon page when installing non-Patreon apps
2024-12-26 21:15:29 +05:30
Riley Testut
8add1d0f4a
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).
2024-12-26 21:15:29 +05:30
Riley Testut
ba94886ba9
Supports downloading apps from locked Patreon posts
...
Uses cached Patreon session cookies to access post attachments despite no official API support.
2024-12-26 21:15:29 +05:30
Riley Testut
dddb9c5ddb
Limits installed Patreon apps that no longer have active pledge
...
Patreon apps with inactive pledges still support these actions:
* Backed up
* Deactivated
* Export backup
2024-12-26 21:15:29 +05:30
Riley Testut
389af4d5e6
Switches from StoreApp.isBeta to isPledged to determine whether app is visible
...
If StoreApp.isHiddenWithoutPledge == false (default), we’ll still show the app.
2024-12-26 21:15:29 +05:30
Riley Testut
aa9fda7a97
[AltStoreCore] Renames PatreonAccount.isPatron to isAltStorePatron
2024-12-26 21:15:29 +05:30
Riley Testut
9f7f73f835
Updates apps’ pledge status upon (de-)authenticating with Patreon
...
No longer deactivates apps whenever pledge expires.
2024-12-26 21:15:29 +05:30
Riley Testut
947b31881f
[AltStoreCore] Caches Patreon session cookies from in-app browser
...
Allows us to download apps from locked Patreon posts.
2024-12-26 21:15:29 +05:30
Riley Testut
7e232cafbe
[AltStoreCore] Adds AppProtocol.storeApp
...
Simplifies retrieving the associated StoreApp for an app.
2024-12-26 21:15:29 +05:30
Riley Testut
91ea34110b
Verifies StoreApp.isPledged status when updating source
2024-12-26 21:15:29 +05:30
Riley Testut
47b69b40aa
[AltStoreCore] Adds Pledge, PledgeReward, and PledgeTier
...
Allows us to cache pledges for current user, which can be used to determine if user has access to Patreon-only apps.
2024-12-26 21:15:29 +05:30
Riley Testut
99a3746e1a
[AltStoreCore] Refactors PatreonAPI to reduce duplicate logic
2024-12-26 21:15:29 +05:30
Riley Testut
6ba642335b
[AltStoreCore] Updates StoreApp to support Patreon-exclusive apps
2024-12-26 21:15:29 +05:30
Riley Testut
869b2dc92a
[AltStoreCore] Generalizes Source.sourceID(from:) logic into URL.normalized()
...
Allows comparing URLs that may have slight (but irrelevant) differences (e.g. trailing slashes).
2024-12-26 21:15:29 +05:30
Riley Testut
f692da047a
[AltJIT] Updates version to 1.0.1 (2)
2024-12-26 21:15:29 +05:30
Riley Testut
f352aaf9c5
[AltServer] Updates app version to 1.7.1 (81)
2024-12-26 21:15:29 +05:30
Riley Testut
299b5ca04c
[AltServer] Supports changing AltJIT timeout via defaults CLI
2024-12-26 21:15:29 +05:30
Riley Testut
d83891d794
[AltJIT] Adds --timeout option to change connection timeout
2024-12-26 21:15:29 +05:30
Riley Testut
1b20f17052
[AltJIT] Extends RSD tunnel + debug server timeouts to 90 seconds
2024-12-26 21:15:29 +05:30
Riley Testut
583de6c0ec
Fixes deadlock when getting/setting progress for an app
2024-12-26 21:15:29 +05:30
Riley Testut
140193c040
Updates build version to 17
2024-12-26 21:15:29 +05:30
Riley Testut
50076f6e96
Updates placeholder text for SourcesViewController
2024-12-26 21:15:29 +05:30
Riley Testut
a53d45b1dc
Uses constant 5pt corner radius for non-rounded screenshots
...
Fixes iPad corners appearing too rounded.
2024-12-26 21:15:29 +05:30
Riley Testut
65562602af
Fixes incorrectly centering screenshot thumbnail when there’s only one visible initially
2024-12-26 21:15:29 +05:30
Riley Testut
c20ed78cec
Updates app version to 2.0b5 (16)
2024-12-26 21:15:29 +05:30
Riley Testut
2fa9dbb859
[AltStoreCore] Migrates Core Data model from v13 to v14
2024-12-26 21:15:29 +05:30
Riley Testut
edf3281eee
Shrinks AppCardCollectionViewCell height if there are no screenshots
2024-12-26 21:15:29 +05:30
Riley Testut
b89d086e79
Fixes AppBannerView sticking to safe area when scrolling
2024-12-26 21:15:29 +05:30
Riley Testut
67271c479c
Reduces spacing between apps in BrowseViewController
2024-12-26 21:15:29 +05:30
Riley Testut
7977267107
Replaces BrowseCollectionViewCell with AppCardCollectionViewCell
...
* Handles dynamic screenshot sizes
* Allows swiping through screenshots
* Supports iPhone + iPad screenshots
2024-12-26 21:15:29 +05:30
Riley Testut
a49e16f591
Supports both iPhone + iPad screenshots
...
Prefers showing screenshots for current device, but falls back to all screenshots if there are no relevant ones.
2024-12-26 21:15:29 +05:30
Riley Testut
57059967c6
Improves paging screenshots with different aspect ratios
...
We now page by the smallest screenshot width to ensure we never overshoot an item.
2024-12-26 21:15:29 +05:30
Riley Testut
c15459e313
Supports viewing full screen app screenshots from AppViewController
...
[Missed] Uses layout config for PreviewAppScreenshots
2024-12-26 21:15:29 +05:30
Riley Testut
86ec59d204
Accurately displays dynamically-sized screenshots in AppViewController
2024-12-26 21:15:29 +05:30
Riley Testut
6fc9ad010d
[AltStoreCore] Updates DatabaseManager to support #Preview macro
...
Synchronously loads database via startForPreview(), and also erases database for DEBUG builds.
2024-12-26 21:15:29 +05:30
Riley Testut
932e66deca
[AltStoreCore] Adds AppScreenshot to support dynamically-sized screenshots
...
Preserves StoreApp.imageURL field in database model for backwards compatibility.
2024-12-26 21:15:29 +05:30
Riley Testut
59a72ad096
[AltTests] Fixes compiler errors
2024-12-26 21:15:29 +05:30
Riley Testut
d7384cfae9
[AltStoreCore] Generates Source.identifier from sourceURL
2024-12-26 21:15:29 +05:30
Riley Testut
e33a40ecb1
[AltStoreCore] Fixes ALTAppPrivacyPermission.synthesizedName for legacy permissions
2024-12-26 21:15:29 +05:30
Riley Testut
21b2a869a1
[Shared] Includes CodingPath in Source errors’ debug description (if available)
2024-12-26 21:15:29 +05:30
Riley Testut
34c503da4b
Revises appPermissions JSON format
...
• Split into `entitlements` and `privacy` sections
• `entitlements` is an array of entitlement keys
• `privacy` is a dictionary mapping UsageDescription keys to their descriptions
2024-12-26 21:15:29 +05:30
Riley Testut
cd42cc827f
[AltStoreCore] Fixes DatabaseManager.startForPreview() deadlock
2024-12-26 21:15:29 +05:30
Riley Testut
83d8d2e38a
Fixes “Add/Remove Source” button title not updating after removing source
2024-12-26 21:15:29 +05:30
Riley Testut
c3820136a6
Fixes incorrect Sources tab background color in dark mode
2024-12-26 21:15:29 +05:30
Riley Testut
89347ffffa
Fixes misplaced back button
2024-12-26 21:15:29 +05:30
Riley Testut
98125e93aa
Adds AddSourceViewController to add sources by URL or from list of recommended sources
2024-12-26 21:15:29 +05:30
Riley Testut
2aebaf80e0
Updates Browse tab icon
2024-12-26 21:15:29 +05:30
Riley Testut
1d19a31a86
Fixes “Unable to satisfy constraints” warnings for SourcesViewController
2024-12-26 21:15:29 +05:30
Riley Testut
ac8f82c30a
Updates incorrect Main.storyboard frames
2024-12-26 21:15:29 +05:30