Which version on Qt are you using? It looks like this was fixed in 5.5:

https://codereview.qt-project.org/#/c/109592/



-Richard

________________________________
Fra: Interest <[email protected]> på vegne av Robert Iakobashvili 
<[email protected]>
Sendt: 10. november 2015 06:49
Til: [email protected]
Emne: [Interest] Qt at iOS: Crash on null QWindow pointer in 
QIOSInputContext::scrollToCursor

Gentlemen,
My app was crashing on a null QWindow pointer
from focusView() in QIOSInputContext::scrollToCursor

Unfortunately, my attempt to create a reproducing example
failed; thus, a formal bug-report is not an option.

The scenario is:
sending an email from a native popover over a Qt-widget app,
it was crashing on appearance of
Apple's Mail window.

It could be work-arounded by checking the result of
focusView() call prior to using it and not assuming that
it for sure contains a valid QWindow:

--- qiosinputcontext.mm.orig    2015-11-02 14:39:50.000000000 +0200
+++ qiosinputcontext.mm<http://qiosinputcontext.mm>    2015-11-02 
14:45:43.000000000 +0200
@@ -456,7 +456,10 @@

     const int margin = 20;
     QRectF translatedCursorPos = qApp->inputMethod()->cursorRectangle();
-    translatedCursorPos.translate(focusView().qwindow->geometry().topLeft());
+    QWindow* qw = focusView().qwindow;
+    if (! qw)
+    return;
+    translatedCursorPos.translate(qw->geometry().topLeft());

     qreal keyboardY = [rootView convertRect:m_keyboardState.keyboardEndRect 
fromView:nil].origin.y;
     int statusBarY = qGuiApp->primaryScreen()->availableGeometry().y();


Hope, it helps to somebody.

Take care,

Regards,
Robert
_______________________________________________
Interest mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to