QmlProfiler: Make sure timeChanged() signal is queued when needed

It can be triggered from a thread loading trace data. This triggered
the warnings about QObject::startTimer and QObject::killTimer and was
generelly unsafe.

Change-Id: Iee1f5f29a49147a20b1f5c826f85b6713fcb8a45
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
This commit is contained in:
Ulf Hermann
2015-08-31 18:00:24 +02:00
parent 599c5a034a
commit 1caa899b8d

View File

@@ -97,7 +97,7 @@ QmlProfilerTraceView::QmlProfilerTraceView(QWidget *parent, QmlProfilerTool *pro
d->m_zoomControl = new Timeline::TimelineZoomControl(this); d->m_zoomControl = new Timeline::TimelineZoomControl(this);
connect(modelManager->traceTime(), &QmlProfilerTraceTime::timeChanged, connect(modelManager->traceTime(), &QmlProfilerTraceTime::timeChanged,
[this](qint64 start, qint64 end) { this, [this](qint64 start, qint64 end) {
d->m_zoomControl->setTrace(start, end); d->m_zoomControl->setTrace(start, end);
d->m_zoomControl->setRange(start, start + (end - start) / 10); d->m_zoomControl->setRange(start, start + (end - start) / 10);
}); });