Breaking change: ProcessChildren removed
ProcessChildren method removed and replaced with TreeNodeExtensions.ThisAndDescendants and friends. For perf reasons.
Yes, I noticed :)
(actually, for Mulder this was one of the 2 broken APIs, the other is that Daemon.GetInstance(solution) was removed and turned into an extension methods. All the rest were namespace changes)
GetInstance for any type is evil and should be eliminated. Inject it where possible or feel pain by using component container's GetComponent so you'll hurry to eliminate it in future :)
Yes, you're right, of course. I just took it off some highlighting code I found. Here's how I used it in SDK8:
https://github.com/hmemcpy/AgentMulder/blob/master/src/Shared/AgentMulder.ReSharper.Plugin/Highlighting/ContainerGutterMark.cs
Could I inject IDaemon instead? Hmm, it also seems I'm pulling a SolutionManager similarly... oh well...
Nope, this is the case where you need to feel pain... IGutterMark is shell level component, Daemon is solution level component. But you can, at least, inject SolutionsManager.
It works, I don't touch it! :)
Btw, notice that the class name AlteringFeatuThemedIcons is mis-spelled? For some reason, the re from Feature is cut off :)
I once reported this as a bug https://youtrack.jetbrains.com/issue/RSRP-316000, still present in 9.x