Project View refresh

I'm developing plugin for SVN that uses ProjectViewNodeDecorator do show current branch for modules and switched files in Project Vie.
It works great however I encountered problem with Project View refresh. T

To speed up rendering, branch data is cached and after VCS update operation I need to invalidate caches and force Project View refresh.

ProjectView.refresh() seems to work for module nodes, however after switch to another branch of some package deep in the tree refresh seems to touch only module nodes (confirmed by logs from custom ProjectViewNodeDecorator).
This behaviour is inconsistent as sometimes refresh works as expected. What always helps is collapsing and expasion of switched package.

Does anyone have suggestions how Project View should be refreshed ?

I'm testing on 129.1237 (12.1.5 EAP) but it's the same with 12.1.4.

On a side note build-in coloring of switched files also behaves erratically - sometimes colors are stale, sometimes not applied at all.

Comment actions Permalink

Use AbstractTreeBuilder.queueUpdateFrom or update methods. @see AbstractProjectViewPane.getTreeBuilder()

Comment actions Permalink

Turns out it is a problem with switched status reporting - I was getting stale data. When I stopped relying on this info everything worked like a charm.


Please sign in to leave a comment.