diff --git a/src/components/NoticeComponent.tsx b/src/components/NoticeComponent.tsx index 91eedbeb..cde3db60 100644 --- a/src/components/NoticeComponent.tsx +++ b/src/components/NoticeComponent.tsx @@ -8,7 +8,10 @@ export interface NoticeProps { timed?: boolean, idSuffix?: string, - fadeIn?: boolean + fadeIn?: boolean, + + // Callback for when this is closed + closeListener?: () => void } export interface NoticeState { @@ -100,7 +103,7 @@ class NoticeComponent extends React.Component { {/* Close button */} + onClick={() => this.close()}> @@ -181,8 +184,10 @@ class NoticeComponent extends React.Component { }); } - //close this notice - close() { + /** + * @param silent If true, the close listener will not be called + */ + close(silent?: boolean) { //TODO: Change to a listener in the renderer (not component) let notice = document.getElementById("sponsorSkipNotice" + this.idSuffix); if (notice != null) { @@ -191,6 +196,8 @@ class NoticeComponent extends React.Component { //remove setInterval if (this.countdownInterval !== null) clearInterval(this.countdownInterval); + + if (this.props.closeListener && !silent) this.props.closeListener(); } changeNoticeTitle(title) { diff --git a/src/components/SponsorTimeEditComponent.tsx b/src/components/SponsorTimeEditComponent.tsx index 12851601..a3ad3c3b 100644 --- a/src/components/SponsorTimeEditComponent.tsx +++ b/src/components/SponsorTimeEditComponent.tsx @@ -64,7 +64,7 @@ class SponsorTimeEditComponent extends React.Component this.setTimeToNow.bind(this)(0)).bind(this)}> + onClick={() => this.setTimeToNow(0)}> {chrome.i18n.getMessage("bracketNow")} @@ -122,7 +122,7 @@ class SponsorTimeEditComponent extends React.Component this.setTimeToNow.bind(this)(1)).bind(this)}> + onClick={() => this.setTimeToNow(1)}> {chrome.i18n.getMessage("bracketNow")} diff --git a/src/components/SubmissionNoticeComponent.tsx b/src/components/SubmissionNoticeComponent.tsx index b85efce8..edb04b1c 100644 --- a/src/components/SubmissionNoticeComponent.tsx +++ b/src/components/SubmissionNoticeComponent.tsx @@ -54,7 +54,8 @@ class SubmissionNoticeComponent extends React.Component + ref={this.noticeRef} + closeListener={this.cancel.bind(this)}> {/* Text Boxes */} {this.getMessageBoxes()} @@ -127,7 +128,7 @@ class SubmissionNoticeComponent extends React.Component