#302 Comfortable code navigation
Assigned to: JPEXS
Would be really cool to see some additional functionality for code navigation in decompiler, like CTRL+CLICK - navigate to definition, mouse prev/next - navigate back and forth.
+1 for this feature, it would be very cool
+1 This would definitely be amazing.
Any news on it?
In latest nightly build, there is implemented sort of "Goto declaration" with Ctrl+Click. It works only for multinames (class attributes+methods), not variable names (local registers) or types. It matches same multinames, that means if two classes have declared same multiname, it matches both of them. If more than one declaration matches, dialog with list is displayed. You can also use hotkey Ctrl+B or select the action via editor context menu. Also find usages (Ctrl+U) was added.
Assigned: → JPEXS
One note: It works only for AS3.
Thanks, but loos like it doesn't works properly. Please, check the attached file. I open class Main and navigate to the line 16: init(); Then I try to click on init() method call holding CTRL, but it doesn't jump into the init() method body. Same for loop function reference on the line 33: addEventListener(Event.ENTER_FRAME,loop);
as3negative2__.swf (17 KiB)
I don't see Main class in the SWF you posted. Maybe it's encrypted loader. Maybe you posted wrong file? MainTimeline_focus_loader contains this.init() call where Ctrl+click works for me.
Yes, sorry, it was a wrong file. Attached that file here.
as3negat001.swf (2 KiB)
In this case, init function definition is QName and function call is Multiname. Current algorithm searches only names of same type and parameters. It's not perfect and does not work in many cases, but it's at least something. Maybe in the future we will implement something better (full multiname/type resolving )
I see now. Well, this is better then nothing, but it may confuse people since there is no way to know we can jump using CTRL+Click until we try to jump. Underlining jumpable items on mouse over (while CTRL is pressed) or on CTRL press would help here.
In latest nightly, underline is displayed with hand cursor and only when there is possible jump. There are still many things to implement... local register declarations for example.
In latest nightly you can jump to declaration of local variables (AS3)
Very nice! Just tried to use it and it's all I asked for, thank you!
I'd like to implement goto declaration for AS1/2 too, at least for variables or registers so I won't close this issue yet...
Yay, that would be even more awesome! Looking forward to it.