SuccessChanges

Summary

  1. [repo view] Simpler refresh, better decorator setup, simpler listeners (details)
Commit a33fd1060e6925523810b808af8bfaf065fe2dbc by Thomas Wolf
[repo view] Simpler refresh, better decorator setup, simpler listeners
Instead of a scheduling a job that schedules a UI refresh simply
schedule the UI refresh directly. Reduce the default delay a little.
Also, there is no need to use a new input. Refreshing the viewer will
pick up structural changes.
The lightweight decorator was setup in a somewhat non-standard way not
really supported by the CNF. Use a simple non-decorating label provider
in the view, and let the framework do all the decorating.
This has multiple advantages: there's no flickering on refreshes. Icon
decorations can finally be done in the lightweight decorator. This also
brings back the gitflow icon overlay. And there's no longer a need for
caching "last used" labels to avoid flickering in text decorations.
However, out of the box the framework does not support having label text
after the decoration. Add special-case handling for updating a
ViewerCell and add the directories of repositories and working trees
only then. If this were done in getStyledText() of the label provider,
the directories would appear before the decoration.
Note that both the simpler refresh and the lightweight decorator setup
belong together. Doing only one or the other leads to flickering on
refresh.
Use lambdas for listeners.
Bug: 553841 Change-Id: I735da30934c650680d60781ae58f7f354089d7d0
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
The file was modifiedorg.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/clone/GitSelectRepositoryPage.java
The file was modifiedorg.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/tree/command/DeleteRepositoryGroupConfirmDialog.java
The file was modifiedorg.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositoryTreeNodeLabelProvider.java
The file was modifiedorg.eclipse.egit.ui.test/src/org/eclipse/egit/ui/view/repositories/GitRepositoriesViewTestUtils.java
The file was modifiedorg.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/push/PushTagsPage.java
The file was modifiedorg.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/search/CommitSearchPage.java
The file was modifiedorg.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/clone/GitSelectWizardPage.java
The file was modifiedorg.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositoryTreeNodeWorkbenchAdapter.java
The file was modifiedorg.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositoryTreeNodeDecorator.java
The file was modifiedorg.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/AbstractBranchSelectionDialog.java
The file was modifiedorg.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositoriesView.java