[Feature request] Ability to freeze/lock decompiler tabs
Is your feature request related to a problem? Please describe.
When I'm going through many types and members in ILSpy I'll often be clicking around and lose track of my place because the original (and often only) decompilation tab I have open has navigated away from where I was, so I need to click the Back button a lot, which means I then lose my "forward place" and my history state will be dropped if I then navigate somewhere else after clicking Back.
Describe the solution you'd like
I'd like a 1-click "lock" toggle button on decompiler tabs so that when the current tab is locked then all subsequent navigation attempts will open in a new tab and then switch to that tab, while keeping the previous tab open and preserving its navigation history (though I would still like navigation history to be copied-over to the new tab as well, perhaps with a differently colored Back button to indicate it's a copied history?)
I would also like the "Decompile to new tab" to open the new tab in the background like how web-browsers do, (i.e. without making the newly added tab the active tab.
Additional context
I have prototyped this in my own local fork already, so I'm happy to complete my implementation and submit as a PR - but as it's a UI change I want to get approval first before putting the time into finishing it off.
I'd also like to implement a few other smaller changes:
- Either a split view for the Assemblies tab, or the ability to have multiple Assemblies tree-view windows open concurrently (which is useful when jumping around different assemblies).
- An always-visible "Address bar" showing the assembly name and namespace + member path (clicking it would copy the whole thing, but including the full filesystem path to the assembly, and you could also paste an address in and it will open it).
- Various small tweaks to the Search window that I won't go into right now.
Sorry for taking so long to get to this! I would be interested in trying out your prototype. Would you be able to provide a PR for this? Thanks! This feature is something we have discussed in the past, but never got around to it. See also #1724.
I'd say this is a welcome addition.
@dgrunwald @christophwille any comments?
Definitely yes as we had that on our list too.
I am currently working on #2554, which aims to fix various UI related issues.