Skip to content

Commit ee4e37b

Browse files
authored
Merge pull request #418 from rackerlabs/surf-1516-refactor-div
refactor(hx-div): compatability audit updates
2 parents 4dee379 + 614d250 commit ee4e37b

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

src/helix-ui/elements/HXDivElement.js

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,22 +29,21 @@ export class HXDivElement extends HXElement {
2929
return `<style>${shadowStyles}</style>${shadowMarkup}`;
3030
}
3131

32+
$onDisconnect () {
33+
this._removeScrollListeners();
34+
}
35+
3236
static get $observedAttributes () {
3337
return [ 'scroll' ];
3438
}
3539

36-
// FIXME: ensure 'scroll' event listener added on connect (if scroll attr present)
37-
// FIXME: ensure 'scroll' event listener is removed on disconnect
38-
3940
$onAttributeChange (attr, oldVal, newVal) {
4041
if (attr === 'scroll') {
41-
// FIXME: only run if connected
4242
if (newVal !== null) {
4343
this._resetScroll();
4444
this.addEventListener('scroll', onScroll);
4545
} else {
46-
// FIXME: listener doesn't get removed if element disconnects
47-
this.removeEventListener('scroll', onScroll);
46+
this._removeScrollListeners();
4847
}
4948
}
5049
}
@@ -69,4 +68,9 @@ export class HXDivElement extends HXElement {
6968
this.scrollTop = 0;
7069
this.scrollLeft = 0;
7170
}
71+
72+
/** @private */
73+
_removeScrollListeners () {
74+
this.removeEventListener('scroll', onScroll);
75+
}
7276
}

0 commit comments

Comments
 (0)