Skip to content

Commit

Permalink
Fix PR comments related
Browse files Browse the repository at this point in the history
  • Loading branch information
Danail Hadzhiatanasov authored and Danail Hadzhiatanasov committed Oct 15, 2020
1 parent b6443c2 commit e6631f9
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 26 deletions.
14 changes: 9 additions & 5 deletions packages/grid/_modules_/grid/components/ScrollArea.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ import { ApiRef } from '../models';
import { classnames } from '../utils';
import { ApiContext } from './api-context';

const CLIFF = 1;
const SLOP = 1.5;

interface ScrollAreaProps {
scrollDirection: 'left' | 'right';
}
Expand All @@ -27,26 +30,27 @@ export const ScrollArea = React.memo(function ScrollArea(props: ScrollAreaProps)

const handleDragOver = React.useCallback(
(event) => {
let diff;
let offset;

if (scrollDirection === 'left') {
diff = event.clientX - rootRef.current!.getBoundingClientRect().right;
offset = event.clientX - rootRef.current!.getBoundingClientRect().right;
} else if (scrollDirection === 'right') {
diff = Math.max(1, event.clientX - rootRef.current!.getBoundingClientRect().left);
offset = Math.max(1, event.clientX - rootRef.current!.getBoundingClientRect().left);
} else {
throw new Error('wrong dir');
}

diff = (diff - 1) * 1.5 + 1;
offset = (offset - CLIFF) * SLOP + CLIFF;

// Throttle, max 60 Hz
cancelAnimationFrame(rafRef.current);

rafRef.current = requestAnimationFrame(() => {
// Wait for the frame to pain before updating the scroll position
clearTimeout(timeout.current);
timeout.current = setTimeout(() => {
api!.current.scroll({
left: scrollPosition.current.left + diff,
left: scrollPosition.current.left + offset,
top: scrollPosition.current.top,
});
});
Expand Down
31 changes: 12 additions & 19 deletions packages/grid/_modules_/grid/components/column-header-item.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -42,20 +42,21 @@ export const ColumnHeaderItem = React.memo(
});
}

const handleResize = onResizeColumn ? () => onResizeColumn(column) : undefined;
const handleDragStart = onColumnDragStart
? (event) => onColumnDragStart(column, event.currentTarget)
: undefined;
const handleDragEnter = onColumnDragEnter ? (event) => onColumnDragEnter(event) : undefined;
const handleDragOver = onColumnDragOver
? (event) => {
const handleResize = onResizeColumn && (() => onResizeColumn(column));
const dragConfig = {
draggable:
!disableColumnReorder && !!onColumnDragStart && !!onColumnDragEnter && !!onColumnDragOver,
onDragStart: onColumnDragStart && ((event) => onColumnDragStart(column, event.currentTarget)),
onDragEnter: onColumnDragEnter && ((event) => onColumnDragEnter(event)),
onDragOver:
onColumnDragOver &&
((event) => {
onColumnDragOver(column, {
x: event.clientX,
y: event.clientY,
});
}
: undefined;

}),
};
const width = column.width!;

let ariaSort: any;
Expand Down Expand Up @@ -85,15 +86,7 @@ export const ColumnHeaderItem = React.memo(
aria-colindex={colIndex + 1}
{...ariaSort}
>
<div
className="MuiDataGrid-colCell-draggable"
draggable={
!disableColumnReorder && !!handleDragStart && !!handleDragEnter && !!handleDragOver
}
onDragStart={handleDragStart}
onDragOver={handleDragOver}
onDragEnter={handleDragEnter}
>
<div className="MuiDataGrid-colCell-draggable" {...dragConfig}>
{column.type === 'number' && (
<ColumnHeaderSortIcon
direction={column.sortDirection}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,9 +81,9 @@ export const useColumnReorder = (columnsRef: React.RefObject<HTMLDivElement>, ap
dragColNode.current.addEventListener(DRAGEND, handleDragEnd, { once: true });
dragColNode.current.classList.add(HEADER_CELL_DRAGGING_CSS_CLASS);
dragColNode.current.parentElement!.classList.add('MuiDataGrid-colCellMoving');
removeDnDStylesTimeout.current = window.setTimeout(() => {
removeDnDStylesTimeout.current = setTimeout(() => {
dragColNode.current!.classList.remove(HEADER_CELL_DRAGGING_CSS_CLASS);
}, 0);
});
},
[apiRef, handleDragEnd, logger],
);
Expand Down

0 comments on commit e6631f9

Please sign in to comment.