diff options
-rw-r--r-- | src/plugins/platforms/blackberry/qbbbpseventfilter.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/plugins/platforms/blackberry/qbbbpseventfilter.cpp b/src/plugins/platforms/blackberry/qbbbpseventfilter.cpp index 81d7265..2835cc0 100644 --- a/src/plugins/platforms/blackberry/qbbbpseventfilter.cpp +++ b/src/plugins/platforms/blackberry/qbbbpseventfilter.cpp @@ -99,6 +99,19 @@ void QBBBpsEventFilter::registerForScreenEvents(QBBScreen *screen) return; } + int attached; + if (screen_get_display_property_iv(screen->nativeDisplay(), SCREEN_PROPERTY_ATTACHED, &attached) != BPS_SUCCESS) { + qWarning() << "QBB: unable to query display attachment"; + return; + } + + if (!attached) { +#if defined(QBBBPSEVENTFILTER_DEBUG) + qDebug() << Q_FUNC_INFO << "skipping event registration for non-attached screen"; +#endif + return; + } + if (screen_request_events(screen->nativeContext()) != BPS_SUCCESS) qWarning("QBB: failed to register for screen events on screen %p", screen->nativeContext()); } |