diff --git a/src/plugins/qmlprofiler/qmlprofilertraceview.cpp b/src/plugins/qmlprofiler/qmlprofilertraceview.cpp index 375181744b1..f8d9734ae14 100644 --- a/src/plugins/qmlprofiler/qmlprofilertraceview.cpp +++ b/src/plugins/qmlprofiler/qmlprofilertraceview.cpp @@ -293,6 +293,16 @@ void QmlProfilerTraceView::showContextMenu(QPoint position) } } +bool QmlProfilerTraceView::isUsable() const +{ +#if (QT_VERSION >= QT_VERSION_CHECK(5, 8, 0)) + return d->m_mainView->quickWindow()->rendererInterface()->graphicsApi() + == QSGRendererInterface::OpenGL; +#else + return true; +#endif +} + void QmlProfilerTraceView::changeEvent(QEvent *e) { if (e->type() == QEvent::EnabledChange) { diff --git a/src/plugins/qmlprofiler/qmlprofilertraceview.h b/src/plugins/qmlprofiler/qmlprofilertraceview.h index 29e7915c20a..48fbdafaaed 100644 --- a/src/plugins/qmlprofiler/qmlprofilertraceview.h +++ b/src/plugins/qmlprofiler/qmlprofilertraceview.h @@ -55,6 +55,7 @@ public: qint64 selectionStart() const; qint64 selectionEnd() const; void showContextMenu(QPoint position); + bool isUsable() const; public slots: void clear(); diff --git a/src/plugins/qmlprofiler/qmlprofilerviewmanager.cpp b/src/plugins/qmlprofiler/qmlprofilerviewmanager.cpp index a832cae0c3a..6d8b67f03f8 100644 --- a/src/plugins/qmlprofiler/qmlprofilerviewmanager.cpp +++ b/src/plugins/qmlprofiler/qmlprofilerviewmanager.cpp @@ -147,6 +147,11 @@ void QmlProfilerViewManager::restrictEventsToRange(qint64 rangeStart, qint64 ran d->profilerModelManager->restrictToRange(rangeStart, rangeEnd); } +bool QmlProfilerViewManager::isTimelineUsable() const +{ + return d->traceView->isUsable(); +} + void QmlProfilerViewManager::raiseTimeline() { QTC_ASSERT(qobject_cast(d->traceView->parentWidget()), return); diff --git a/src/plugins/qmlprofiler/qmlprofilerviewmanager.h b/src/plugins/qmlprofiler/qmlprofilerviewmanager.h index e7b5d9ee947..b6010ef589f 100644 --- a/src/plugins/qmlprofiler/qmlprofilerviewmanager.h +++ b/src/plugins/qmlprofiler/qmlprofilerviewmanager.h @@ -53,6 +53,7 @@ public: bool isEventsRestrictedToRange() const; void restrictEventsToRange(qint64 rangeStart, qint64 rangeEnd); + bool isTimelineUsable() const; void raiseTimeline(); public slots: