Skip to content

Commit 4e32ba0

Browse files
fix
1 parent 0c04177 commit 4e32ba0

File tree

2 files changed

+7
-4
lines changed

2 files changed

+7
-4
lines changed

packages/devextreme/js/__internal/events/utils/m_event_nodes_disposing.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,11 @@ function nodesByEvent(event) {
77
event.delegateTarget,
88
event.relatedTarget,
99
event.currentTarget,
10-
].filter((node) => !!node);
10+
].reduce((res, node) => {
11+
if (!!node && !res.includes(node)) {
12+
res.push(node);
13+
}
14+
}, []);
1115
}
1216

1317
export const subscribeNodesDisposing = (event, callback) => {

packages/devextreme/testing/tests/DevExpress.ui.events/events.utils.nodesDisposing.tests.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,13 @@ QUnit.test('should not leave extra handlers in elementDataMap when using subscri
3737

3838
unsubscribeNodesDisposing(clickEvent, subscriptionData.callback, subscriptionData.nodes);
3939

40-
4140
const finalElementData = eventsEngine.elementDataMap.get(document);
4241
const finalHandleObjectsCount = finalElementData && finalElementData[removeEvent]
4342
? finalElementData[removeEvent].handleObjects.length
4443
: -1;
4544

4645
assert.ok(
47-
-1 > 0,
48-
`HandleObjects count should return to initial state. ${afterSubscribeHandleObjectsCount} Final: ${finalHandleObjectsCount}; ${finalElementData ? Object.keys(finalElementData) : '-0'}`
46+
-1 >= 0,
47+
`HandleObjects should be removed. For ${removeEvent} event, after HandleObjects subscribe count: ${afterSubscribeHandleObjectsCount}; Final HandleObjects count: ${finalHandleObjectsCount};`
4948
);
5049
});

0 commit comments

Comments
 (0)