aboutsummaryrefslogtreecommitdiffstats
path: root/idatui
diff options
context:
space:
mode:
authorblasty <blasty@local>2026-07-09 12:14:18 +0200
committerblasty <blasty@local>2026-07-09 12:14:18 +0200
commitd6422f9eacf914172653c361a141e16497a81d27 (patch)
treefa6c63cba45e1881bfb37fc18f5db75b0fe78485 /idatui
parentPhase 1 TUI: two-pane functions<->disasm, virtualized listing, nav backbone (diff)
downloadida-tui-d6422f9eacf914172653c361a141e16497a81d27.tar.gz
ida-tui-d6422f9eacf914172653c361a141e16497a81d27.tar.xz
ida-tui-d6422f9eacf914172653c361a141e16497a81d27.zip
add Ctrl+B toggle to show/hide the functions pane
- action_toggle_functions: collapse/restore left pane, disasm takes full width; focus follows (disasm when hidden, table when shown) - pilot test covers the toggle (11/11)
Diffstat (limited to 'idatui')
-rw-r--r--idatui/app.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/idatui/app.py b/idatui/app.py
index 81e3fac..a91b3f0 100644
--- a/idatui/app.py
+++ b/idatui/app.py
@@ -242,6 +242,7 @@ class IdaTui(App):
Binding("q", "quit", "Quit"),
Binding("slash", "filter", "Filter"),
Binding("g", "goto", "Goto"),
+ Binding("ctrl+b", "toggle_functions", "Names"),
Binding("tab", "toggle_focus", "Switch pane"),
Binding("escape", "back", "Back"),
]
@@ -341,6 +342,15 @@ class IdaTui(App):
table.add_row(f"{f.addr:08X}", f.name, f"{f.size:#x}", key=str(f.addr))
# -- actions ----------------------------------------------------------- #
+ def action_toggle_functions(self) -> None:
+ """Show/hide the functions pane; give the disasm view all the width."""
+ left = self.query_one("#left", FunctionsPanel)
+ left.display = not left.display
+ if not left.display:
+ self.query_one(DisasmView).focus()
+ else:
+ self.query_one("#func-table", DataTable).focus()
+
def action_toggle_focus(self) -> None:
table = self.query_one("#func-table", DataTable)
if self.focused is table: