@Override
    public void mouseMoved(MouseEvent e) {
      if (getRowCount() == 0) return;
      if (isResizingColumns()) return;
      getExpandableItemsHandler().setEnabled(true);

      int row = rowAtPoint(e.getPoint());
      if (row >= 0 && row < getRowCount()) {
        VcsLogColumn<?> column = getVcsLogColumn(columnAtPoint(e.getPoint()));
        if (column == null) return;

        VcsLogCellController controller = getController(column);
        if (controller != null) {
          VcsLogCellController.MouseMoveResult mouseMoveResult = controller.performMouseMove(row, e);
          handleCursor(mouseMoveResult.getCursor());
          if (!mouseMoveResult.getContinueProcessing()) {
            return;
          }
        }
      }

      if (myLinkListener.getTagAt(e) != null) {
        swapCursor();
        return;
      }
      restoreCursor();
    }
@Override
    public void mouseMoved(MouseEvent e)