@Nullable
    private static DividerPolygon createPolygon(@NotNull Editor editor1, @NotNull Editor editor2,
                                                int startLine1, int endLine1,
                                                int startLine2, int endLine2,
                                                @NotNull Painter painter) {
      int topOffset1 = getEditorTopOffset(editor1);
      int topOffset2 = getEditorTopOffset(editor2);

      boolean isFolded1 = isIntervalFolded(editor1, startLine1, endLine1);
      boolean isFolded2 = isIntervalFolded(editor2, startLine2, endLine2);
      boolean isFolded = isFolded1 && isFolded2;

      // Hide folded changes from non-current changelist in Local Changes.
      if (isFolded && !painter.isAlwaysVisible()) return null;

      MarkerRange range1 = isFolded1 ? getDividerMarkerPaintRange(editor1, startLine1, endLine1)
                                     : DiffDrawUtil.getGutterMarkerPaintRange(editor1, startLine1, endLine1);
      MarkerRange range2 = isFolded2 ? getDividerMarkerPaintRange(editor2, startLine2, endLine2)
                                     : DiffDrawUtil.getGutterMarkerPaintRange(editor2, startLine2, endLine2);

      return new DividerPolygon(range1.y1 + topOffset1, range2.y1 + topOffset2,
                                range1.y2 + topOffset1, range2.y2 + topOffset2,
                                painter.getFillColor(editor2, isFolded),
                                painter.getBorderColor(editor2, isFolded),
                                painter.isDottedBorder());
    }
@Nullable
    private static DividerPolygon createPolygon(@NotNull Editor editor1, @NotNull Editor editor2,
                                                int startLine1, int endLine1,
                                                int startLine2, int endLine2,
                                                @NotNull Painter painter)