diff --git a/__tests__/demo/demo-components/index.js b/__tests__/demo/demo-components/index.js
index e7bedb1d..6904e285 100644
--- a/__tests__/demo/demo-components/index.js
+++ b/__tests__/demo/demo-components/index.js
@@ -547,12 +547,18 @@ export function EventTargetErrorOnRowClick(props) {
tableRef={tableRef}
columns={cols}
data={datas}
- onSelectionChange={onRowSelectionChanged}
- onRowClick={onRowClicked}
+ // onSelectionChange={onRowSelectionChanged}
+ // onRowClick={onRowClicked}
components={{
- MTableBodyRow: (props, p2) => {
- console.log({ props, p2 });
- return ;
+ Row: (props) => {
+ return (
+
+ );
}
}}
options={{
diff --git a/src/components/m-table-body-row.js b/src/components/m-table-body-row.js
index 3e4530e7..7d5eafa5 100644
--- a/src/components/m-table-body-row.js
+++ b/src/components/m-table-body-row.js
@@ -56,8 +56,7 @@ export default function MTableBodyRow(props) {
const onRowClickListener = useDoubleClick(
onRowClick ? (e) => onClick(e, onRowClick) : undefined,
- onDoubleRowClick ? (e) => onClick(e, onDoubleRowClick) : undefined,
- persistEvents
+ onDoubleRowClick ? (e) => onClick(e, onDoubleRowClick) : undefined
);
const getRenderColumns = () => {
@@ -445,8 +444,13 @@ export default function MTableBodyRow(props) {
{
+ if (persistEvents) {
+ event.persist();
+ }
+ onRowClickListener(event);
+ }}
+ hover={onRowClick !== null || onDoubleRowClick !== null}
style={getStyle(props.index, props.level)}
>
{renderColumns}
diff --git a/src/utils/hooks/useDoubleClick.js b/src/utils/hooks/useDoubleClick.js
index 28deea74..beacf870 100644
--- a/src/utils/hooks/useDoubleClick.js
+++ b/src/utils/hooks/useDoubleClick.js
@@ -1,6 +1,6 @@
import React from 'react';
-function useDoubleClick(singleCallback, dbCallback, persistEvents) {
+function useDoubleClick(singleCallback, dbCallback) {
const countRef = React.useRef(0);
/** Refs for the timer **/
const timerRef = React.useRef(null);
@@ -12,9 +12,6 @@ function useDoubleClick(singleCallback, dbCallback, persistEvents) {
inputSingleCallbackRef.current = singleCallback;
});
const onClick = React.useCallback((e) => {
- if (persistEvents) {
- e.persist();
- }
const isDoubleClick = countRef.current + 1 === 2;
const timerIsPresent = timerRef.current;
if (timerIsPresent && isDoubleClick) {