Riley Testut
d5f910ff00
Adds missing throws to SaveState.awakeFromSync()
2023-08-11 18:57:28 -05:00
Riley Testut
d1643dbc8f
Throws SyncValidationError when downloading corrupted versions of “verified” SaveStates
...
After reviewing save states upon first launch, Delta will upload the verified game ID as metadata to ensure other devices don’t download remote versions with incorrect relationships.
2023-08-11 18:57:27 -05:00
Riley Testut
dc3a5b479c
[Contributors] Credits Chris Rittenhouse for Alternate App Icons
2023-08-11 15:58:43 -05:00
Riley Testut
b3d8dbc554
[ExpFeat] Fixes Controller Skin alternate app icon filename
2023-08-11 15:57:39 -05:00
Riley Testut
f3534e4415
[ExpFeat] Alternate App Icons ( #259 )
...
commit 34ed9726034adbb439515ccb3d576311603bfe2b
Author: Chris Rittenhouse <dev@litritt.com>
Date: Thu Aug 3 15:31:47 2023 -0400
Removes `experimentalFeatures` property from `Settings`
commit 4e31d22d56d68439a340707d2fdbac3763df1e3a
Author: Chris Rittenhouse <dev@litritt.com>
Date: Thu Aug 3 15:17:47 2023 -0400
Reorder icons
commit 7509eaa29946b622ce0ad920a740f0212db5e771
Author: Chris Rittenhouse <dev@litritt.com>
Date: Thu Aug 3 15:17:24 2023 -0400
Moves icon changing code to `AlternateAppIcons`
commit 84821ef99ded74c066563041618aec3c4acb30d7
Author: Chris Rittenhouse <dev@litritt.com>
Date: Thu Aug 3 14:33:15 2023 -0400
Fixes icon authors
commit 0b821830f09b434fa375c37a2504c21ee5f90bdb
Author: Chris Rittenhouse <dev@litritt.com>
Date: Fri Jul 21 01:44:00 2023 -0400
Adds comments for functional alternate app icon code
commit e8dd6165619bc143f13dde51e5160af2695ef17e
Author: Chris Rittenhouse <dev@litritt.com>
Date: Fri Jul 21 01:30:03 2023 -0400
Adds implementation for changing app icon
commit 1e07483d18d1e865804ae34d6011844b63cb33cc
Author: Chris Rittenhouse <dev@litritt.com>
Date: Fri Jul 21 01:28:24 2023 -0400
Adds Alternate App Icon experimental feature and options
commit 46ed2ce3ae9593d4cc95f29d6caa09f33f2ce62d
Author: Chris Rittenhouse <dev@litritt.com>
Date: Fri Jul 21 01:26:51 2023 -0400
Adds extension to handle retrieving app icon images
commit 9dddb5f98f4523e7877f97c66a5ae95e6513cc09
Author: Chris Rittenhouse <dev@litritt.com>
Date: Fri Jul 21 01:24:19 2023 -0400
Adds experimental features as a property of `Settings`
commit d74038fd418a0e6fcd45942cb67e722904fc3e24
Author: Chris Rittenhouse <dev@litritt.com>
Date: Fri Jul 21 01:23:02 2023 -0400
Adds alternate icon assets
Co-authored-by: Chris Rittenhouse <dev@litritt.com>
2023-08-10 19:46:08 -05:00
Riley Testut
061f5abd3e
Allows explicitly downloading corrupted record versions from RecordVersionsViewController
2023-08-10 19:33:27 -05:00
Riley Testut
be047b28a6
Fixes crash when restoring remote record without local version
2023-08-10 19:33:27 -05:00
Riley Testut
fcdd3c7840
Throws SyncValidationError when downloading corrupted Game or GameSave record
2023-08-10 19:33:27 -05:00
Riley Testut
ca8c2cb8c5
[ExpFeat] Adds “Review Save States” to fix save states associated with wrong game
2023-08-10 19:33:27 -05:00
Riley Testut
a9f15144ed
Repairs corrupted Game, GameSave, and SaveState relationships on initial launch
...
Automatically fixes Game and GameSaves, but requires user to manually review + fix all recent SaveStates.
2023-08-10 19:33:27 -05:00
Riley Testut
a80ac04650
Fixes corrupted Harmony database relationships after heavyweight migration
2023-08-10 19:33:26 -05:00
Riley Testut
25e237cfcb
[Delta Sync] Uses local modification date when uploading changes
...
Previously we used the server’s modification dates, which could be confusing when comparing against local modification dates since the same version may have different dates.
2023-07-10 19:00:39 -05:00
Riley Testut
3227ee4c49
Migrates Core Data model from v6 to v7
2023-07-10 16:09:07 -05:00
Riley Testut
45ed97c255
Actually fixes crash loading save states on iOS 17
...
The underlying issue causing the crash is that we were returning cached *supplementary view* layout attributes by accident from layoutAttributesForItem(at:).
Now, we only cache layout attributes for cells.
2023-07-10 15:39:31 -05:00
Riley Testut
31578e2e34
Updated mogenerator target to use Homebrew version
2023-07-07 18:22:33 -05:00
Riley Testut
e33a7c662f
[Delta Sync] Delays sync until after interactive Settings dismissal has completed
...
Avoids false-positives when user scrolls to top of a Settings screen.
2023-07-07 18:22:33 -05:00
Riley Testut
8ea40a4728
[Delta Sync] Fixes queued syncs sometimes fetching outdated changes
...
Rare, but more common when performing initial sync.
2023-07-07 18:22:32 -05:00
Riley Testut
29f152fcb3
[Delta Sync] Repairs references to remote files when signing out then back in
...
Fixes redundant uploads and potentially ophaned remote files, the latter due to no remote files being deleted if LocalRecord.remoteFiles is empty.
2023-07-07 18:22:26 -05:00
Riley Testut
5779927831
[Delta Sync] Delays seeding Harmony database until initial sync
2023-07-07 18:19:07 -05:00
Riley Testut
f184639c6b
[Delta Sync] Fixes incorrect mass conflicts when signing out then back in
2023-07-07 18:17:13 -05:00
Riley Testut
043fb923ae
[Delta Sync] Displays activity indicator when signing-in
...
Without an indicator it can feel like the app has froze, when really it’s just preparing to sync.
2023-07-07 14:59:41 -05:00
Riley Testut
19fb333a67
Toggles Delta Sync switch back on if user cancels “Disable Syncing?” warning alert
2023-07-06 19:11:09 -05:00
Riley Testut
35a8f90a1c
Converts Delta Sync action sheets into alerts
...
Implicitly fixes crashing on iPad.
2023-07-06 18:44:18 -05:00
Riley Testut
c898f72847
Fixes “file does not exist” sync error after restoring previous version
...
Due to a bug, it was possible for Harmony records to contain duplicate file entries after restoring a previous version. Harmony would then try to download _all_ files, including the duplicates, and would fail if any of them no longer exist.
These changes fix the underlying bug, and also fix existing corrupted records on the fly.
2023-06-28 13:45:44 -05:00
Riley Testut
981c868f6e
Fixes “Harmony.sqlite couldn’t be opened” sync error when there are more than 1000 games
2023-06-28 13:37:20 -05:00
Riley Testut
15e228f287
Adds GameSave.sha1 to sync hash between devices
...
Fixes redundant record uploads post-sync due to comparing hashes against locally-cached hash via extended attributes.
2023-06-28 13:33:16 -05:00
Riley Testut
707116a39b
Automatically resolves Cheat + ControllerSkin sync conflicts
2023-06-27 18:58:41 -05:00
Riley Testut
750740ac16
Updates app version to 1.5b3 (69)
2023-06-22 13:11:13 -05:00
Riley Testut
6909b6248f
Skips checksum verification when importing zipped games
...
Verification can take an annoyingly long time, especially for larger ROMs.
2023-06-19 19:19:40 -05:00
Riley Testut
8bd6fe1e11
Replaces UIDocumentBrowserViewController with UIDocumentPickerViewController on iOS 17+
...
Prior to iOS 17, UIDocumentPickerViewController was too buggy to reliably use with iCloud Drive.
2023-06-19 19:19:40 -05:00
Riley Testut
4cf705f141
[ExpFeat] Fixes saving screenshots to Photos as JPEGs
2023-06-16 16:57:00 -05:00
Riley Testut
99417b418a
[ExpFeat] Adds missing @unknown default to PHAuthorizationStatus switch statement
2023-06-16 16:46:35 -05:00
Riley Testut
648e9b8393
[ExpFeat] Fixes saving screenshots to Photos with .limited authorization
2023-06-16 16:44:24 -05:00
Riley Testut
69eff8fa28
Fixes displaying system name in dark text (again) when remapping inputs on iOS 17
2023-06-16 15:55:51 -05:00
Riley Testut
3e858c652f
Fixes crash loading save states on iOS 17
...
Crashes due to GridCollectionViewLayout returning outdated cached layout information when inserting “Auto” save states section for the first time.
To fix this, we now clear the layout cache in invalidateLayout(with:) when relevant.
2023-06-16 15:25:49 -05:00
Riley Testut
21147969ea
Fixes GridCollectionViewCell "Unable to simultaneously satisfy constraints" runtime error
2023-06-16 15:18:02 -05:00
Riley Testut
731de7023f
Merge branch 'app_store' into develop
2023-06-16 15:14:39 -05:00
Riley Testut
810bc4572c
Replaces app icon variants with single 1024x1024 version
2023-06-16 15:11:59 -05:00
Riley Testut
4e8580b8f5
Obfuscates private API usage to pass TestFlight App Review
2023-06-16 15:04:47 -05:00
Riley Testut
2e21141bc6
[Pods] Removes Fabric + Crashlytics
2023-05-10 13:36:44 -05:00
Riley Testut
08a40b3516
[Pods] Updates GoogleSignIn dependency to 5.0.2
...
* GoogleSignIn (4.4.0 -> 5.0.2)
* GTMSessionFetcher (1.5.0 -> 1.7.2)
* GoogleToolboxForMac (Removed)
2023-05-10 13:30:30 -05:00
Riley Testut
7b9ab2488e
Fixes accidentally deleting Games directory during sync in rare circumstances
...
If a Game with empty filename happens to be deleted (e.g. during sync merge), it will accidentally delete the *entire* Games folder due to its fileURL being “Games/[empty]”.
To prevent this, we now explicitly check that a Game’s identifier isn’t empty AND that that Game.fileURL doesn’t point to a directory before deleting local files.
2023-05-02 14:29:23 -05:00
Riley Testut
00121bd31f
[iPad] Fixes crash when resolving sync merge conflicts
2023-05-02 14:29:23 -05:00
Riley Testut
ea260cb8a6
Updates Settings to use large titles where appropriate
...
* SettingsViewController
* PreferredControllerSkinsViewController
2023-05-02 14:29:23 -05:00
Riley Testut
b0bd5ba906
Updates most Settings view controllers to use .insetGrouped style
...
Excludes PreferredControllerSkinsViewController and ControllerSkinsViewController
2023-04-28 17:22:20 -05:00
Riley Testut
726c4ab93b
Resolves Settings.storyboard ambiguity warnings
...
Expands static UITableViewController subclasses to show all static cells.
Wow I wish I knew this years ago…
2023-04-28 16:54:21 -05:00
Riley Testut
5dc91c87c6
Updates app version to 1.5b2
2023-04-28 16:04:51 -05:00
Riley Testut
de7a812cbd
[Contributors] Credits Chris Rittenhouse for experimental features
...
* Show Status Bar
* Game Screenshots
* Toast Notifications
2023-04-28 15:56:51 -05:00
Riley Testut
b1a3a5076f
Merge branch 'experimental_features' into develop
...
# Conflicts:
# Delta.xcodeproj/project.pbxproj
# Delta/Emulation/GameViewController.swift
# Delta/Pause Menu/PauseViewController.swift
2023-04-28 15:51:08 -05:00
Riley Testut
9470caf83a
Sorts Delta’s Info.plist items alphabetically
2023-04-28 15:42:22 -05:00