QLPreviewController gets frozen after drawing in iOS17

There seem to be a regression in QLPreviewController with iOS17, since it works in both iOS16(latest) and iOS18b3.

After following the steps (described below), using iOS17.X the QLPreviewController gets frozen up so all of it's top buttons are no tappable, although you can still draw on the canvas.

Steps to reproduce:

  1. Setup QLPreviewController to preview a single image in png format.

The QLPreviewController should be presented as the rootViewController of a UINavigationController.

  1. Present the UINavigationController that has the QLPreviewController as its rootViewController.
  2. Tap the Markup button.
  3. Pick the leftest tool from the PencilKit tools at the bottom.
  4. Draw a curvy long line from the bottom-right corner of the canvas, to the top-left corner of the canvas.
  5. Tap any of the top buttons.

Current: The top buttons are not tappable. Expected: The top buttons are tappable.

Any idea how to workaround/fix this issue?

Notes:

  1. The issue seems to be reproducible in iOS17, and isn't reproducible in iOS16 or iOS18b3 using Xcode 15.4 and Xcode 16b3.
  2. The issue is reproducible in both iOS17 Simulator or devices.
  3. The issue is reproducible in both UIKit and SwiftUI.
  4. Possible same issue was mentioned here: https://stackoverflow.com/questions/78090416/navigation-toolbar-buttons-stop-working-after-keyboard-is-shown-on-ios-17-sw
  5. I couldn't attach a sample project to here due to file format limitation, but you can use the project from this repository and use a png instead of a pdf: https://github.com/NilCoalescing/SwiftUI-Code-Examples/tree/main/QuickLook/SwiftUIQuickLookInUINavigationController

(code by Natalia Panferova)

  1. Attached is the image of the drawing done in iOS17.5 Simulator.

@azi Please file a bug report using Feedback Assistant and attach the focused sample project to the bug report. Please post the Feedback number here for the record. Thanks!

@DTS Engineer

Done! FB14376916

Thanks

After revisiting this scenario it looks that on iOS 17 the top bar gets frozen whenever the user is annotating the image (in ANY way) and then we try to dismiss the QLPreviewController.

This is much more severe regression of QLPreviewController in iOS17 than we saw at the start.

@DTS Engineer is there a chance to expedite the process of this Feedback Report?

QLPreviewController gets frozen after drawing in iOS17
 
 
Q