diff --git a/src/plugins/platforms/android/qandroidplatformscreen.cpp b/src/plugins/platforms/android/qandroidplatformscreen.cpp index 54c7a34efec..6c61306d021 100644 --- a/src/plugins/platforms/android/qandroidplatformscreen.cpp +++ b/src/plugins/platforms/android/qandroidplatformscreen.cpp @@ -43,7 +43,7 @@ public: } private: - QTime m_timer; + QElapsedTimer m_timer; QString m_msg; }; @@ -172,6 +172,7 @@ bool QAndroidPlatformScreen::event(QEvent *event) void QAndroidPlatformScreen::addWindow(QAndroidPlatformWindow *window) { + Q_ASSERT(window->backingStore()); if (window->parent() && window->isRaster()) return; diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index 9fc7184c58d..38dfe2509ec 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -1329,7 +1329,13 @@ void QWidgetPrivate::create() } #endif + // Android doesn't allow to re-use the backing store. + // => force creation of a new one. +#ifdef Q_OS_ANDROID + QBackingStore *store = nullptr; +#else QBackingStore *store = q->backingStore(); +#endif usesRhiFlush = false; // Re-use backing store, in case a new platform window was created and doesn't know about it.