* do not store transactions calculated during apply somehow etc - they are not exact at all;
* remember after start offset in SplitHunk;
* cleanUp GenericPatchApplier;
* collect and construct information about applied and not applied patches to AppliedSplitPatchHunk;
* remove unused changeType
* return first and last changed lines in hunk as applied index (without context lines);
* use StringUtil.join instead of manual appending;
* fix empty sting appending: because when first element is empty string then stringBuilder.length remain 0 and line separator was not added;
New "AnAction" instance (different from global action) is used for action with custom shortcut - so necessary logic (refreshing changes) for "Delete" action from action listener in "MultipleChangeListBrowser" will not be called.
When "EmptyAction.registerWithShortcutSet()" is used new "AnAction" instance is actually created. This new instance is passed then to action listeners (when corresponding custom shortcut is pressed) which could lead to issues if action listener relies on comparing passed action with certain global action. Such cases should be handled separately.
VcsMappingConfigurationDialog used to modify existing mapping objects,
which are contained in the mappings table model.
Now it substitutes the values the table with new values instead.
This allows to remove remove VcsDirectoryMapping() empty
constructor which introduces unnecessary nullability to the
mapping fields, and also make myDirectory final since it is not changes
anywhere else.
* allow to configure colors of vcs annotations
* generate annotations colors from couple of given anchors
* move LST gutter colors settings from `General` group
* add preview for LST markers
Usage of read/write locks for LST increases amount of write locks taken in application (on release(), setBaseRevision()).
This interferes with some tasks, that have to restart after each writeLock.
We do not perform any operations on Document or PSI inside, so this overhead is unnecessary.
This partially reverts commit cb95158bdf.
* local file used as a base may be changed, moreover it may happen during showDIff action in appropriate panel;
* it's not very frequent action and it's better to reapply shelved change on current local document