Skip to content

Commit ca742b6

Browse files
authored
Merge pull request #18 from Apparence-io/fix/flash_ios
✨ Add "On" flash mode for iOS
2 parents 1cfc890 + 5d26797 commit ca742b6

File tree

7 files changed

+17
-5
lines changed

7 files changed

+17
-5
lines changed

example/ios/Flutter/.last_build_id

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
9ed35fd658790c3edd7f03fdbc99b18f
1+
e2576089e52ba78a9fa95a7cfec17fb7

example/ios/Podfile.lock

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,31 @@ PODS:
22
- camerawesome (0.0.1):
33
- Flutter
44
- Flutter (1.0.0)
5+
- integration_test (0.0.1):
6+
- Flutter
57
- path_provider (0.0.1):
68
- Flutter
79

810
DEPENDENCIES:
911
- camerawesome (from `.symlinks/plugins/camerawesome/ios`)
1012
- Flutter (from `Flutter`)
13+
- integration_test (from `.symlinks/plugins/integration_test/ios`)
1114
- path_provider (from `.symlinks/plugins/path_provider/ios`)
1215

1316
EXTERNAL SOURCES:
1417
camerawesome:
1518
:path: ".symlinks/plugins/camerawesome/ios"
1619
Flutter:
1720
:path: Flutter
21+
integration_test:
22+
:path: ".symlinks/plugins/integration_test/ios"
1823
path_provider:
1924
:path: ".symlinks/plugins/path_provider/ios"
2025

2126
SPEC CHECKSUMS:
2227
camerawesome: 0f8628efae993cb064ec4f36322e89c237e1064f
2328
Flutter: 0e3d915762c693b495b44d77113d4970485de6ec
29+
integration_test: 5ed24a436eb7ec17b6a13046e9bf7ca4a404e59e
2430
path_provider: abfe2b5c733d04e238b0d8691db0cfd63a27a93c
2531

2632
PODFILE CHECKSUM: aafe91acc616949ddb318b77800a7f51bffa2a4c

example/test_driver/app.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import 'package:camerawesome/camerapreview.dart';
44
import 'package:camerawesome_example/main.dart' as app;
55
import 'package:camerawesome_example/main.dart';
66
import 'package:flutter/material.dart';
7-
import 'package:flutter_driver/driver_extension.dart';
87
import 'package:flutter_test/flutter_test.dart';
98
import 'package:integration_test/integration_test.dart';
109
import 'package:path_provider/path_provider.dart';

example/test_driver/app_test.dart

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
import 'dart:io';
22

3-
import 'package:flutter_driver/flutter_driver.dart';
4-
import 'package:test/test.dart';
53
import 'dart:async';
4+
65
import 'package:integration_test/integration_test_driver.dart';
76

87
const String _examplePackage = 'com.apparence.camerawesome_example';

ios/Classes/CameraView.m

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@ - (instancetype)initWithCameraSensor:(CameraSensor)sensor result:(nonnull Flutte
3232
[_captureConnection setAutomaticallyAdjustsVideoMirroring:NO];
3333

3434
// By default enable auto flash mode
35-
_flashMode = AVCaptureFlashModeAuto;
35+
_flashMode = AVCaptureFlashModeOff;
36+
_torchMode = AVCaptureTorchModeOff;
3637

3738
_previewLayer = [AVCaptureVideoPreviewLayer layerWithSession:_captureSession];
3839
_previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
@@ -216,6 +217,10 @@ - (void)setFlashMode:(CameraFlashMode)flashMode {
216217
_torchMode = AVCaptureTorchModeOff;
217218
_flashMode = AVCaptureFlashModeOff;
218219
break;
220+
case On:
221+
_torchMode = AVCaptureTorchModeOff;
222+
_flashMode = AVCaptureFlashModeOn;
223+
break;
219224
case Auto:
220225
_torchMode = AVCaptureTorchModeAuto;
221226
_flashMode = AVCaptureFlashModeAuto;

ios/Classes/CamerawesomePlugin.m

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -246,6 +246,8 @@ - (void)_handleFlashMode:(FlutterMethodCall*)call result:(FlutterResult)result
246246
CameraFlashMode flash;
247247
if ([flashMode isEqualToString:@"NONE"]) {
248248
flash = None;
249+
} else if ([flashMode isEqualToString:@"ON"]) {
250+
flash = On;
249251
} else if ([flashMode isEqualToString:@"AUTO"]) {
250252
flash = Auto;
251253
} else if ([flashMode isEqualToString:@"ALWAYS"]) {

ios/Classes/Constants/CameraFlash.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010

1111
typedef enum {
1212
None, // Flash is disabled
13+
On, // Flash is always enabled when photo is taken
1314
Auto, // Flash is enabled when user take a photo only if necessary
1415
Always, // Flash is enabled anytime, then trigger Auto mode when a photo is taken
1516
} CameraFlashMode;

0 commit comments

Comments
 (0)