provide API for focusing an address without switching to the Binary Ninja window
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 35/100
Hướng nghiên cứu
Start with the BinaryView.navigate API and the Python call shown in the issue, then trace how it causes the Binary Ninja GUI window to receive focus. Done means an address can be navigated to without switching window focus, while the existing navigation behavior remains available; compare the requested behavior with the linked decomp2dbg and pwndbg use cases.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
What is the feature you'd like to have?
Provide an API for navigating to an address without switching to the Binary Ninja window. Currently when I run
bv.navigate(self.bv.view, addr)
(https://api.binary.ninja/binaryninja.binaryview-module.html#binaryninja.binaryview.BinaryView.navigate)
the correct address is jumped to, but my window manager switches to the window of the binary ninja gui. I don't want this to happen. A potential solution would be to provide an optional argument in navigate that does not focus the gui. IDA and Ghidra both support this.
Is your feature request related to a problem?
See https://github.com/mahaloz/decomp2dbg/issues/136 and https://github.com/pwndbg/pwndbg/pull/3401:
The usecase is that I want the focus_address() endpoint to be queried every time I step, so the decompiler is fully in sync with the debugger, but obviously this doesn't work if the decompiler steals window focus on every step.
decomp2dbg allows users to sync their debugging inside the CLI GDB with various decompiler backends. I am hooking into these plugins in pwndbg through XML RPC calls. I want the decompiler's cursor to be in sinc with the value of PC in the debugger during debugging. This is a nice QoL feature for the user because they can easly switch between the debugger and the decompiler and the decompilation is focused on right where they want it to be.
This works nicely for IDA and Ghidra, but doesn't work for Binary Ninja because it steals the window focus on every debugger step, making debugging with this cursor-syncing feature enabled impossible. It's a shame since binary ninja has the best plugin API among the decompilers, so having this feature would be really cool.
Alternatives
Having binja just not steal focus by default might also make sense, I don't know of a use-case that requires this focus switching.
- Ngôn ngữ chính
- C++
- Star
- 1.3k
- Fork
- 298
- Merge trung bình
- 5 ngày 5 giờ
- Pull request đã merge (30 ngày)
- 19
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của Vector35/binaryninja-api
-
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 88/100
Vector35/binaryninja-api#8540 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
Vector35/binaryninja-api#8516 ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
Vector35/binaryninja-api#8503 ·
-
normalize time logs from WARP Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
Vector35/binaryninja-api#8446 ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
Vector35/binaryninja-api#8444 ·
Tất cả issue của Vector35/binaryninja-api
Issue tương tự
-
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 92/100
autowarefoundation/autoware_universe#13413 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
-
automated-analysis bug memory-safety
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
-
Sensor initialization takes very long when `--initial-sim-time` is set to current UNIX timestamp Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
gazebosim/gz-sensors#662 · 1 bình luận ·