Riley Testut
870ef0c47f
Moves caption below app + developer name in AppCardCollectionViewCell
2024-12-26 21:15:29 +05:30
Riley Testut
5c808ec59e
Shows app’s source icon on AppBannerView
...
Excluding contexts where it is redundant (e.g. source detail page).
2024-12-26 21:15:29 +05:30
Riley Testut
20b424c97c
Supports filtering apps in BrowseViewController by category
2024-12-26 21:15:29 +05:30
Riley Testut
71eb77cfda
Allows changing BrowseViewController sort order
2024-12-26 21:15:29 +05:30
Riley Testut
5cb40de113
Changes BrowseViewController’s search bar placement to inline
2024-12-26 21:15:29 +05:30
Riley Testut
9716ee6152
Limits updating sources to app launch and manually via pull-to-refresh
2024-12-26 21:15:29 +05:30
Riley Testut
cf09843538
Asks user to review permissions when installing/updating apps
...
When installing, all entitlements will be shown. When updating, only _added_ entitlements will be shown.
2024-12-26 21:15:29 +05:30
Riley Testut
d625b381d9
Fixes accidentally saving CancellationErrors to error log
2024-12-26 21:15:29 +05:30
Riley Testut
05332ca122
Clears image cache with “Clear Cache…” option in Settings
...
Also increases image cache size to 512MB.
2024-12-26 21:15:29 +05:30
Riley Testut
be31611cb7
Adopts automatic status bar tinting on iOS 17 for App + Source detail screens
2024-12-26 21:15:29 +05:30
Riley Testut
3773a051ab
Changes NewsCollectionViewCell image aspect ratio to 3:2
...
Also updates fonts to use dynamic text styles.
2024-12-26 21:15:29 +05:30
Riley Testut
cccbe3a80b
Hides “UPDATE” option for Patreon apps with expired pledges
2024-12-26 21:15:29 +05:30
Riley Testut
0ad9ceaa95
Disables actions for Patreon apps with expired pledges instead of hiding them
2024-12-26 21:15:29 +05:30
Riley Testut
8946ab8a65
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.
2024-12-26 21:15:29 +05:30
Riley Testut
a981201016
Designates Patreon apps with label + displays price (if provided)
2024-12-26 21:15:29 +05:30
Riley Testut
5da80863b9
Supports updating apps from (almost) all AppBannerViews
...
Previously, you could only update apps from MyAppsViewController and AppViewController.
2024-12-26 21:15:29 +05:30
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
583de6c0ec
Fixes deadlock when getting/setting progress for an app
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
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
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
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
Riley Testut
b03b7bfe68
Refactors SourceViewController into dedicated tab
...
* Updates UI to use source icons + tint colors
* Adds Edit button + swipe actions
2024-12-26 21:15:29 +05:30