Skip to content

Commit 05f16d5

Browse files
authored
Merge pull request #99 from hyperoslo/fix/torch-mode
Fix torch mode for front camera
2 parents 6eee165 + 4a8ae52 commit 05f16d5

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

Sources/Controllers/CameraViewController.swift

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ public final class CameraViewController: UIViewController {
5858
private var torchMode: TorchMode = .off {
5959
didSet {
6060
guard let captureDevice = captureDevice, captureDevice.hasFlash else { return }
61+
guard captureDevice.isTorchModeSupported(torchMode.captureTorchMode) else { return }
6162

6263
do {
6364
try captureDevice.lockForConfiguration()
@@ -138,7 +139,8 @@ public final class CameraViewController: UIViewController {
138139
torchMode = .off
139140
captureSession.startRunning()
140141
focusView.isHidden = false
141-
flashButton.isHidden = false
142+
flashButton.isHidden = captureDevice?.position == .front
143+
cameraButton.isHidden = !showsCameraButton
142144
}
143145

144146
func stopCapturing() {
@@ -150,6 +152,7 @@ public final class CameraViewController: UIViewController {
150152
captureSession.stopRunning()
151153
focusView.isHidden = true
152154
flashButton.isHidden = true
155+
cameraButton.isHidden = true
153156
}
154157

155158
// MARK: - Actions
@@ -243,6 +246,7 @@ public final class CameraViewController: UIViewController {
243246
}
244247
captureSession.addInput(newInput)
245248
captureSession.commitConfiguration()
249+
flashButton.isHidden = position == .front
246250
} catch {
247251
delegate?.cameraViewController(self, didReceiveError: error)
248252
return
@@ -423,7 +427,7 @@ private extension CameraViewController {
423427
func makeCameraButton() -> UIButton {
424428
let button = UIButton(type: .custom)
425429
button.setImage(imageNamed("cameraRotate"), for: UIControlState())
426-
button.isHidden = showsCameraButton
430+
button.isHidden = !showsCameraButton
427431
return button
428432
}
429433
}

0 commit comments

Comments
 (0)