diff options
author | David Karlaš <david.karlas@xamarin.com> | 2014-12-10 22:07:36 +0300 |
---|---|---|
committer | David Karlaš <david.karlas@xamarin.com> | 2014-12-11 11:26:26 +0300 |
commit | a499bbda14eedd40a28b76f55b52ea088305fb4b (patch) | |
tree | 6177c4bec90d645b0b3ba7af1fb9eaea5e67680b /main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad | |
parent | d9e9d8302b8dbb7ed235c976647cbf78cdee401b (diff) |
Bug 25178 - Xamarin Studio not selects the current opened document (some projects) in the Solution explorer
Diffstat (limited to 'main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad')
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectSolutionPad.cs | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectSolutionPad.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectSolutionPad.cs index cb8a60c75c..f02e12a259 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectSolutionPad.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectSolutionPad.cs @@ -32,6 +32,7 @@ using System.Collections.Generic; using MonoDevelop.Projects; using MonoDevelop.Ide.Gui; using MonoDevelop.Ide.Gui.Components; +using MonoDevelop.Projects.SharedAssetsProjects; namespace MonoDevelop.Ide.Gui.Pads.ProjectPad { @@ -93,17 +94,29 @@ namespace MonoDevelop.Ide.Gui.Pads.ProjectPad if (doc != null && doc.Project != null) { string file = doc.FileName; if (file != null) { - ProjectFile pf = doc.Project.Files.GetFile (file); - if (pf != null) { - ITreeNavigator nav = treeView.GetNodeAtObject (pf, true); - if (nav != null) { - nav.ExpandToNode (); - nav.Selected = true; + if (!SelectFile (doc.Project, file)) { + foreach (var project in IdeApp.Workspace.GetAllProjects ()) { + if (project is SharedAssetsProject && SelectFile (project, file)) + return; } } } } } + + bool SelectFile (Project project, string file) + { + var pf = project.Files.GetFile (file); + if (pf != null) { + var nav = treeView.GetNodeAtObject (pf, true); + if (nav != null) { + nav.ExpandToNode (); + nav.Selected = true; + return true; + } + } + return false; + } } } |