Skip to content

Commit 60982c3

Browse files
authored
[camera]refactor FLTCam outside of CameraPlugin (flutter#4708)
1 parent 609d643 commit 60982c3

File tree

7 files changed

+1185
-1139
lines changed

7 files changed

+1185
-1139
lines changed

packages/camera/camera/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
## NEXT
22

3+
* Minor iOS internal code cleanup related to camera class and its delegate.
34
* Minor iOS internal code cleanup related to resolution preset, video format, focus mode, exposure mode and device orientation.
45
* Minor iOS internal code cleanup related to flash mode.
56

packages/camera/camera/example/ios/RunnerTests/CameraFocusTests.m

Lines changed: 6 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,11 @@
33
// found in the LICENSE file.
44

55
@import camera;
6+
@import camera.Test;
67
@import XCTest;
78
@import AVFoundation;
89
#import <OCMock/OCMock.h>
910

10-
// Mirrors FocusMode in camera.dart
11-
typedef enum {
12-
FocusModeAuto,
13-
FocusModeLocked,
14-
} FocusMode;
15-
16-
@interface FLTCam : NSObject <FlutterTexture,
17-
AVCaptureVideoDataOutputSampleBufferDelegate,
18-
AVCaptureAudioDataOutputSampleBufferDelegate>
19-
20-
- (void)applyFocusMode;
21-
- (void)applyFocusMode:(FocusMode)focusMode onDevice:(AVCaptureDevice *)captureDevice;
22-
- (void)setFocusPointWithResult:(FLTThreadSafeFlutterResult *)result x:(double)x y:(double)y;
23-
@end
24-
2511
@interface CameraFocusTests : XCTestCase
2612
@property(readonly, nonatomic) FLTCam *camera;
2713
@property(readonly, nonatomic) id mockDevice;
@@ -51,7 +37,7 @@ - (void)testAutoFocusWithContinuousModeSupported_ShouldSetContinuousAutoFocus {
5137
[[_mockDevice reject] setFocusMode:AVCaptureFocusModeAutoFocus];
5238

5339
// Run test
54-
[_camera applyFocusMode:FocusModeAuto onDevice:_mockDevice];
40+
[_camera applyFocusMode:FLTFocusModeAuto onDevice:_mockDevice];
5541

5642
// Expect setFocusMode:AVCaptureFocusModeContinuousAutoFocus
5743
OCMVerify([_mockDevice setFocusMode:AVCaptureFocusModeContinuousAutoFocus]);
@@ -68,7 +54,7 @@ - (void)testAutoFocusWithContinuousModeNotSupported_ShouldSetAutoFocus {
6854
[[_mockDevice reject] setFocusMode:AVCaptureFocusModeContinuousAutoFocus];
6955

7056
// Run test
71-
[_camera applyFocusMode:FocusModeAuto onDevice:_mockDevice];
57+
[_camera applyFocusMode:FLTFocusModeAuto onDevice:_mockDevice];
7258

7359
// Expect setFocusMode:AVCaptureFocusModeAutoFocus
7460
OCMVerify([_mockDevice setFocusMode:AVCaptureFocusModeAutoFocus]);
@@ -86,7 +72,7 @@ - (void)testAutoFocusWithNoModeSupported_ShouldSetNothing {
8672
[[_mockDevice reject] setFocusMode:AVCaptureFocusModeAutoFocus];
8773

8874
// Run test
89-
[_camera applyFocusMode:FocusModeAuto onDevice:_mockDevice];
75+
[_camera applyFocusMode:FLTFocusModeAuto onDevice:_mockDevice];
9076
}
9177

9278
- (void)testLockedFocusWithModeSupported_ShouldSetModeAutoFocus {
@@ -99,7 +85,7 @@ - (void)testLockedFocusWithModeSupported_ShouldSetModeAutoFocus {
9985
[[_mockDevice reject] setFocusMode:AVCaptureFocusModeContinuousAutoFocus];
10086

10187
// Run test
102-
[_camera applyFocusMode:FocusModeLocked onDevice:_mockDevice];
88+
[_camera applyFocusMode:FLTFocusModeLocked onDevice:_mockDevice];
10389

10490
// Expect setFocusMode:AVCaptureFocusModeAutoFocus
10591
OCMVerify([_mockDevice setFocusMode:AVCaptureFocusModeAutoFocus]);
@@ -116,7 +102,7 @@ - (void)testLockedFocusWithModeNotSupported_ShouldSetNothing {
116102
[[_mockDevice reject] setFocusMode:AVCaptureFocusModeAutoFocus];
117103

118104
// Run test
119-
[_camera applyFocusMode:FocusModeLocked onDevice:_mockDevice];
105+
[_camera applyFocusMode:FLTFocusModeLocked onDevice:_mockDevice];
120106
}
121107

122108
- (void)testSetFocusPointWithResult_SetsFocusPointOfInterest {

packages/camera/camera/example/ios/RunnerTests/CameraPreviewPauseTests.m

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,12 @@
33
// found in the LICENSE file.
44

55
@import camera;
6+
@import camera.Test;
67
@import XCTest;
78
@import AVFoundation;
89
#import <OCMock/OCMock.h>
910
#import "MockFLTThreadSafeFlutterResult.h"
1011

11-
@interface FLTCam : NSObject <FlutterTexture,
12-
AVCaptureVideoDataOutputSampleBufferDelegate,
13-
AVCaptureAudioDataOutputSampleBufferDelegate>
14-
@property(assign, nonatomic) BOOL isPreviewPaused;
15-
16-
- (void)pausePreviewWithResult:(FLTThreadSafeFlutterResult *)result;
17-
18-
- (void)resumePreviewWithResult:(FLTThreadSafeFlutterResult *)result;
19-
@end
20-
2112
@interface CameraPreviewPauseTests : XCTestCase
2213
@end
2314

0 commit comments

Comments
 (0)