commit 98fc1774dae14afdc096404679c7b19cb70d341e Author: Dhruv Srivastava Date: Mon Oct 12 16:51:32 2020 +0200 Replace dispatchEvent with dispatchEventThroughTarget gr-hovercard is attached outside gr-app so events should be fired from the target. Change-Id: I8c8d414de94dfe02da6886d966743e08d5cb438b diff --git a/polygerrit-ui/app/elements/shared/gr-hovercard-account/gr-hovercard-account.ts b/polygerrit-ui/app/elements/shared/gr-hovercard-account/gr-hovercard-account.ts index f9e8800..d487b6c 100644 --- a/polygerrit-ui/app/elements/shared/gr-hovercard-account/gr-hovercard-account.ts +++ b/polygerrit-ui/app/elements/shared/gr-hovercard-account/gr-hovercard-account.ts @@ -145,16 +145,12 @@ export class GrHovercardAccount extends GestureEventListeners( _handleClickAddToAttentionSet() { if (!this.change || !this.account._account_id) return; - this.dispatchEvent( - new CustomEvent('show-alert', { - detail: { - message: 'Saving attention set update ...', - dismissOnNavigation: true, - }, - composed: true, - bubbles: true, - }) - ); + this.dispatchEventThroughTarget('show-alert', { + detail: { + message: 'Saving attention set update ...', + dismissOnNavigation: true, + }, + }); // We are deliberately updating the UI before making the API call. It is a // risk that we are taking to achieve a better UX for 99.9% of the cases. @@ -181,16 +177,12 @@ export class GrHovercardAccount extends GestureEventListeners( _handleClickRemoveFromAttentionSet() { if (!this.change || !this.account._account_id) return; - this.dispatchEvent( - new CustomEvent('show-alert', { - detail: { - message: 'Saving attention set update ...', - dismissOnNavigation: true, - }, - composed: true, - bubbles: true, - }) - ); + this.dispatchEventThroughTarget('show-alert', { + detail: { + message: 'Saving attention set update ...', + dismissOnNavigation: true, + }, + }); // We are deliberately updating the UI before making the API call. It is a // risk that we are taking to achieve a better UX for 99.9% of the cases. diff --git a/polygerrit-ui/app/elements/shared/gr-hovercard-account/gr-hovercard-account_test.js b/polygerrit-ui/app/elements/shared/gr-hovercard-account/gr-hovercard-account_test.js index b3b9564..e972b91 100644 --- a/polygerrit-ui/app/elements/shared/gr-hovercard-account/gr-hovercard-account_test.js +++ b/polygerrit-ui/app/elements/shared/gr-hovercard-account/gr-hovercard-account_test.js @@ -115,7 +115,7 @@ suite('gr-hovercard-account tests', () => { const showAlertListener = sinon.spy(); const hideAlertListener = sinon.spy(); const updatedListener = sinon.spy(); - element.addEventListener('show-alert', showAlertListener); + element._target.addEventListener('show-alert', showAlertListener); element._target.addEventListener('hide-alert', hideAlertListener); element._target.addEventListener('attention-set-updated', updatedListener); @@ -149,7 +149,7 @@ suite('gr-hovercard-account tests', () => { const showAlertListener = sinon.spy(); const hideAlertListener = sinon.spy(); const updatedListener = sinon.spy(); - element.addEventListener('show-alert', showAlertListener); + element._target.addEventListener('show-alert', showAlertListener); element._target.addEventListener('hide-alert', hideAlertListener); element._target.addEventListener('attention-set-updated', updatedListener);