diff --git a/Source/Core/DolphinQt/Debugger/RegisterWidget.cpp b/Source/Core/DolphinQt/Debugger/RegisterWidget.cpp index 83c8275873..1b3511310b 100644 --- a/Source/Core/DolphinQt/Debugger/RegisterWidget.cpp +++ b/Source/Core/DolphinQt/Debugger/RegisterWidget.cpp @@ -123,8 +123,10 @@ void RegisterWidget::ShowContextMenu() // It's not related to timekeeping devices. menu->addAction(tr("Add to &watch"), this, [this, item] { emit RequestMemoryBreakpoint(item->GetValue()); }); - menu->addAction(tr("View &memory")); - menu->addAction(tr("View &code")); + menu->addAction(tr("View &memory"), this, + [this, item] { emit RequestViewInMemory(item->GetValue()); }); + menu->addAction(tr("View &code"), this, + [this, item] { emit RequestViewInCode(item->GetValue()); }); menu->addSeparator(); diff --git a/Source/Core/DolphinQt/Debugger/RegisterWidget.h b/Source/Core/DolphinQt/Debugger/RegisterWidget.h index cf33915c03..f6da56dcba 100644 --- a/Source/Core/DolphinQt/Debugger/RegisterWidget.h +++ b/Source/Core/DolphinQt/Debugger/RegisterWidget.h @@ -24,6 +24,8 @@ public: signals: void RequestTableUpdate(); + void RequestViewInCode(u32 addr); + void RequestViewInMemory(u32 addr); void RequestMemoryBreakpoint(u32 addr); void UpdateTable(); void UpdateValue(QTableWidgetItem* item); diff --git a/Source/Core/DolphinQt/MainWindow.cpp b/Source/Core/DolphinQt/MainWindow.cpp index 745ecf0fd5..bd1bbce1df 100644 --- a/Source/Core/DolphinQt/MainWindow.cpp +++ b/Source/Core/DolphinQt/MainWindow.cpp @@ -394,6 +394,11 @@ void MainWindow::CreateComponents() [this](u32 addr) { m_breakpoint_widget->AddAddressMBP(addr); }); connect(m_register_widget, &RegisterWidget::RequestMemoryBreakpoint, [this](u32 addr) { m_breakpoint_widget->AddAddressMBP(addr); }); + connect(m_register_widget, &RegisterWidget::RequestViewInMemory, m_memory_widget, + [this](u32 addr) { m_memory_widget->SetAddress(addr); }); + connect(m_register_widget, &RegisterWidget::RequestViewInCode, m_code_widget, [this](u32 addr) { + m_code_widget->SetAddress(addr, CodeViewWidget::SetAddressUpdate::WithUpdate); + }); connect(m_code_widget, &CodeWidget::BreakpointsChanged, m_breakpoint_widget, &BreakpointWidget::Update);