Skip to content

Add shortcut parameter to gui_register_ctx_menu#193

Merged
mahaloz merged 2 commits intomainfrom
feat/gui-ctx-menu-shortcut
Apr 23, 2026
Merged

Add shortcut parameter to gui_register_ctx_menu#193
mahaloz merged 2 commits intomainfrom
feat/gui-ctx-menu-shortcut

Conversation

@mahaloz
Copy link
Copy Markdown
Member

@mahaloz mahaloz commented Apr 23, 2026

Lets plugins specify a Qt-style keyboard shortcut (e.g. "Ctrl+Shift+D") when registering a context menu / plugin action. Each decompiler backend translates the shortcut to its native form:

  • IDA: passed as the 4th arg of idaapi.action_desc_t ("Ctrl-Shift-D")
  • Binja: registered via UIAction.registerAction + UIActionHandler.bindAction
  • Ghidra: ActionBuilder.keyBinding("ctrl shift D")
  • angr: QShortcut on the workspace main window with ApplicationShortcut context, kept in GenericBSAngrManagementPlugin._qshortcuts to avoid garbage collection

mahaloz added 2 commits April 23, 2026 13:28
Lets plugins specify a Qt-style keyboard shortcut (e.g. "Ctrl+Shift+D")
when registering a context menu / plugin action. Each decompiler
backend translates the shortcut to its native form:

- IDA: passed as the 4th arg of `idaapi.action_desc_t` ("Ctrl-Shift-D")
- Binja: registered via `UIAction.registerAction` + `UIActionHandler.bindAction`
- Ghidra: `ActionBuilder.keyBinding("ctrl shift D")`
- angr: `QShortcut` on the workspace main window with `ApplicationShortcut`
  context, kept in `GenericBSAngrManagementPlugin._qshortcuts` to avoid
  garbage collection
@mahaloz mahaloz merged commit a3362f8 into main Apr 23, 2026
5 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant