From bf345c363832ba6a8ffeb74f9e0ce6e06f451853 Mon Sep 17 00:00:00 2001
From: dragonmacher <48328597+dragonmacher@users.noreply.github.com>
Date: Thu, 21 May 2026 13:04:05 -0400
Subject: [PATCH] GP-6835 - Function Call Graph - Added a snapshot feature
---
.../help/help/topics/Snapshots/Snapshots.html | 15 ++-
.../plugin/core/functiongraph/FGProvider.java | 1 -
.../data/functioncallgraph.theme.properties | 1 +
.../Function_Call_Graph.html | 10 ++
.../images/FunctionCallGraphProvider.png | Bin 32055 -> 24576 bytes
.../java/functioncalls/graph/FcgVertex.java | 7 +
.../graph/FcgVertexShapeProvider.java | 19 +++
.../graph/FunctionCallGraph.java | 75 +++++++++--
.../functioncalls/graph/view/FcgView.java | 13 +-
.../functioncalls/plugin/EmptyFcgData.java | 9 +-
.../java/functioncalls/plugin/FcgData.java | 12 +-
.../functioncalls/plugin/FcgProvider.java | 122 +++++++++++++++---
.../plugin/FunctionCallGraphPlugin.java | 61 ++++++---
.../functioncalls/plugin/ValidFcgData.java | 12 +-
.../FunctionCallGraphPluginScreenShots.java | 6 +-
.../graph/VisualGraphComponentProvider.java | 9 ++
.../graph/graphs/FilteringVisualGraph.java | 33 ++++-
.../main/java/help/CustomFavoritesView.java | 18 ++-
18 files changed, 346 insertions(+), 77 deletions(-)
diff --git a/Ghidra/Features/Base/src/main/help/help/topics/Snapshots/Snapshots.html b/Ghidra/Features/Base/src/main/help/help/topics/Snapshots/Snapshots.html
index 377072cd56..2e54ff172e 100644
--- a/Ghidra/Features/Base/src/main/help/help/topics/Snapshots/Snapshots.html
+++ b/Ghidra/Features/Base/src/main/help/help/topics/Snapshots/Snapshots.html
@@ -30,7 +30,7 @@ changes in one view cause the other views to follow along.
Ghidra main views now have corresponding Snapshot views A snapshot
+ style="font-weight: bold;"> views. A snapshot
view is similar to its related main view,
but it is disconnected. It does not respond to movements in
other views and navigating within a snapshot view does not cause other
@@ -73,8 +73,10 @@ colored blue). For example, if you have the connected Go
to Next Instruction will navigate the normal view if it has
focus or the snapshot view if it has focus. If neither has focus,
-the action will be disabled.
-Note this is different from previous versions of Ghidra.
+the action will be disabled.
+
+Note, this is different from previous versions of Ghidra.
Previously, the Go to Next Instruction
action would always navigate the (one and only)
Listing View, even if, for
@@ -90,9 +92,12 @@ appear in multiple windows. For example, the undo/redo actions will appear in any
window containing a Listing View,
a Decompiler View, or a Bytes View.
-
+ style="font-style: italic;">Bytes View.