Skip to content

Commit 5baed99

Browse files
committed
Add a hover preview for extern symbols that includes type information
A new preview type is added for extern symbols that includes the external library name, if known, the symbol type, and any call type override that is applied at the hovered callsite. Previously, hovering an extern symbol would display a hex preview of the synthetic extern section which was of limited value.
1 parent 6e32098 commit 5baed99

2 files changed

Lines changed: 3 additions & 1 deletion

File tree

ui/uitypes.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
// there are changes to the API that affect linking, including new functions,
77
// new types, modifications to existing functions or types, or new versions
88
// of the Qt libraries.
9-
#define BN_CURRENT_UI_ABI_VERSION 14
9+
#define BN_CURRENT_UI_ABI_VERSION 15
1010

1111
// Minimum ABI version that is supported for loading of plugins. Plugins that
1212
// are linked to an ABI version less than this will not be able to load and

ui/util.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,8 @@ void BINARYNINJAUIAPI showHexPreview(QWidget* parent, ViewFrame* frame, const QP
175175
bool BINARYNINJAUIAPI showDisassemblyPreview(QWidget* parent, ViewFrame* frame, const QPoint& previewPos,BinaryViewRef data, FunctionRef func,
176176
const ViewLocation& location);
177177
void BINARYNINJAUIAPI showTextTooltip(QWidget* parent, const QPoint& previewPos, const QString& text);
178+
void BINARYNINJAUIAPI showTokenTooltip(QWidget* parent, const QPoint& previewPos,
179+
const std::vector<std::vector<BinaryNinja::InstructionTextToken>>& lines);
178180

179181
// Interpret the hovered token and, if applicable, displays a tooltip or preview. If no token-driven preview matches
180182
// and `dataflowFallbackAddress` is set, a dataflow-details tooltip is shown for that address.

0 commit comments

Comments
 (0)