Community
Participate
Working Groups
When blame annotations are displayed and I perform a checkout of another branch, the annotations are not refreshed. This causes the old annotation information to be shown for the newly checked-out code, which is incorrect. Wither forcing a refresh of the annotations or hiding them seem fine. Maybe a refresh would be too expensive if annotations are shown in many editors?
Also happens when the file is changed, saved, and then committed: blame annotations are not updated. It appears that the revision ruler framework in JFace (RevisionInformation/RevisionPainter/AbstractDecoratedTextEditor) is built around the assumption that no such automatic occurs. Instead the user is supposed to hide the revision annotations manually, or to refresh them manually by invoking "Show Revision Information" again. This is also the reason why this is not a toggle (compare bug 454476) and also why it is still visible/enabled when revisions are already shown (bug 505939). See also bug 274691 comment 6. I see no readily apparent way to subvert the current framework infrastructure to automatically refresh this revision information when HEAD changes. Would need to be able to add a RefsChangedListener on the repo (looks probably doable) and trigger a refresh when HEAD changes, but then also be able to remove it when either the revision information is hidden or the editor is closed (looks difficult). And a refresh should be triggered only for visible editors; invisible editors with revision info enabled should instead check HEAD when activated and if it changed do the refresh then. If it is doable, it is certainly not trivial.
New Gerrit change created: https://git.eclipse.org/r/c/egit/egit/+/183552
New Gerrit change created: https://git.eclipse.org/r/c/egit/egit/+/184034
Gerrit change https://git.eclipse.org/r/c/egit/egit/+/184034 was merged to [master]. Commit: http://git.eclipse.org/c/egit/egit.git/commit/?id=376a7d4d0456ba4056a7398f387dfd5b474ac8eb