[merge] Don't draw these weird horizontal lines at the gutter.
javadoc
@Nullable
[merge tool] Make possible to hide/show line numbers, soft wraps and use other editor settings.

* Introduce an action in the merge tool toolbar to change settings of all 3 editors.
* Save the settings in MergeToolSettings, workspace-level.
* Since all 4 settings are similar, hold them in a separate enum MergeToolEditorSetting with the #apply() method which would apply the setting to the passed editor.
* Get rid of EditorPlace.ViewProperty and all related methods and classes. Instead use more simple way to initialize settings (MergePanel2#initEditorSettings) and to change them (#setHighlighterSettings and other - for DiffPreviewPanel
* Remove EditorPlace.ComponentState - no need in the additional level of abstraction since the DiffEditorState is the only usage.
* Make some small cleanups and refactorings.
[merge tool] Don't show the default gutter popup.

REASON:
* The settings are available from the new gear-button on the toolbar.
* The settings can't be possibly available without the gutter (which is probably in the future + if line numbers are hidden).
* Default popup contains "show annotate" (not applicable for merge tool), but doesn't contain "use soft wrap" (totally applicable and useful).
* Default popup affects only the editor of the selected gutter, but it means no sense to disable, for example, line numbers in one merge editor, but enable it in the other. Changing the behavior of the popup, on the other hand, can confuse the user.

DETAILS:
* Introduce EditorGutterComponentEx#setShowDefaultGutterPopup and call it when initializing editors.
[merge tool] fix setting the EditorColorsScheme on editor creation
[merge tool] return the line markers area (with apply and ignore buttons), which was occasionally removed when rewriting merge tool settings.
UIUtil: add drawLine taking colors as params
TrafficLightRenderer: don't refresh error stipes if they are not displayed, add a method to know this to EditorMarkupModel.
EditorEx: getVerticalScrollbarOrientation

Already implemented in EditorImpl, pass up to the interface.
Will be used in the merge tool.
[diff/merge] IDEA-86287 Fix diff dividers position in the merge tool.

Use different offsets for merge and diff (because of different layouts of the tools), specify the offset in the DividerPolygon constructor.
[merge tool] Make diff markers flow above gutters and scrollbars, thus connecting editor highlightings and diff dividers.

EditorPlace is a container for editor, that is put into the merge tool dialog.
* Override its paint() method, and paint above gutters and scrollbars. Right and Left columns need to paint only above the gutter, while central needs to paint above the gutter for the left-side change, and above the scrollbar - for the right-side change.
* To calculate the coordinates of the painted rectangles, use the existing method: DividerPolygon.createVisiblePolygons. It is calculated when painting DiffDividers anyway, so this extra calculation can be avoided, but for the code simplicity and because there are no performance problems with it, it's decided to leave as is for now.
* Since the markers are painted above gutters, line numbers and scrollbars, they need to be semi-transparent. Make DividerPolygons' colors have the same transparency (this will affect the diff tool as well, but it looks fine).
* It is not possible to have a semi-transparent background highlightings in the editor, but it looks not very good to have different colors for text background and the markers on dividers and gutters. To fix this emulate transparency by taking the color in between of the diff type color and editor's background, considering the transparency coefficient. This is done in the TextDiffType. This should be tested in other color schemes.
* Introduce the MergePanelColumn simply enumerating 3 columns of the merge tool. The goal is to use it everywhere in the merge tool code, instead of referencing columns by digital indexes and manipulating FragmentSides. Use it in the EditorPlace.
[merge tool] "All changes resolved" message: show based on the component, not on the project.

May fix some focus issues.
fixed PY-6928 Paste inserts code one line after caret and messes up code in case for as the last compound statement in function
PY-6907 Paste leads to syntactically incorrect code in case of dedent in copied text
fixed PY-6907 Paste leads to syntactically incorrect code in case of dedent in copied text
Merge remote-tracking branch 'origin/master'
[merge tool] better dividers for applied changes

Let DividerPolygon know whether it is applied or not.
Draw applied polygon as a rectangle instead of a filled square (actually via 2 lines).
Make applied polygon non-transparent, to enhance its visibility.
Draw applied changed markers above EditorPlaces as bold dotted lines instead of a filled square.
EA-37161
IDEA-88587 'Annotate' action from popup menu in File History table is always disabled for Git

Fix default value for HistorySession#hasLocalSource: the source is local for most cases (except some cases in SVN).
IDEA-88551 keyboard shortcut for rollback doesn't work in commit dialog box