diff --git a/src/plugins/qmlprofiler/qmlprofilermodelmanager.cpp b/src/plugins/qmlprofiler/qmlprofilermodelmanager.cpp index ed42ee2c253..206fe7aa59c 100644 --- a/src/plugins/qmlprofiler/qmlprofilermodelmanager.cpp +++ b/src/plugins/qmlprofiler/qmlprofilermodelmanager.cpp @@ -93,7 +93,6 @@ void QmlProfilerTraceTime::setTime(qint64 startTime, qint64 endTime) if (startTime != m_startTime || endTime != m_endTime) { m_startTime = startTime; m_endTime = endTime; - emit timeChanged(startTime, endTime); } } @@ -105,7 +104,6 @@ void QmlProfilerTraceTime::decreaseStartTime(qint64 time) m_endTime = m_startTime; else QTC_ASSERT(m_endTime >= m_startTime, m_endTime = m_startTime); - emit timeChanged(time, m_endTime); } } @@ -117,7 +115,6 @@ void QmlProfilerTraceTime::increaseEndTime(qint64 time) m_startTime = m_endTime; else QTC_ASSERT(m_endTime >= m_startTime, m_startTime = m_endTime); - emit timeChanged(m_startTime, time); } } diff --git a/src/plugins/qmlprofiler/qmlprofilermodelmanager.h b/src/plugins/qmlprofiler/qmlprofilermodelmanager.h index 4c3fdec85ae..4cda9403315 100644 --- a/src/plugins/qmlprofiler/qmlprofilermodelmanager.h +++ b/src/plugins/qmlprofiler/qmlprofilermodelmanager.h @@ -51,9 +51,6 @@ public: qint64 endTime() const; qint64 duration() const; -signals: - void timeChanged(qint64,qint64); - public slots: void clear(); diff --git a/src/plugins/qmlprofiler/qmlprofilertraceview.cpp b/src/plugins/qmlprofiler/qmlprofilertraceview.cpp index 7d2b5c3fe9d..02601f0a413 100644 --- a/src/plugins/qmlprofiler/qmlprofilertraceview.cpp +++ b/src/plugins/qmlprofiler/qmlprofilertraceview.cpp @@ -90,10 +90,15 @@ QmlProfilerTraceView::QmlProfilerTraceView(QWidget *parent, QmlProfilerViewManag setObjectName(QLatin1String("QML Profiler")); d->m_zoomControl = new Timeline::TimelineZoomControl(this); - connect(modelManager->traceTime(), &QmlProfilerTraceTime::timeChanged, - this, [this](qint64 start, qint64 end) { - d->m_zoomControl->setTrace(start, end); - d->m_zoomControl->setRange(start, start + (end - start) / 10); + connect(modelManager, &QmlProfilerModelManager::stateChanged, this, [modelManager, this]() { + if (modelManager->state() == QmlProfilerModelManager::Done) { + qint64 start = modelManager->traceTime()->startTime(); + qint64 end = modelManager->traceTime()->endTime(); + d->m_zoomControl->setTrace(start, end); + d->m_zoomControl->setRange(start, start + (end - start) / 10); + } else if (modelManager->state() == QmlProfilerModelManager::ClearingData) { + d->m_zoomControl->clear(); + } }); QVBoxLayout *groupLayout = new QVBoxLayout;