Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to make Solution Explorer return to its previous state after clearing search?

I currently have a VS installation with no extensions to see how that works out. For navigation that means making heavy use of Ctrl+; aka Search Solution Explorer. While the search itself is ok, it has one major drawback for me that makes it a pain to use for me (both with keyboard and mouse):

Solution with two projects, one collapsed, one opened:

enter image description here

Use Ctrl+; and start typing until match found from collapsed project

enter image description here

What I want now is to simply clear the search and return to the previous view. Seems like a pretty standard requirement, no? But there seems to be no such functionality built in. Problem with the current commands that come close (pressing Esc, clicking Back or Home buttons in Solution Explorer Toolbar) is all the same: they have the extremely annoying behaviour that they insist on suddenly uncollapsing the previously collapsed project and track the match found! (Btw the Track Active Item in Solution Explorer option is turned of in the options). This makes no sense from a UX point of view? You select some kind of 'undo' command, the search box clears which is expected, but then suddenly there's an item visible from a previous search:

enter image description here

So if the collapsed project has like 50 items in it, solution explorer is now useless visually since it litters the screen with stuff you don't want to see, and worse you have to manually collapse the project again to return to the previous view.

Is there a way around this? I thought maybe keyboard shortcuts for Back/Home would be different, but the commands do not seem to be registered. I looked into EnvDTE80.DTE2.ToolWindows.SolutionExplorer but it has no properties/methods that have anything to do with this issue. And somewhere in the tree there is a Microsoft.VisualStudio.PlatformUI.SolutionPivotNavigator which is probably the class responsible for this behaviour, but I have no idea how to access it?

like image 461
stijn Avatar asked Jun 02 '14 09:06

stijn


People also ask

How do I get Solution Explorer back?

If you don't see the Solution Explorer tool window, you can open it from the Visual Studio menu bar by using View > Solution Explorer, or by pressing Ctrl+Alt+L.

How do I change the view in Solution Explorer?

Double click the . sln file from the Folder View can allow you to switch to the default solution view.

How do I put Solution Explorer on the left?

Just drag and drop onto the mechanic and dock the solution explorer window to the left side of the window. You must drop the panel onto the fastener, in the position you wish it to be docked (in the case, the rectangle on the left of the fastener, highlighted with a red circle).

How do I move Solution Explorer in Visual Studio code to the right side?

Click on the title bar, and drag it to the right portion of the screen. Eventually you'll see a compas like structure popup. Make sure you hover over the right area and let go of the mouse button. That will bind it to the right side.


1 Answers

Recently updated to VS2013 SP3 and I have the impression there was a change (or I didn't notice this properly earlier, though my question says otherwise): if I use the Back button in the Solution Explorer view it properly takes me back to the previous view without expanding anything that wasn't expanded before. Using Esc or clearing the search box still behave the same which is a pitty, but at least if I remember to use just the back button it's workable.

update Not really an answer but since I started using Edit.NavigateTo (which is basically 'Go to Anything' including symbols/files) bound to a keyboard shortcut I found no reason to use Window.SolutionExplorerSearch anymore.

like image 149
stijn Avatar answered Oct 22 '22 06:10

stijn