diff --git a/ui/ttdbookmarkwidget.cpp b/ui/ttdbookmarkwidget.cpp index 9d706c9f..9d53881b 100644 --- a/ui/ttdbookmarkwidget.cpp +++ b/ui/ttdbookmarkwidget.cpp @@ -606,5 +606,5 @@ SidebarWidget* TTDBookmarkWidgetType::createWidget(ViewFrame* frame, BinaryViewR SidebarContentClassifier* TTDBookmarkWidgetType::contentClassifier(ViewFrame*, BinaryViewRef data) { - return new ActiveDebugSessionSidebarContentClassifier(data); + return new ActiveDebugSessionSidebarContentClassifier(data, true); } diff --git a/ui/ttdcallswidget.cpp b/ui/ttdcallswidget.cpp index 61925a1c..4fff7e6f 100644 --- a/ui/ttdcallswidget.cpp +++ b/ui/ttdcallswidget.cpp @@ -839,7 +839,7 @@ SidebarWidget* TTDCallsWidgetType::createWidget(ViewFrame* frame, BinaryViewRef SidebarContentClassifier* TTDCallsWidgetType::contentClassifier(ViewFrame*, BinaryViewRef data) { - return new ActiveDebugSessionSidebarContentClassifier(data); + return new ActiveDebugSessionSidebarContentClassifier(data, true); } void TTDCallsWidgetType::SetPendingQuery( diff --git a/ui/ttdeventswidget.cpp b/ui/ttdeventswidget.cpp index cf89c558..23fadea1 100644 --- a/ui/ttdeventswidget.cpp +++ b/ui/ttdeventswidget.cpp @@ -1197,5 +1197,5 @@ SidebarWidget* TTDEventsWidgetType::createWidget(ViewFrame* frame, BinaryViewRef SidebarContentClassifier* TTDEventsWidgetType::contentClassifier(ViewFrame*, BinaryViewRef data) { - return new ActiveDebugSessionSidebarContentClassifier(data); + return new ActiveDebugSessionSidebarContentClassifier(data, true); } diff --git a/ui/ttdmemorywidget.cpp b/ui/ttdmemorywidget.cpp index 512e4db8..509d3816 100644 --- a/ui/ttdmemorywidget.cpp +++ b/ui/ttdmemorywidget.cpp @@ -1327,7 +1327,7 @@ SidebarWidget* TTDMemoryWidgetType::createWidget(ViewFrame* frame, BinaryViewRef SidebarContentClassifier* TTDMemoryWidgetType::contentClassifier(ViewFrame*, BinaryViewRef data) { - return new ActiveDebugSessionSidebarContentClassifier(data); + return new ActiveDebugSessionSidebarContentClassifier(data, true); } void TTDMemoryWidgetType::SetPendingQuery(ViewFrame* frame, BinaryViewRef data, uint64_t startAddr, uint64_t endAddr, TTDMemoryAccessType accessType) diff --git a/ui/ui.cpp b/ui/ui.cpp index ec245d0b..4014b871 100644 --- a/ui/ui.cpp +++ b/ui/ui.cpp @@ -2181,12 +2181,13 @@ extern "C" } -ActiveDebugSessionSidebarContentClassifier::ActiveDebugSessionSidebarContentClassifier(BinaryViewRef data) +ActiveDebugSessionSidebarContentClassifier::ActiveDebugSessionSidebarContentClassifier(BinaryViewRef data, bool requireTTD) : + m_requireTTD(requireTTD) { m_debugger = DebuggerController::GetController(data); if (m_debugger) { - if (m_debugger->IsConnected()) + if (m_debugger->IsConnected() && (!m_requireTTD || m_debugger->IsTTD())) m_contentClassification = SidebarHasRelevantContent; m_eventIndex = m_debugger->RegisterEventCallback( @@ -2197,7 +2198,8 @@ ActiveDebugSessionSidebarContentClassifier::ActiveDebugSessionSidebarContentClas case ResumeEventType: case StepIntoEventType: case TargetStoppedEventType: - m_contentClassification = SidebarHasRelevantContent; + if (!m_requireTTD || (m_debugger && m_debugger->IsTTD())) + m_contentClassification = SidebarHasRelevantContent; Q_EMIT contentClassificationChanged(); break; case DetachedEventType: diff --git a/ui/ui.h b/ui/ui.h index aa1db8d0..d24ed7d5 100644 --- a/ui/ui.h +++ b/ui/ui.h @@ -108,9 +108,10 @@ class ActiveDebugSessionSidebarContentClassifier : public SidebarContentClassifi size_t m_eventIndex; SidebarContentClassification m_contentClassification = SidebarHasNoContent; DebuggerControllerRef m_debugger; + bool m_requireTTD; public: - ActiveDebugSessionSidebarContentClassifier(BinaryViewRef data); + ActiveDebugSessionSidebarContentClassifier(BinaryViewRef data, bool requireTTD = false); ~ActiveDebugSessionSidebarContentClassifier() override; SidebarContentClassification contentClassification() override { return m_contentClassification; } };