diff --git a/src/plugins/debugger/cdb/cdbengine.cpp b/src/plugins/debugger/cdb/cdbengine.cpp index c323cf6cb71..f631fcd884a 100644 --- a/src/plugins/debugger/cdb/cdbengine.cpp +++ b/src/plugins/debugger/cdb/cdbengine.cpp @@ -2008,9 +2008,9 @@ void CdbEngine::processStop(const GdbMi &stopReason, bool conditionalBreakPointT // Fire off remaining commands asynchronously if (!m_pendingBreakpointMap.isEmpty() && !m_pendingSubBreakpointMap.isEmpty()) listBreakpoints(); - if (Internal::isDockVisible(QLatin1String(DOCKWIDGET_REGISTER))) + if (Internal::isRegistersWindowVisible()) reloadRegisters(); - if (Internal::isDockVisible(QLatin1String(DOCKWIDGET_MODULES))) + if (Internal::isModulesWindowVisible()) reloadModules(); } // After the sequence has been sent off and CDB is pondering the commands, diff --git a/src/plugins/debugger/debuggercore.h b/src/plugins/debugger/debuggercore.h index 023278d4271..2ac5a48ce29 100644 --- a/src/plugins/debugger/debuggercore.h +++ b/src/plugins/debugger/debuggercore.h @@ -77,7 +77,8 @@ void displayDebugger(DebuggerEngine *engine, bool updateEngine); void synchronizeBreakpoints(); QWidget *mainWindow(); -bool isDockVisible(const QString &objectName); +bool isRegistersWindowVisible(); +bool isModulesWindowVisible(); void showModuleSymbols(const QString &moduleName, const QVector &symbols); void showModuleSections(const QString &moduleName, const QVector §ions); void openMemoryEditor(); diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index 5a49e5bab14..46fb06f9ea3 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -3128,10 +3128,14 @@ QWidget *mainWindow() return dd->m_mainWindow; } -bool isDockVisible(const QString &objectName) +bool isRegistersWindowVisible() { - QDockWidget *dock = dd->findChild(objectName); - return dock && dock->toggleViewAction()->isChecked(); + return dd->m_registerWindow->isVisible(); +} + +bool isModulesWindowVisible() +{ + return dd->m_modulesWindow->isVisible(); } void openMemoryEditor() diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index d5e425a1384..8b0eaf17fc2 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -3445,7 +3445,7 @@ void GdbEngine::handleMakeSnapshot(const DebuggerResponse &response, const QStri void GdbEngine::reloadRegisters() { - if (!Internal::isDockVisible(_(DOCKWIDGET_REGISTER))) + if (!Internal::isRegistersWindowVisible()) return; if (state() != InferiorStopOk && state() != InferiorUnrunnable) diff --git a/src/plugins/debugger/lldb/lldbengine.cpp b/src/plugins/debugger/lldb/lldbengine.cpp index a1b3fd9ba7f..f818c83e298 100644 --- a/src/plugins/debugger/lldb/lldbengine.cpp +++ b/src/plugins/debugger/lldb/lldbengine.cpp @@ -956,7 +956,7 @@ void LldbEngine::handleLocationNotification(const GdbMi &reportedLocation) void LldbEngine::reloadRegisters() { - if (!Internal::isDockVisible(QLatin1String(DOCKWIDGET_REGISTER))) + if (!Internal::isRegistersWindowVisible()) return; DebuggerCommand cmd("fetchRegisters");