Skip to content

Commit f21cb2d

Browse files
Add UIViewController block based transition methods.
1 parent 80b908c commit f21cb2d

8 files changed

Lines changed: 188 additions & 11 deletions

File tree

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
//
2+
// UIViewController+JavaScriptBridge.h
3+
// JavaScriptBridge
4+
//
5+
// Created by kishikawa katsumi on 2014/01/25.
6+
// Copyright (c) 2014 kishikawa katsumi. All rights reserved.
7+
//
8+
9+
#import <UIKit/UIKit.h>
10+
11+
@interface UIViewController (JavaScriptBridge)
12+
13+
@end
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
//
2+
// UIViewController+JavaScriptBridge.m
3+
// JavaScriptBridge
4+
//
5+
// Created by kishikawa katsumi on 2014/01/25.
6+
// Copyright (c) 2014 kishikawa katsumi. All rights reserved.
7+
//
8+
9+
#import "UIViewController+JavaScriptBridge.h"
10+
#import "JSBMessageForwarding.h"
11+
12+
@implementation UIViewController (JavaScriptBridge)
13+
14+
- (void)__presentViewController:(UIViewController *)viewControllerToPresent
15+
animated:(BOOL)flag
16+
completion:(JSValue *)completionFunction
17+
{
18+
JSContext *context = [JSContext currentContext];
19+
id currentSelf = context[@"self"];
20+
21+
void(^completion)() = NULL;
22+
if (!completionFunction.isUndefined) {
23+
completion = ^() {
24+
dispatchFunction(currentSelf, completionFunction, nil);
25+
};
26+
}
27+
28+
[self presentViewController:viewControllerToPresent animated:flag completion:completion];
29+
}
30+
31+
- (void)__dismissViewControllerAnimated:(BOOL)flag completion:(JSValue *)completionFunction
32+
{
33+
JSContext *context = [JSContext currentContext];
34+
id currentSelf = context[@"self"];
35+
36+
void(^completion)() = NULL;
37+
if (!completionFunction.isUndefined) {
38+
completion = ^() {
39+
dispatchFunction(currentSelf, completionFunction, nil);
40+
};
41+
}
42+
43+
[self dismissViewControllerAnimated:flag completion:completion];
44+
}
45+
46+
- (void)__transitionFromViewController:(UIViewController *)fromViewController
47+
toViewController:(UIViewController *)toViewController
48+
duration:(NSTimeInterval)duration
49+
options:(UIViewAnimationOptions)options
50+
animations:(JSValue *)animationsFunction
51+
completion:(JSValue *)completionFunction
52+
{
53+
JSContext *context = [JSContext currentContext];
54+
id currentSelf = context[@"self"];
55+
56+
void(^animations)() = NULL;
57+
if (!animationsFunction.isUndefined) {
58+
animations = ^() {
59+
dispatchFunction(currentSelf, animationsFunction, nil);
60+
};
61+
}
62+
63+
void(^completion)(BOOL) = NULL;
64+
if (!completionFunction.isUndefined) {
65+
completion = ^(BOOL finished) {
66+
NSMutableArray *parameters = [[NSMutableArray alloc] init];
67+
if (finished) {
68+
[parameters addObject:@YES];
69+
} else {
70+
[parameters addObject:@NO];
71+
}
72+
73+
dispatchFunction(currentSelf, completionFunction, parameters);
74+
};
75+
}
76+
77+
[self transitionFromViewController:fromViewController toViewController:toViewController duration:duration options:options animations:animations completion:completion];
78+
}
79+
80+
@end

Classes/iOS/FrameworkSupport/UIKit/JSBUIViewController.h

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,10 @@
7575
- (BOOL)isBeingDismissed;
7676
- (BOOL)isMovingToParentViewController;
7777
- (BOOL)isMovingFromParentViewController;
78-
- (void)presentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(void (^)(void))completion;
79-
- (void)dismissViewControllerAnimated:(BOOL)flag completion:(void (^)(void))completion;
78+
JSExportAs(presentViewControllerAnimatedCompletion,
79+
- (void)__presentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(JSValue *)completion);
80+
JSExportAs(dismissViewControllerAnimatedCompletion,
81+
- (void)__dismissViewControllerAnimated:(BOOL)flag completion:(JSValue *)completion);
8082
- (void)presentModalViewController:(UIViewController *)modalViewController animated:(BOOL)animated;
8183
- (void)dismissModalViewControllerAnimated:(BOOL)animated;
8284
- (BOOL)disablesAutomaticKeyboardDismissal;
@@ -100,7 +102,8 @@
100102
- (UIBarButtonItem *)editButtonItem;
101103
- (void)addChildViewController:(UIViewController *)childController;
102104
- (void)removeFromParentViewController;
103-
- (void)transitionFromViewController:(UIViewController *)fromViewController toViewController:(UIViewController *)toViewController duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion;
105+
JSExportAs(transitionFromViewControllerToViewControllerDurationOptionsAnimationsCompletion,
106+
- (void)__transitionFromViewController:(UIViewController *)fromViewController toViewController:(UIViewController *)toViewController duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options animations:(JSValue *)animations completion:(JSValue *)completion);
104107
- (void)beginAppearanceTransition:(BOOL)isAppearing animated:(BOOL)animated;
105108
- (void)endAppearanceTransition;
106109
- (UIViewController *)childViewControllerForStatusBarStyle;

Examples/HelloWorld/HelloWorld.xcodeproj/project.pbxproj

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
/* Begin PBXBuildFile section */
1010
144BD83618938E2C00C7E217 /* UIView+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 144BD83518938E2C00C7E217 /* UIView+JavaScriptBridge.m */; };
11+
14876D5F1893B6B0008622D6 /* UIViewController+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 14876D5E1893B6B0008622D6 /* UIViewController+JavaScriptBridge.m */; };
1112
149A45F018796C5D007C2CA7 /* JSBMessageForwarding.m in Sources */ = {isa = PBXBuildFile; fileRef = 149A45EF18796C5D007C2CA7 /* JSBMessageForwarding.m */; };
1213
149A45F718796C66007C2CA7 /* ALAsset+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 149A45F218796C66007C2CA7 /* ALAsset+JavaScriptBridge.m */; };
1314
149A45F818796C66007C2CA7 /* ALAssetsGroup+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 149A45F418796C66007C2CA7 /* ALAssetsGroup+JavaScriptBridge.m */; };
@@ -62,6 +63,8 @@
6263
/* Begin PBXFileReference section */
6364
144BD83418938E2C00C7E217 /* UIView+JavaScriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIView+JavaScriptBridge.h"; sourceTree = "<group>"; };
6465
144BD83518938E2C00C7E217 /* UIView+JavaScriptBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIView+JavaScriptBridge.m"; sourceTree = "<group>"; };
66+
14876D5D1893B6B0008622D6 /* UIViewController+JavaScriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIViewController+JavaScriptBridge.h"; sourceTree = "<group>"; };
67+
14876D5E1893B6B0008622D6 /* UIViewController+JavaScriptBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIViewController+JavaScriptBridge.m"; sourceTree = "<group>"; };
6568
149A45EF18796C5D007C2CA7 /* JSBMessageForwarding.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JSBMessageForwarding.m; sourceTree = "<group>"; };
6669
149A45F118796C66007C2CA7 /* ALAsset+JavaScriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ALAsset+JavaScriptBridge.h"; sourceTree = "<group>"; };
6770
149A45F218796C66007C2CA7 /* ALAsset+JavaScriptBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "ALAsset+JavaScriptBridge.m"; sourceTree = "<group>"; };
@@ -867,6 +870,8 @@
867870
149A45EF18796C5D007C2CA7 /* JSBMessageForwarding.m */,
868871
149A46211879B4A6007C2CA7 /* NSURLConnection+JavaScriptBridge.h */,
869872
149A46221879B4A6007C2CA7 /* NSURLConnection+JavaScriptBridge.m */,
873+
14876D5D1893B6B0008622D6 /* UIViewController+JavaScriptBridge.h */,
874+
14876D5E1893B6B0008622D6 /* UIViewController+JavaScriptBridge.m */,
870875
144BD83418938E2C00C7E217 /* UIView+JavaScriptBridge.h */,
871876
144BD83518938E2C00C7E217 /* UIView+JavaScriptBridge.m */,
872877
14A0455F187829B4004831E8 /* UIControl+JavaScriptBridge.h */,
@@ -1899,6 +1904,7 @@
18991904
14A04848187829CB004831E8 /* JSBiAd.m in Sources */,
19001905
14A04567187829B4004831E8 /* UIControl+JavaScriptBridge.m in Sources */,
19011906
14A04836187829CB004831E8 /* JSBEventKit.m in Sources */,
1907+
14876D5F1893B6B0008622D6 /* UIViewController+JavaScriptBridge.m in Sources */,
19021908
14A04834187829CB004831E8 /* JSBCoreMotion.m in Sources */,
19031909
149A460C1879730A007C2CA7 /* SLComposeViewController+JavaScriptBridge.m in Sources */,
19041910
14A0453918782920004831E8 /* main.m in Sources */,

Examples/UICatalog/UICatalog.xcodeproj/project.pbxproj

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
/* Begin PBXBuildFile section */
1010
144BD83318938E1D00C7E217 /* UIView+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 144BD83218938E1D00C7E217 /* UIView+JavaScriptBridge.m */; };
11+
14876D5C1893B697008622D6 /* UIViewController+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 14876D5B1893B697008622D6 /* UIViewController+JavaScriptBridge.m */; };
1112
149A45E1187961AB007C2CA7 /* JSBMessageForwarding.m in Sources */ = {isa = PBXBuildFile; fileRef = 149A45E0187961AB007C2CA7 /* JSBMessageForwarding.m */; };
1213
149A45E6187961BD007C2CA7 /* ALAssetsGroup+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 149A45E3187961BD007C2CA7 /* ALAssetsGroup+JavaScriptBridge.m */; };
1314
149A45E7187961BD007C2CA7 /* ALAssetsLibrary+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 149A45E5187961BD007C2CA7 /* ALAssetsLibrary+JavaScriptBridge.m */; };
@@ -70,6 +71,8 @@
7071
/* Begin PBXFileReference section */
7172
144BD83118938E1D00C7E217 /* UIView+JavaScriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "UIView+JavaScriptBridge.h"; path = "../../../Classes/Private/UIView+JavaScriptBridge.h"; sourceTree = "<group>"; };
7273
144BD83218938E1D00C7E217 /* UIView+JavaScriptBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "UIView+JavaScriptBridge.m"; path = "../../../Classes/Private/UIView+JavaScriptBridge.m"; sourceTree = "<group>"; };
74+
14876D5A1893B697008622D6 /* UIViewController+JavaScriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "UIViewController+JavaScriptBridge.h"; path = "../../../Classes/Private/UIViewController+JavaScriptBridge.h"; sourceTree = "<group>"; };
75+
14876D5B1893B697008622D6 /* UIViewController+JavaScriptBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "UIViewController+JavaScriptBridge.m"; path = "../../../Classes/Private/UIViewController+JavaScriptBridge.m"; sourceTree = "<group>"; };
7376
149A45E0187961AB007C2CA7 /* JSBMessageForwarding.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = JSBMessageForwarding.m; path = ../../../Classes/Private/JSBMessageForwarding.m; sourceTree = "<group>"; };
7477
149A45E2187961BD007C2CA7 /* ALAssetsGroup+JavaScriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "ALAssetsGroup+JavaScriptBridge.h"; path = "../../../Classes/Private/ALAssetsGroup+JavaScriptBridge.h"; sourceTree = "<group>"; };
7578
149A45E3187961BD007C2CA7 /* ALAssetsGroup+JavaScriptBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "ALAssetsGroup+JavaScriptBridge.m"; path = "../../../Classes/Private/ALAssetsGroup+JavaScriptBridge.m"; sourceTree = "<group>"; };
@@ -1775,6 +1778,8 @@
17751778
149A45E0187961AB007C2CA7 /* JSBMessageForwarding.m */,
17761779
149A461E1879B497007C2CA7 /* NSURLConnection+JavaScriptBridge.h */,
17771780
149A461F1879B497007C2CA7 /* NSURLConnection+JavaScriptBridge.m */,
1781+
14876D5A1893B697008622D6 /* UIViewController+JavaScriptBridge.h */,
1782+
14876D5B1893B697008622D6 /* UIViewController+JavaScriptBridge.m */,
17781783
144BD83118938E1D00C7E217 /* UIView+JavaScriptBridge.h */,
17791784
144BD83218938E1D00C7E217 /* UIView+JavaScriptBridge.m */,
17801785
14A0451C18781832004831E8 /* UIControl+JavaScriptBridge.h */,
@@ -1939,6 +1944,7 @@
19391944
149C56831875C5BB0003EE16 /* JSBSocial.m in Sources */,
19401945
14B5CD2C1875C3740019A135 /* main.m in Sources */,
19411946
149C56801875C5BB0003EE16 /* JSBQuartzCore.m in Sources */,
1947+
14876D5C1893B697008622D6 /* UIViewController+JavaScriptBridge.m in Sources */,
19421948
149C56731875C5BB0003EE16 /* JSBCoreMotion.m in Sources */,
19431949
149A4606187972FF007C2CA7 /* SLComposeViewController+JavaScriptBridge.m in Sources */,
19441950
149C566C1875C5BB0003EE16 /* JSBAddressBookUI.m in Sources */,

Project/JavaScriptBridge/JavaScriptBridge.xcodeproj/project.pbxproj

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@
3333
144BD82F1893892B00C7E217 /* UIView+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 144BD82E1893892B00C7E217 /* UIView+JavaScriptBridge.m */; };
3434
144BD8301893892B00C7E217 /* UIView+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 144BD82E1893892B00C7E217 /* UIView+JavaScriptBridge.m */; };
3535
14876D551893AFA7008622D6 /* JSBUIViewTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 14876D541893AFA7008622D6 /* JSBUIViewTest.m */; };
36+
14876D581893B464008622D6 /* UIViewController+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 14876D571893B464008622D6 /* UIViewController+JavaScriptBridge.m */; };
37+
14876D591893B464008622D6 /* UIViewController+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 14876D571893B464008622D6 /* UIViewController+JavaScriptBridge.m */; };
38+
14876D611893B6E3008622D6 /* JSBUIViewControllerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 14876D601893B6E3008622D6 /* JSBUIViewControllerTest.m */; };
3639
149A45D718795D3D007C2CA7 /* ALAssetsLibrary+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 149A45D618795D3D007C2CA7 /* ALAssetsLibrary+JavaScriptBridge.m */; };
3740
149A45D818795D3D007C2CA7 /* ALAssetsLibrary+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 149A45D618795D3D007C2CA7 /* ALAssetsLibrary+JavaScriptBridge.m */; };
3841
149A45DB18795D64007C2CA7 /* ALAssetsGroup+JavaScriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 149A45DA18795D64007C2CA7 /* ALAssetsGroup+JavaScriptBridge.m */; };
@@ -176,6 +179,9 @@
176179
144BD82D1893892B00C7E217 /* UIView+JavaScriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "UIView+JavaScriptBridge.h"; path = "../../../Classes/Private/UIView+JavaScriptBridge.h"; sourceTree = "<group>"; };
177180
144BD82E1893892B00C7E217 /* UIView+JavaScriptBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "UIView+JavaScriptBridge.m"; path = "../../../Classes/Private/UIView+JavaScriptBridge.m"; sourceTree = "<group>"; };
178181
14876D541893AFA7008622D6 /* JSBUIViewTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JSBUIViewTest.m; sourceTree = "<group>"; };
182+
14876D561893B464008622D6 /* UIViewController+JavaScriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "UIViewController+JavaScriptBridge.h"; path = "../../../Classes/Private/UIViewController+JavaScriptBridge.h"; sourceTree = "<group>"; };
183+
14876D571893B464008622D6 /* UIViewController+JavaScriptBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "UIViewController+JavaScriptBridge.m"; path = "../../../Classes/Private/UIViewController+JavaScriptBridge.m"; sourceTree = "<group>"; };
184+
14876D601893B6E3008622D6 /* JSBUIViewControllerTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JSBUIViewControllerTest.m; sourceTree = "<group>"; };
179185
149A45D518795D3D007C2CA7 /* ALAssetsLibrary+JavaScriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "ALAssetsLibrary+JavaScriptBridge.h"; path = "../../../Classes/Private/ALAssetsLibrary+JavaScriptBridge.h"; sourceTree = "<group>"; };
180186
149A45D618795D3D007C2CA7 /* ALAssetsLibrary+JavaScriptBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "ALAssetsLibrary+JavaScriptBridge.m"; path = "../../../Classes/Private/ALAssetsLibrary+JavaScriptBridge.m"; sourceTree = "<group>"; };
181187
149A45D918795D64007C2CA7 /* ALAssetsGroup+JavaScriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "ALAssetsGroup+JavaScriptBridge.h"; path = "../../../Classes/Private/ALAssetsGroup+JavaScriptBridge.h"; sourceTree = "<group>"; };
@@ -1163,6 +1169,7 @@
11631169
isa = PBXGroup;
11641170
children = (
11651171
1410341A1875A6E800960F22 /* JSBUIKitTest.m */,
1172+
14876D601893B6E3008622D6 /* JSBUIViewControllerTest.m */,
11661173
14876D541893AFA7008622D6 /* JSBUIViewTest.m */,
11671174
);
11681175
name = UIKit;
@@ -2263,6 +2270,8 @@
22632270
149A45DD18795EAC007C2CA7 /* JSBMessageForwarding.m */,
22642271
149A461A1879B267007C2CA7 /* NSURLConnection+JavaScriptBridge.h */,
22652272
149A461B1879B267007C2CA7 /* NSURLConnection+JavaScriptBridge.m */,
2273+
14876D561893B464008622D6 /* UIViewController+JavaScriptBridge.h */,
2274+
14876D571893B464008622D6 /* UIViewController+JavaScriptBridge.m */,
22662275
144BD82D1893892B00C7E217 /* UIView+JavaScriptBridge.h */,
22672276
144BD82E1893892B00C7E217 /* UIView+JavaScriptBridge.m */,
22682277
14A04512187817E4004831E8 /* UIControl+JavaScriptBridge.h */,
@@ -2399,6 +2408,7 @@
23992408
149A45D718795D3D007C2CA7 /* ALAssetsLibrary+JavaScriptBridge.m in Sources */,
24002409
149D9F3F187595BC00129B4B /* JSBSocial.m in Sources */,
24012410
149D9F39187595BC00129B4B /* JSBQuartzCore.m in Sources */,
2411+
14876D581893B464008622D6 /* UIViewController+JavaScriptBridge.m in Sources */,
24022412
149D9F37187595BC00129B4B /* JSBPassKit.m in Sources */,
24032413
149D9F49187595BC00129B4B /* JSBiAd.m in Sources */,
24042414
149D9F2B187595BC00129B4B /* JSBMapKit.m in Sources */,
@@ -2443,6 +2453,7 @@
24432453
149D9F18187595BC00129B4B /* JSBCoreMIDI.m in Sources */,
24442454
141034141875A57B00960F22 /* JSBSafariServicesTest.m in Sources */,
24452455
141034121875A57B00960F22 /* JSBQuartzCoreTest.m in Sources */,
2456+
14876D611893B6E3008622D6 /* JSBUIViewControllerTest.m in Sources */,
24462457
149D9F3E187595BC00129B4B /* JSBSafariServices.m in Sources */,
24472458
149D9F16187595BC00129B4B /* JSBCoreLocation.m in Sources */,
24482459
141033F71875A23500960F22 /* JSBMessageUITest.m in Sources */,
@@ -2496,6 +2507,7 @@
24962507
14876D551893AFA7008622D6 /* JSBUIViewTest.m in Sources */,
24972508
149D9F32187595BC00129B4B /* JSBMultipeerConnectivity.m in Sources */,
24982509
149D9F10187595BC00129B4B /* JSBCoreBluetooth.m in Sources */,
2510+
14876D591893B464008622D6 /* UIViewController+JavaScriptBridge.m in Sources */,
24992511
14A04515187817E4004831E8 /* UIControl+JavaScriptBridge.m in Sources */,
25002512
141033D718759F6200960F22 /* JSBCoreTelephonyTest.m in Sources */,
25012513
141033EC1875A09B00960F22 /* JSBJavaScriptCoreTest.m in Sources */,

0 commit comments

Comments
 (0)