diff --git a/ILSpy/Docking/DockWorkspace.cs b/ILSpy/Docking/DockWorkspace.cs index 1c9160f84..9ff77513c 100644 --- a/ILSpy/Docking/DockWorkspace.cs +++ b/ILSpy/Docking/DockWorkspace.cs @@ -1083,16 +1083,6 @@ namespace ILSpy.Docking } } - /// - /// Opens a fresh sibling tab whose is the - /// supplied viewmodel. Used by explicit "Open in new tab" gestures and by static - /// pages (About, License) that must not be overwritten by tree-node selections. - /// - /// - /// Optional assembly-tree node this tab represents. Set BEFORE the tab is activated - /// so can pick it up and pull the tree's - /// selection across — setting it after-the-fact misses the activation event. - /// /// /// Brings the tool pane with the given into view and /// activates it. Delegates to , which @@ -1129,6 +1119,16 @@ namespace ILSpy.Docking AppEnv.AppComposition.TryGetExport()?.RequestFocus(); } + /// + /// Opens a fresh sibling tab whose is the + /// supplied viewmodel. Used by explicit "Open in new tab" gestures and by static + /// pages (About, License) that must not be overwritten by tree-node selections. + /// + /// + /// Optional assembly-tree node this tab represents. Set BEFORE the tab is activated + /// so can pick it up and pull the tree's + /// selection across — setting it after-the-fact misses the activation event. + /// public ContentTabPage OpenNewTab(ContentPageModel content, SharpTreeNode? sourceNode = null) { // Carve-outs are born frozen — they survive tree-node selections instead of @@ -1224,14 +1224,6 @@ namespace ILSpy.Docking return true; } - /// - /// VS-style "freeze tab" gesture. The current factory.MainTab keeps its position, - /// content, and active state but flips to frozen - /// ( = false). No new tab spawns at freeze time: - /// the next tree-node selection that finds the active tab frozen will lazily spawn - /// a fresh preview tab inside . Re-clicking the same - /// node after freeze is a no-op (the dedupe activates the frozen tab). - /// /// /// Pump dispatcher jobs so synchronously-set selection state (SourceNode, IsPreview, /// tab count, Content reference) finishes propagating, without awaiting the @@ -1243,6 +1235,14 @@ namespace ILSpy.Docking Avalonia.Threading.Dispatcher.UIThread.RunJobs(); } + /// + /// VS-style "freeze tab" gesture. The current factory.MainTab keeps its position, + /// content, and active state but flips to frozen + /// ( = false). No new tab spawns at freeze time: + /// the next tree-node selection that finds the active tab frozen will lazily spawn + /// a fresh preview tab inside . Re-clicking the same + /// node after freeze is a no-op (the dedupe activates the frozen tab). + /// public void FreezeCurrentTab() { if (factory.FreezeCurrentMainTab() is null)