Skip to content

Commit fbfee89

Browse files
committed
Merge branch 'develop' into audit-target
# Conflicts: # Kukai Mobile.xcodeproj/project.pbxproj # Kukai Mobile/Info.plist # Kukai MobileTests/Info.plist # Kukai MobileUITests/Info.plist
2 parents b9947ef + f09ef83 commit fbfee89

File tree

55 files changed

+2908
-1102
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+2908
-1102
lines changed

.github/workflows/build-and-deploy.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
runs-on: macos-13
1313
steps:
1414
- name: Select Xcode version
15-
run: sudo xcode-select -s '/Applications/Xcode_14.3.1.app/Contents/Developer'
15+
run: sudo xcode-select -s '/Applications/Xcode_15.0.1.app/Contents/Developer'
1616

1717
- name: Checkout repository
1818
uses: actions/checkout@v4.1.1
@@ -41,6 +41,13 @@ jobs:
4141
# Upload Base64 copies of apple certs to github following these instructions:
4242
# Note: Use app store distribution certs
4343
# https://docs.github.com/en/actions/guides/installing-an-apple-certificate-on-macos-runners-for-xcode-development
44+
#
45+
# Every time we update certs / profiles or they expire, we need to update the following github actions secrets
46+
# BUILD_CERTIFICATE_BASE64 = exported distribution cert from inside Xcode account settings, copied with `base64 -i <file-path> | pbcopy`
47+
# P12_PASSWORD = whatever new password created for previous file
48+
# BUILD_PROVISION_PROFILE_BASE64 = download "Kukai Mobile Prov Dist App Store" from app store connect, copied with `base64 -i <file-path> | pbcopy`
49+
# BUILD_PROVISION_PROFILE_BETA_BASE64 = download "Kukai Mobile Beta Prov Dist App Store" from app store connect, copied with `base64 -i <file-path> | pbcopy`
50+
#
4451
- name: Install the Apple certificate and provisioning profile
4552
run: |
4653
# create variables

Kukai Mobile.xcodeproj/project.pbxproj

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
archiveVersion = 1;
44
classes = {
55
};
6-
objectVersion = 53;
6+
objectVersion = 54;
77
objects = {
88

99
/* Begin PBXBuildFile section */
@@ -19,6 +19,7 @@
1919
C001D5AE2A027ED60089EC7A /* CollectiblesRecentsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = C001D5AD2A027ED60089EC7A /* CollectiblesRecentsViewModel.swift */; };
2020
C001D5B02A027F330089EC7A /* CollectionDetailsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C001D5AF2A027F330089EC7A /* CollectionDetailsViewController.swift */; };
2121
C001D5B22A027F410089EC7A /* CollectionDetailsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = C001D5B12A027F410089EC7A /* CollectionDetailsViewModel.swift */; };
22+
C003AEB42B470D6E00AEC4A8 /* SendAbstractConfirmViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C003AEB32B470D6E00AEC4A8 /* SendAbstractConfirmViewController.swift */; };
2223
C003CECB27FDE9C900F64B4C /* CloudKitService.swift in Sources */ = {isa = PBXBuildFile; fileRef = C003CECA27FDE9C900F64B4C /* CloudKitService.swift */; };
2324
C003CECD27FDED5D00F64B4C /* CKRecord+extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C003CECC27FDED5D00F64B4C /* CKRecord+extensions.swift */; };
2425
C005BA322822D3DC00D8369D /* AddWalletViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C005BA312822D3DC00D8369D /* AddWalletViewController.swift */; };
@@ -191,6 +192,7 @@
191192
C06EA1A626A56C6E006029CF /* OnboardingPageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C06EA1A526A56C6E006029CF /* OnboardingPageViewController.swift */; };
192193
C06F28222A0E811D00543E31 /* AccountsContainerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C06F28212A0E811D00543E31 /* AccountsContainerViewController.swift */; };
193194
C0717B1E2A697D3D007F9419 /* EnterCustomBakerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0717B1D2A697D3D007F9419 /* EnterCustomBakerViewController.swift */; };
195+
C073938D2B50053500344DBC /* SendGenericConfirmViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C073938C2B50053500344DBC /* SendGenericConfirmViewController.swift */; };
194196
C073C0DE29E6CADC0064FBEF /* LoadingContainerCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = C073C0DD29E6CADC0064FBEF /* LoadingContainerCell.swift */; };
195197
C0742C53297ADC8E005D6DB0 /* MenuViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0742C52297ADC8E005D6DB0 /* MenuViewController.swift */; };
196198
C074EC632AF50CBA008B2F56 /* Test_10_ConnectedApps.swift in Sources */ = {isa = PBXBuildFile; fileRef = C074EC622AF50CBA008B2F56 /* Test_10_ConnectedApps.swift */; };
@@ -240,6 +242,7 @@
240242
C08F6913273ABD7300CCB6E3 /* SwapTokenViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = C08F6912273ABD7300CCB6E3 /* SwapTokenViewModel.swift */; };
241243
C08FE23A2AD4343500327BF9 /* BackupViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C08FE2392AD4343500327BF9 /* BackupViewController.swift */; };
242244
C090A6732B0BA1C000F50C76 /* TokenDetailsHeaderCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = C090A6722B0BA1C000F50C76 /* TokenDetailsHeaderCell.swift */; };
245+
C09392BF2B31BE4C0094DFC8 /* security.plist in Resources */ = {isa = PBXBuildFile; fileRef = C09392BE2B31BE4C0094DFC8 /* security.plist */; };
243246
C095367D2A0A9284001B20C4 /* StorageService.swift in Sources */ = {isa = PBXBuildFile; fileRef = C095367C2A0A9284001B20C4 /* StorageService.swift */; };
244247
C09536812A0A94E4001B20C4 /* LengthValidator.swift in Sources */ = {isa = PBXBuildFile; fileRef = C09536802A0A94E4001B20C4 /* LengthValidator.swift */; };
245248
C09536832A0A9587001B20C4 /* ConfirmationValidator.swift in Sources */ = {isa = PBXBuildFile; fileRef = C09536822A0A9587001B20C4 /* ConfirmationValidator.swift */; };
@@ -419,6 +422,7 @@
419422
C001D5AD2A027ED60089EC7A /* CollectiblesRecentsViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CollectiblesRecentsViewModel.swift; sourceTree = "<group>"; };
420423
C001D5AF2A027F330089EC7A /* CollectionDetailsViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CollectionDetailsViewController.swift; sourceTree = "<group>"; };
421424
C001D5B12A027F410089EC7A /* CollectionDetailsViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CollectionDetailsViewModel.swift; sourceTree = "<group>"; };
425+
C003AEB32B470D6E00AEC4A8 /* SendAbstractConfirmViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SendAbstractConfirmViewController.swift; sourceTree = "<group>"; };
422426
C003CECA27FDE9C900F64B4C /* CloudKitService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CloudKitService.swift; sourceTree = "<group>"; };
423427
C003CECC27FDED5D00F64B4C /* CKRecord+extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "CKRecord+extensions.swift"; sourceTree = "<group>"; };
424428
C005BA312822D3DC00D8369D /* AddWalletViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AddWalletViewController.swift; sourceTree = "<group>"; };
@@ -593,6 +597,7 @@
593597
C06EA1A526A56C6E006029CF /* OnboardingPageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingPageViewController.swift; sourceTree = "<group>"; };
594598
C06F28212A0E811D00543E31 /* AccountsContainerViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountsContainerViewController.swift; sourceTree = "<group>"; };
595599
C0717B1D2A697D3D007F9419 /* EnterCustomBakerViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnterCustomBakerViewController.swift; sourceTree = "<group>"; };
600+
C073938C2B50053500344DBC /* SendGenericConfirmViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SendGenericConfirmViewController.swift; sourceTree = "<group>"; };
596601
C073C0DD29E6CADC0064FBEF /* LoadingContainerCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoadingContainerCell.swift; sourceTree = "<group>"; };
597602
C0742C52297ADC8E005D6DB0 /* MenuViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MenuViewController.swift; sourceTree = "<group>"; };
598603
C074EC622AF50CBA008B2F56 /* Test_10_ConnectedApps.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Test_10_ConnectedApps.swift; sourceTree = "<group>"; };
@@ -642,6 +647,7 @@
642647
C08F6912273ABD7300CCB6E3 /* SwapTokenViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwapTokenViewModel.swift; sourceTree = "<group>"; };
643648
C08FE2392AD4343500327BF9 /* BackupViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BackupViewController.swift; sourceTree = "<group>"; };
644649
C090A6722B0BA1C000F50C76 /* TokenDetailsHeaderCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TokenDetailsHeaderCell.swift; sourceTree = "<group>"; };
650+
C09392BE2B31BE4C0094DFC8 /* security.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = security.plist; sourceTree = "<group>"; };
645651
C095367C2A0A9284001B20C4 /* StorageService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StorageService.swift; sourceTree = "<group>"; };
646652
C09536802A0A94E4001B20C4 /* LengthValidator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LengthValidator.swift; sourceTree = "<group>"; };
647653
C09536822A0A9587001B20C4 /* ConfirmationValidator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConfirmationValidator.swift; sourceTree = "<group>"; };
@@ -1354,6 +1360,7 @@
13541360
C0B03650269EE2070071ACD0 /* Info.plist */,
13551361
C0B0367B269F37340071ACD0 /* ExportOptions-Beta.plist */,
13561362
C0B03679269F1E450071ACD0 /* ExportOptions.plist */,
1363+
C09392BE2B31BE4C0094DFC8 /* security.plist */,
13571364
C0BADFFE291554D200E78C26 /* Fonts */,
13581365
C0678DC0272056A900DEF1CB /* Localization */,
13591366
C049B59F26A0492600F1C5E0 /* Modules */,
@@ -1398,10 +1405,12 @@
13981405
C09860A927C3C24E00F888AF /* SendToViewController.swift */,
13991406
C07FC40C27C539A40056FA47 /* SendToViewModel.swift */,
14001407
C09860AD27C3C26B00F888AF /* SendTokenAmountViewController.swift */,
1408+
C003AEB32B470D6E00AEC4A8 /* SendAbstractConfirmViewController.swift */,
14011409
C0E2317C29897BB5007BC79D /* SendTokenConfirmViewController.swift */,
14021410
C0A9865629895A6A0092EA2F /* SendCollectibleAmountViewController.swift */,
14031411
C0FAD1D52992992500FB813B /* SendCollectibleConfirmViewController.swift */,
14041412
C0151B262A15256900C7F250 /* SendContractConfirmViewController.swift */,
1413+
C073938C2B50053500344DBC /* SendGenericConfirmViewController.swift */,
14051414
);
14061415
path = Send;
14071416
sourceTree = "<group>";
@@ -1664,7 +1673,7 @@
16641673
attributes = {
16651674
BuildIndependentTargetsInParallel = YES;
16661675
LastSwiftUpdateCheck = 1250;
1667-
LastUpgradeCheck = 1430;
1676+
LastUpgradeCheck = 1500;
16681677
TargetAttributes = {
16691678
C0B0363E269EE2070071ACD0 = {
16701679
CreatedOnToolsVersion = 12.5;
@@ -1740,6 +1749,7 @@
17401749
C0503657271ED88700E7A664 /* Main.storyboard in Resources */,
17411750
C09860C127C3F7CB00F888AF /* EnterAddressComponent.xib in Resources */,
17421751
C0678DC3272056D400DEF1CB /* Localizable.strings in Resources */,
1752+
C09392BF2B31BE4C0094DFC8 /* security.plist in Resources */,
17431753
C0EA19CB29096DD200E6B40D /* CollectibleDetailNameCell.xib in Resources */,
17441754
C0C7DFB829BF34ED00F60E0C /* SideMenu.storyboard in Resources */,
17451755
C0EA19C129096D9400E6B40D /* CollectibleDetailImageCell.xib in Resources */,
@@ -1851,6 +1861,7 @@
18511861
C0A321D627C68C0100D7788B /* Validator.swift in Sources */,
18521862
C08462412919204800B7D62D /* UIView+gradients.swift in Sources */,
18531863
C04E2866293F94D700DC4171 /* TokenDetailsSendCell.swift in Sources */,
1864+
C003AEB42B470D6E00AEC4A8 /* SendAbstractConfirmViewController.swift in Sources */,
18541865
C0A321DC27C6943900D7788B /* TokenAmountValidator.swift in Sources */,
18551866
C0C7DFBF29BF70DD00F60E0C /* SideMenuViewModel.swift in Sources */,
18561867
C04E2860293F940E00DC4171 /* TokenDetailsChartCell.swift in Sources */,
@@ -1953,6 +1964,7 @@
19531964
C0FA74DC2A4B011200CA845B /* LoadingCollectibleCell.swift in Sources */,
19541965
C08694EC27BD5F8C000A4909 /* RequestIfService.swift in Sources */,
19551966
C07538152AAB65CA0041550F /* SideMenuAboutCell.swift in Sources */,
1967+
C073938D2B50053500344DBC /* SendGenericConfirmViewController.swift in Sources */,
19561968
C083E65B2A6EC7D600B3BEBE /* DiscoverHeadingCell.swift in Sources */,
19571969
C049E73A2881837F00887B64 /* AccountsViewController.swift in Sources */,
19581970
C044E1372AAF66F80085652F /* SideMenuSecurityViewModel.swift in Sources */,
@@ -2206,6 +2218,7 @@
22062218
isa = XCBuildConfiguration;
22072219
buildSettings = {
22082220
ALWAYS_SEARCH_USER_PATHS = NO;
2221+
ASSETCATALOG_COMPILER_GENERATE_ASSET_SYMBOLS = NO;
22092222
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
22102223
CLANG_ANALYZER_NONNULL = YES;
22112224
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
@@ -2241,6 +2254,7 @@
22412254
DEBUG_INFORMATION_FORMAT = dwarf;
22422255
ENABLE_STRICT_OBJC_MSGSEND = YES;
22432256
ENABLE_TESTABILITY = YES;
2257+
ENABLE_USER_SCRIPT_SANDBOXING = YES;
22442258
GCC_C_LANGUAGE_STANDARD = gnu11;
22452259
GCC_DYNAMIC_NO_PIC = NO;
22462260
GCC_NO_COMMON_BLOCKS = YES;
@@ -2259,6 +2273,7 @@
22592273
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
22602274
MTL_FAST_MATH = YES;
22612275
ONLY_ACTIVE_ARCH = YES;
2276+
OTHER_LDFLAGS = "\"-Wl,-no_warn_duplicate_libraries\"";
22622277
PRODUCT_NAME = Kuaki;
22632278
SDKROOT = iphoneos;
22642279
SUPPORTED_PLATFORMS = "iphonesimulator iphoneos";
@@ -2272,6 +2287,7 @@
22722287
isa = XCBuildConfiguration;
22732288
buildSettings = {
22742289
ALWAYS_SEARCH_USER_PATHS = NO;
2290+
ASSETCATALOG_COMPILER_GENERATE_ASSET_SYMBOLS = NO;
22752291
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
22762292
CLANG_ANALYZER_NONNULL = YES;
22772293
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
@@ -2307,6 +2323,7 @@
23072323
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
23082324
ENABLE_NS_ASSERTIONS = NO;
23092325
ENABLE_STRICT_OBJC_MSGSEND = YES;
2326+
ENABLE_USER_SCRIPT_SANDBOXING = YES;
23102327
GCC_C_LANGUAGE_STANDARD = gnu11;
23112328
GCC_NO_COMMON_BLOCKS = YES;
23122329
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
@@ -2318,6 +2335,7 @@
23182335
IPHONEOS_DEPLOYMENT_TARGET = 16.1;
23192336
MTL_ENABLE_DEBUG_INFO = NO;
23202337
MTL_FAST_MATH = YES;
2338+
OTHER_LDFLAGS = "\"-Wl,-no_warn_duplicate_libraries\"";
23212339
PRODUCT_NAME = Kukai;
23222340
SDKROOT = iphoneos;
23232341
SWIFT_COMPILATION_MODE = wholemodule;
@@ -2336,7 +2354,7 @@
23362354
CODE_SIGN_ENTITLEMENTS = "Kukai Mobile/Kukai Mobile.entitlements";
23372355
CODE_SIGN_IDENTITY = "iPhone Developer";
23382356
CODE_SIGN_STYLE = Manual;
2339-
CURRENT_PROJECT_VERSION = 209;
2357+
CURRENT_PROJECT_VERSION = 231;
23402358
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
23412359
DEVELOPMENT_TEAM = TK7KK2VPJP;
23422360
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = TK7KK2VPJP;
@@ -2376,7 +2394,7 @@
23762394
CODE_SIGN_IDENTITY = "iPhone Distribution";
23772395
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
23782396
CODE_SIGN_STYLE = Manual;
2379-
CURRENT_PROJECT_VERSION = 209;
2397+
CURRENT_PROJECT_VERSION = 231;
23802398
DEVELOPMENT_TEAM = TK7KK2VPJP;
23812399
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = TK7KK2VPJP;
23822400
ENABLE_BITCODE = NO;
@@ -2494,6 +2512,7 @@
24942512
isa = XCBuildConfiguration;
24952513
buildSettings = {
24962514
ALWAYS_SEARCH_USER_PATHS = NO;
2515+
ASSETCATALOG_COMPILER_GENERATE_ASSET_SYMBOLS = NO;
24972516
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
24982517
CLANG_ANALYZER_NONNULL = YES;
24992518
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
@@ -2529,6 +2548,7 @@
25292548
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
25302549
ENABLE_NS_ASSERTIONS = NO;
25312550
ENABLE_STRICT_OBJC_MSGSEND = YES;
2551+
ENABLE_USER_SCRIPT_SANDBOXING = YES;
25322552
GCC_C_LANGUAGE_STANDARD = gnu11;
25332553
GCC_NO_COMMON_BLOCKS = YES;
25342554
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
@@ -2540,6 +2560,7 @@
25402560
IPHONEOS_DEPLOYMENT_TARGET = 16.1;
25412561
MTL_ENABLE_DEBUG_INFO = NO;
25422562
MTL_FAST_MATH = YES;
2563+
OTHER_LDFLAGS = "\"-Wl,-no_warn_duplicate_libraries\"";
25432564
PRODUCT_NAME = "Kukai Beta";
25442565
SDKROOT = iphoneos;
25452566
SWIFT_COMPILATION_MODE = wholemodule;
@@ -2559,7 +2580,7 @@
25592580
CODE_SIGN_IDENTITY = "iPhone Distribution";
25602581
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
25612582
CODE_SIGN_STYLE = Manual;
2562-
CURRENT_PROJECT_VERSION = 209;
2583+
CURRENT_PROJECT_VERSION = 231;
25632584
DEVELOPMENT_TEAM = TK7KK2VPJP;
25642585
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = TK7KK2VPJP;
25652586
ENABLE_BITCODE = NO;
@@ -2699,7 +2720,7 @@
26992720
repositoryURL = "https://github.com/WalletConnect/WalletConnectSwiftV2";
27002721
requirement = {
27012722
kind = upToNextMajorVersion;
2702-
minimumVersion = 1.9.1;
2723+
minimumVersion = 1.10.0;
27032724
};
27042725
};
27052726
C07A2DEE2AEA76BF00550E32 /* XCRemoteSwiftPackageReference "Starscream" */ = {

Kukai Mobile.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Kukai Mobile.xcodeproj/xcshareddata/xcschemes/Kukai Mobile Beta.xcscheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "1430"
3+
LastUpgradeVersion = "1500"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"

Kukai Mobile.xcodeproj/xcshareddata/xcschemes/Kukai Mobile Debug.xcscheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "1430"
3+
LastUpgradeVersion = "1500"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"

Kukai Mobile.xcodeproj/xcshareddata/xcschemes/Kukai Mobile Release.xcscheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "1430"
3+
LastUpgradeVersion = "1500"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"

Kukai Mobile/Controls/CustomAVPlayerViewController.swift

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ class CustomAVPlayerViewController: AVPlayerViewController {
1616

1717
private var viewToMonitor: UIView? = nil
1818
private var previousValue = true
19+
private var hiddenObserver: NSKeyValueObservation? = nil
1920

2021
public weak var customDelegate: CustomAVPlayerViewControllerDelegate? = nil
2122

@@ -27,18 +28,18 @@ class CustomAVPlayerViewController: AVPlayerViewController {
2728
previousValue = viewToMonitor?.isHidden ?? true
2829

2930
viewToMonitor?.addObserver(self, forKeyPath: "hidden", context: nil)
31+
32+
self.hiddenObserver = viewToMonitor?.observe(\.isHidden, changeHandler: { [weak self] view, change in
33+
if self?.previousValue != view.isHidden {
34+
self?.previousValue = view.isHidden
35+
self?.customDelegate?.playbackControlsChanged(visible: !view.isHidden)
36+
}
37+
})
38+
3039
}
3140

3241
deinit {
33-
viewToMonitor?.removeObserver(self, forKeyPath: "hidden")
34-
}
35-
36-
override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
37-
38-
// Check if its the correct element and avoid double trigger
39-
if keyPath == "hidden", let v = viewToMonitor, previousValue != v.isHidden {
40-
previousValue = v.isHidden
41-
customDelegate?.playbackControlsChanged(visible: !v.isHidden)
42-
}
42+
hiddenObserver?.invalidate()
43+
hiddenObserver = nil
4344
}
4445
}

Kukai Mobile/Controls/ThemeManager.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ public class ThemeManager {
195195

196196
// Gradient
197197
"gradBgFull-1": UIColor("#FFFFFF"),
198-
"gradBgFull-2": UIColor("#F5F6FF"),
198+
"gradBgFull-2": UIColor("#E9EAF2"),
199199
"gradBgFull-3": UIColor("#E9EAF2"),
200200
"gradModal-1": UIColor("#FFFFFF"),
201201
"gradModal-2": UIColor("#EEEFF7"),
@@ -408,7 +408,7 @@ public class ThemeManager {
408408

409409
// Gradient
410410
"gradBgFull-1": UIColor("#1B1C2B"),
411-
"gradBgFull-2": UIColor("#0E0F17"),
411+
"gradBgFull-2": UIColor("#12121C"),
412412
"gradBgFull-3": UIColor("#0A0A0F"),
413413
"gradModal-1": UIColor("#1B1C2B"),
414414
"gradModal-2": UIColor("#1B1C2B"),

0 commit comments

Comments
 (0)