From acbb7d86058e9603334a4d61807c1e06f59cdbd5 Mon Sep 17 00:00:00 2001 From: Rusty Wagner Date: Thu, 1 Feb 2024 18:31:40 -0500 Subject: Use per view type context sensitivity for most sidebar widgets to significantly reduce resource usage when multiple panes are open --- ui/memorymap.h | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'ui/memorymap.h') diff --git a/ui/memorymap.h b/ui/memorymap.h index 98cbbd04..8e9df680 100644 --- a/ui/memorymap.h +++ b/ui/memorymap.h @@ -195,7 +195,6 @@ class BINARYNINJAUIAPI MemoryMapView : public QWidget, public View Q_OBJECT BinaryViewRef m_data; - ViewFrame* m_view; MemoryMapContainer* m_container; SectionWidget* m_sectionWidget; @@ -207,7 +206,7 @@ class BINARYNINJAUIAPI MemoryMapView : public QWidget, public View void navigateToRawAddress(uint64_t address); public: - MemoryMapView(BinaryViewRef data, ViewFrame* view, MemoryMapContainer* container); + MemoryMapView(BinaryViewRef data, MemoryMapContainer* container); BinaryViewRef getData() override { return m_data; } uint64_t getCurrentOffset() override; @@ -231,12 +230,11 @@ class BINARYNINJAUIAPI MemoryMapContainer : public QWidget, public ViewContainer friend class StringsView; - ViewFrame* m_view; MemoryMapView* m_memoryMap; MemoryMapSidebarWidget* m_widget; public: - MemoryMapContainer(BinaryViewRef data, ViewFrame* view, MemoryMapSidebarWidget* parent); + MemoryMapContainer(BinaryViewRef data, MemoryMapSidebarWidget* parent); virtual View* getView() override { return m_memoryMap; } MemoryMapView* getMemoryMapView() { return m_memoryMap; } @@ -273,7 +271,7 @@ Q_OBJECT MemoryMapContainer* m_container; public: - MemoryMapSidebarWidget(BinaryViewRef data, ViewFrame* frame); + MemoryMapSidebarWidget(BinaryViewRef data); void focus() override; }; @@ -286,6 +284,7 @@ class BINARYNINJAUIAPI MemoryMapSidebarWidgetType : public SidebarWidgetType public: MemoryMapSidebarWidgetType(); SidebarWidgetLocation defaultLocation() const override { return SidebarWidgetLocation::LeftContent; } + SidebarContextSensitivity contextSensitivity() const override { return PerViewTypeSidebarContext; } SidebarWidget* createWidget(ViewFrame* frame, BinaryViewRef data) override; virtual bool canUseAsPane(SplitPaneWidget*, BinaryViewRef) const override { return true; } virtual Pane* createPane(SplitPaneWidget* panes, BinaryViewRef data) override; -- cgit v1.3.1