forked from qt-creator/qt-creator
QmlDesigner: Fix issue with duration tracking
An event can start and end duration tracking at the same time. Task-number: QDS-9961 Change-Id: I97265f753887e87ef5bdb9b4bc93ca97922a51d4 Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
@@ -710,17 +710,17 @@ void QmlDesignerPlugin::emitUsageStatistics(const QString &identifier)
|
|||||||
const int currentTime = privateInstance()->timer.elapsed();
|
const int currentTime = privateInstance()->timer.elapsed();
|
||||||
const int currentDuration = (currentTime - activeData.time);
|
const int currentDuration = (currentTime - activeData.time);
|
||||||
if (currentDuration < activeData.maxDuration)
|
if (currentDuration < activeData.maxDuration)
|
||||||
emit instance()->usageStatisticsUsageDuration(activeData.newIdentifer, currentDuration);
|
instance()->emitUsageStatisticsUsageDuration(activeData.newIdentifer, currentDuration);
|
||||||
|
|
||||||
privateInstance()->m_activeTraceIdentifierDataHash.remove(identifier);
|
privateInstance()->m_activeTraceIdentifierDataHash.remove(identifier);
|
||||||
} else {
|
}
|
||||||
|
|
||||||
TraceIdentifierData data = privateInstance()->m_traceIdentifierDataHash.value(identifier);
|
TraceIdentifierData data = privateInstance()->m_traceIdentifierDataHash.value(identifier);
|
||||||
|
|
||||||
if (!data.identifier.isEmpty()) {
|
if (!data.identifier.isEmpty()) {
|
||||||
data.time = privateInstance()->timer.elapsed();
|
data.time = privateInstance()->timer.elapsed();
|
||||||
privateInstance()->m_activeTraceIdentifierDataHash.insert(data.identifier, data);
|
privateInstance()->m_activeTraceIdentifierDataHash.insert(data.identifier, data);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
const auto values = privateInstance()->m_activeTraceIdentifierDataHash.values();
|
const auto values = privateInstance()->m_activeTraceIdentifierDataHash.values();
|
||||||
for (const auto &activeData : values) {
|
for (const auto &activeData : values) {
|
||||||
@@ -862,6 +862,12 @@ void QmlDesignerPlugin::emitUsageStatisticsTime(const QString &identifier, int e
|
|||||||
emit instance()->usageStatisticsUsageTimer(normalizeIdentifier(identifier), elapsed);
|
emit instance()->usageStatisticsUsageTimer(normalizeIdentifier(identifier), elapsed);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void QmlDesignerPlugin::emitUsageStatisticsUsageDuration(const QString &identifier, int elapsed)
|
||||||
|
{
|
||||||
|
QTC_ASSERT(instance(), return );
|
||||||
|
emit instance()->usageStatisticsUsageDuration(identifier, elapsed);
|
||||||
|
}
|
||||||
|
|
||||||
QmlDesignerPlugin *QmlDesignerPlugin::instance()
|
QmlDesignerPlugin *QmlDesignerPlugin::instance()
|
||||||
{
|
{
|
||||||
return m_instance;
|
return m_instance;
|
||||||
|
|||||||
@@ -76,6 +76,7 @@ public:
|
|||||||
static void emitUsageStatisticsContextAction(const QString &identifier);
|
static void emitUsageStatisticsContextAction(const QString &identifier);
|
||||||
static void emitUsageStatisticsHelpRequested(const QString &identifier);
|
static void emitUsageStatisticsHelpRequested(const QString &identifier);
|
||||||
static void emitUsageStatisticsTime(const QString &identifier, int elapsed);
|
static void emitUsageStatisticsTime(const QString &identifier, int elapsed);
|
||||||
|
static void emitUsageStatisticsUsageDuration(const QString &identifier, int elapsed);
|
||||||
|
|
||||||
static AsynchronousImageCache &imageCache();
|
static AsynchronousImageCache &imageCache();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user