diff --git a/Tusker/Screens/Compose/ComposeDrawingViewController.swift b/Tusker/Screens/Compose/ComposeDrawingViewController.swift index 43005101..cc124ad3 100644 --- a/Tusker/Screens/Compose/ComposeDrawingViewController.swift +++ b/Tusker/Screens/Compose/ComposeDrawingViewController.swift @@ -14,6 +14,30 @@ protocol ComposeDrawingViewControllerDelegate: AnyObject { func composeDrawingViewController(_ drawingController: ComposeDrawingViewController, saveDrawing drawing: PKDrawing) } +class ComposeDrawingNavigationController: UINavigationController { + override var preferredStatusBarStyle: UIStatusBarStyle { + .darkContent + } + + init(editing initialDrawing: PKDrawing, delegate: ComposeDrawingViewControllerDelegate) { + let vc = ComposeDrawingViewController(editing: initialDrawing) + vc.delegate = delegate + super.init(rootViewController: vc) + + modalPresentationStyle = .fullScreen + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override func viewDidLoad() { + super.viewDidLoad() + + overrideUserInterfaceStyle = .light + } +} + class ComposeDrawingViewController: UIViewController { weak var delegate: ComposeDrawingViewControllerDelegate? @@ -26,7 +50,7 @@ class ComposeDrawingViewController: UIViewController { private var toolPicker: PKToolPicker! private var initialDrawing: PKDrawing? - + init() { super.init(nibName: nil, bundle: nil) } @@ -45,7 +69,7 @@ class ComposeDrawingViewController: UIViewController { super.viewDidLoad() overrideUserInterfaceStyle = .light - + navigationItem.title = NSLocalizedString("Draw", comment: "compose drawing screen title") cancelBarButtonItem = UIBarButtonItem(barButtonSystemItem: .cancel, target: self, action: #selector(cancelPressed)) undoBarButtonItem = UIBarButtonItem(image: UIImage(systemName: "arrow.uturn.left.circle"), style: .plain, target: self, action: #selector(undoPressed)) @@ -63,7 +87,8 @@ class ComposeDrawingViewController: UIViewController { canvasView.drawingPolicy = .anyInput canvasView.minimumZoomScale = 0.5 canvasView.maximumZoomScale = 2 - canvasView.backgroundColor = .systemBackground + canvasView.backgroundColor = .white + canvasView.overrideUserInterfaceStyle = .light canvasView.translatesAutoresizingMaskIntoConstraints = false view.addSubview(canvasView) NSLayoutConstraint.activate([ @@ -74,6 +99,7 @@ class ComposeDrawingViewController: UIViewController { ]) toolPicker = PKToolPicker() + toolPicker.overrideUserInterfaceStyle = .light toolPicker.setVisible(true, forFirstResponder: canvasView) toolPicker.addObserver(canvasView) toolPicker.addObserver(self) diff --git a/Tusker/Screens/Compose/ComposeHostingController.swift b/Tusker/Screens/Compose/ComposeHostingController.swift index f420d08b..3c36a15a 100644 --- a/Tusker/Screens/Compose/ComposeHostingController.swift +++ b/Tusker/Screens/Compose/ComposeHostingController.swift @@ -360,11 +360,7 @@ extension ComposeHostingController: ComposeUIStateDelegate { drawing = PKDrawing() } - let drawingVC = ComposeDrawingViewController(editing: drawing) - drawingVC.delegate = self - let nav = UINavigationController(rootViewController: drawingVC) - nav.modalPresentationStyle = .fullScreen - present(nav, animated: true) + present(ComposeDrawingNavigationController(editing: drawing, delegate: self), animated: true) } }