Skip to content

Commit 246f5a4

Browse files
authored
Merge pull request #141 from Apparence-io/fix/ios-orientation
🐛 Fix iOS front sensor orientation
2 parents 584d2c4 + 566efe3 commit 246f5a4

File tree

8 files changed

+10
-12
lines changed

8 files changed

+10
-12
lines changed

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Before creating any Pull Request, confirm that it meets all requirements listed
88

99
- [ ] 📕 I read the [Contributing page](https://github.com/Apparence-io/camera_awesome/blob/master/CONTRIBUTING.md).
1010
- [ ] 🤝 I match the actual coding style.
11-
- [ ] ✅ I ran ```flutter analyse``` without any issues.
11+
- [ ] ✅ I ran ```flutter analyze``` without any issues.
1212

1313
## Breaking Change
1414

example/lib/main.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import 'dart:async';
22
import 'dart:io';
3-
import 'dart:typed_data';
43

54
import 'package:camerawesome/models/orientations.dart';
65
import 'package:camerawesome_example/widgets/bottom_bar.dart';

example/pubspec.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ packages:
2828
path: ".."
2929
relative: true
3030
source: path
31-
version: "0.3.4"
31+
version: "0.3.5"
3232
characters:
3333
dependency: transitive
3434
description:

ios/Classes/CameraPreview/CameraPreview.m

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ - (instancetype)initWithCameraSensor:(CameraSensor)sensor
3333
[_captureVideoOutput setAlwaysDiscardsLateVideoFrames:YES];
3434
[_captureVideoOutput setSampleBufferDelegate:self queue:dispatch_get_main_queue()];
3535
[_captureSession addOutputWithNoConnections:_captureVideoOutput];
36+
37+
_cameraSensor = sensor;
3638

3739
[self initCameraPreview:sensor];
3840

@@ -47,8 +49,6 @@ - (instancetype)initWithCameraSensor:(CameraSensor)sensor
4749
_previewLayer = [AVCaptureVideoPreviewLayer layerWithSession:_captureSession];
4850
_previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
4951

50-
_cameraSensor = sensor;
51-
5252
// Controllers init
5353
_videoController = [[VideoController alloc] initWithEventSink:videoRecordingEventSink result:result];
5454
_imageStreamController = [[ImageStreamController alloc] initWithEventSink:imageStreamEventSink];
@@ -88,7 +88,7 @@ - (void)initCameraPreview:(CameraSensor)sensor {
8888

8989
// Mirror the preview only on portrait mode
9090
[_captureConnection setAutomaticallyAdjustsVideoMirroring:NO];
91-
[_captureConnection setVideoMirrored:(_cameraSensor == Back)];
91+
[_captureConnection setVideoMirrored:(_cameraSensor == Front)];
9292
[_captureConnection setVideoOrientation:AVCaptureVideoOrientationPortrait];
9393

9494
[self setCameraPresset:CGSizeMake(0, 0)];
@@ -188,12 +188,12 @@ - (void)setSensor:(CameraSensor)sensor {
188188
[_captureSession removeOutput:_capturePhotoOutput];
189189
[_captureSession removeConnection:_captureConnection];
190190

191+
_cameraSensor = sensor;
192+
191193
// Init the camera preview with the selected sensor
192194
[self initCameraPreview:sensor];
193195

194196
[_captureSession commitConfiguration];
195-
196-
_cameraSensor = sensor;
197197
}
198198

199199
/// Set zoom level

ios/Classes/Controllers/Picture/CameraPictureController.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ - (void)captureOutput:(AVCapturePhotoOutput *)output
5656
- (UIImageOrientation)getJpegOrientation {
5757
switch (_orientation) {
5858
case UIDeviceOrientationPortrait:
59-
return UIImageOrientationRight;
59+
return (_sensor == Back) ? UIImageOrientationRight : UIImageOrientationLeftMirrored;
6060
break;
6161
case UIDeviceOrientationLandscapeRight:
6262
return (_sensor == Back) ? UIImageOrientationUp : UIImageOrientationDown;

lib/camerapreview.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import 'dart:async';
22
import 'dart:io';
3-
import 'dart:typed_data';
43

54
import 'package:camerawesome/camerawesome_plugin.dart';
65
import 'package:camerawesome/models/orientations.dart';
@@ -471,6 +470,7 @@ class _CameraPreviewWidget extends StatelessWidget {
471470
this.size,
472471
this.textureId,
473472
this.fitted = false,
473+
// ignore: unused_element
474474
this.testMode = false,
475475
});
476476

lib/camerawesome_plugin.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import 'dart:async';
22
import 'dart:io';
3-
import 'dart:typed_data';
43

54
import 'package:flutter/material.dart';
65
import 'package:flutter/services.dart';

pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: camerawesome
22
description: Easiest Flutter camera Plugin supporting capturing images, streaming images, video recording, switch sensors, autofocus, flash... on Android and iOS
3-
version: 0.3.4
3+
version: 0.3.5
44
homepage: https://Apparence.io
55
repository: https://github.com/Apparence-io/camera_awesome
66

0 commit comments

Comments
 (0)