summaryrefslogtreecommitdiff
path: root/source/features
diff options
context:
space:
mode:
Diffstat (limited to 'source/features')
-rw-r--r--source/features/batch-mark-files-as-viewed.tsx2
-rw-r--r--source/features/clone-branch.tsx2
-rw-r--r--source/features/close-out-of-view-modals.tsx2
-rw-r--r--source/features/convert-release-to-draft.tsx2
-rw-r--r--source/features/copy-file.tsx2
-rw-r--r--source/features/first-published-tag-for-merged-pr.tsx9
-rw-r--r--source/features/hide-useless-comments.tsx2
-rw-r--r--source/features/prevent-duplicate-pr-submission.tsx2
-rw-r--r--source/features/prevent-pr-commit-link-loss.tsx2
-rw-r--r--source/features/quick-review-buttons.tsx2
-rw-r--r--source/features/warning-for-disallow-edits.tsx4
11 files changed, 16 insertions, 15 deletions
diff --git a/source/features/batch-mark-files-as-viewed.tsx b/source/features/batch-mark-files-as-viewed.tsx
index b5d26fa3..8f518978 100644
--- a/source/features/batch-mark-files-as-viewed.tsx
+++ b/source/features/batch-mark-files-as-viewed.tsx
@@ -8,7 +8,7 @@ import {clickAll} from './toggle-everything-with-alt';
let previousFile: HTMLElement | undefined;
-function remember(event: delegate.Event<Event, HTMLFormElement>): void {
+function remember(event: delegate.Event): void {
previousFile = event.delegateTarget.closest<HTMLElement>('.js-file')!;
}
diff --git a/source/features/clone-branch.tsx b/source/features/clone-branch.tsx
index 92a7f64f..0ae953f4 100644
--- a/source/features/clone-branch.tsx
+++ b/source/features/clone-branch.tsx
@@ -38,7 +38,7 @@ async function createBranch(newBranchName: string, baseSha: string): Promise<tru
return response.ok || response.message;
}
-async function cloneBranch({delegateTarget: cloneButton}: delegate.Event<MouseEvent, HTMLButtonElement>): Promise<void> {
+async function cloneBranch({delegateTarget: cloneButton}: delegate.Event): Promise<void> {
const branchName = cloneButton.closest('[branch]')!.getAttribute('branch')!;
const currentBranch = getBranchBaseSha(branchName);
diff --git a/source/features/close-out-of-view-modals.tsx b/source/features/close-out-of-view-modals.tsx
index 650f542e..88a8044c 100644
--- a/source/features/close-out-of-view-modals.tsx
+++ b/source/features/close-out-of-view-modals.tsx
@@ -25,7 +25,7 @@ const observer = new IntersectionObserver(entries => {
let lastOpen: number;
let delegation: delegate.Subscription;
-function menuActivatedHandler(event: CustomEvent): void {
+function menuActivatedHandler(event: delegate.Event): void {
const details = event.target as HTMLDetailsElement;
// Safety check #3742
diff --git a/source/features/convert-release-to-draft.tsx b/source/features/convert-release-to-draft.tsx
index f05d62cb..3bbabc24 100644
--- a/source/features/convert-release-to-draft.tsx
+++ b/source/features/convert-release-to-draft.tsx
@@ -7,7 +7,7 @@ import features from '.';
import * as api from '../github-helpers/api';
import LoadingIcon from '../github-helpers/icon-loading';
-async function convertToDraft({delegateTarget: draftButton}: delegate.Event<MouseEvent, HTMLButtonElement>): Promise<void> {
+async function convertToDraft({delegateTarget: draftButton}: delegate.Event): Promise<void> {
try {
draftButton.append(<LoadingIcon className="ml-2 v-align-text-bottom" width={16}/>);
diff --git a/source/features/copy-file.tsx b/source/features/copy-file.tsx
index c2f4f924..8ee7fd27 100644
--- a/source/features/copy-file.tsx
+++ b/source/features/copy-file.tsx
@@ -7,7 +7,7 @@ import copyToClipboard from 'copy-text-to-clipboard';
import features from '.';
import {groupButtons} from '../github-helpers/group-buttons';
-function handleClick({delegateTarget: button}: delegate.Event<MouseEvent, HTMLButtonElement>): void {
+function handleClick({delegateTarget: button}: delegate.Event): void {
const file = button.closest('.Box, .js-gist-file-update-container')!;
const content = select.all('.blob-code-inner', file)
.map(({innerText: line}) => line === '\n' ? '' : line) // Must be `.innerText`
diff --git a/source/features/first-published-tag-for-merged-pr.tsx b/source/features/first-published-tag-for-merged-pr.tsx
index d5901789..135bbc1a 100644
--- a/source/features/first-published-tag-for-merged-pr.tsx
+++ b/source/features/first-published-tag-for-merged-pr.tsx
@@ -6,8 +6,8 @@ import * as pageDetect from 'github-url-detection';
import features from '.';
import fetchDom from '../helpers/fetch-dom';
-import observeElement from '../helpers/simplified-element-observer';
import {buildRepoURL, getRepo} from '../github-helpers';
+import onConversationHeaderUpdate from '../github-events/on-conversation-header-update';
const getFirstTag = cache.function(async (commit: string): Promise<string | undefined> => {
const firstTag = await fetchDom<HTMLAnchorElement>(
@@ -50,7 +50,8 @@ void features.add(__filebasename, {
include: [
() => pageDetect.isPRConversation() && pageDetect.isMergedPR()
],
- init() {
- observeElement(select('#partial-discussion-header')!.parentElement!, init);
- }
+ additionalListeners: [
+ onConversationHeaderUpdate
+ ],
+ init
});
diff --git a/source/features/hide-useless-comments.tsx b/source/features/hide-useless-comments.tsx
index 30a8d847..3cfb89b7 100644
--- a/source/features/hide-useless-comments.tsx
+++ b/source/features/hide-useless-comments.tsx
@@ -8,7 +8,7 @@ import * as pageDetect from 'github-url-detection';
import features from '.';
import isUselessComment from '../helpers/is-useless-comment';
-async function unhide(event: delegate.Event<MouseEvent, HTMLButtonElement>): Promise<void> {
+async function unhide(event: delegate.Event): Promise<void> {
for (const comment of select.all('.rgh-hidden-comment')) {
comment.hidden = false;
}
diff --git a/source/features/prevent-duplicate-pr-submission.tsx b/source/features/prevent-duplicate-pr-submission.tsx
index 743d8da8..1d14061f 100644
--- a/source/features/prevent-duplicate-pr-submission.tsx
+++ b/source/features/prevent-duplicate-pr-submission.tsx
@@ -5,7 +5,7 @@ import features from '.';
let previousSubmission = 0;
-function preventSubmit(event: delegate.Event<MouseEvent, HTMLButtonElement>): void {
+function preventSubmit(event: delegate.Event): void {
if (Date.now() - previousSubmission < 1000) {
event.preventDefault();
}
diff --git a/source/features/prevent-pr-commit-link-loss.tsx b/source/features/prevent-pr-commit-link-loss.tsx
index 80ea157e..88191cd8 100644
--- a/source/features/prevent-pr-commit-link-loss.tsx
+++ b/source/features/prevent-pr-commit-link-loss.tsx
@@ -25,7 +25,7 @@ function getUI(field: HTMLTextAreaElement): HTMLElement {
);
}
-const updateUI = debounceFn(({delegateTarget: field}: delegate.Event<InputEvent, HTMLTextAreaElement>): void => {
+const updateUI = debounceFn(({delegateTarget: field}: delegate.Event<Event, HTMLTextAreaElement>): void => {
// The replacement logic is not just in the regex, so it alone can't be used to detect the need for the replacement
if (field.value === field.value.replace(prCommitUrlRegex, preventPrCommitLinkLoss) && field.value === field.value.replace(prCompareUrlRegex, preventPrCompareLinkLoss)) {
getUI(field).remove();
diff --git a/source/features/quick-review-buttons.tsx b/source/features/quick-review-buttons.tsx
index a67dba0e..1985e635 100644
--- a/source/features/quick-review-buttons.tsx
+++ b/source/features/quick-review-buttons.tsx
@@ -73,7 +73,7 @@ function init(): false | void {
select('[type="submit"]:not([name])', form)!.remove(); // The selector excludes the "Cancel" button
// This will prevent submission when clicking "Comment" and "Request changes" without entering a comment and no other review comments are pending
- delegate<HTMLButtonElement>(form, 'button', 'click', ({delegateTarget: {value}}) => {
+ delegate(form, 'button', 'click', ({delegateTarget: {value}}) => {
const pendingComments = looseParseInt(select('.js-reviews-toggle .js-pending-review-comment-count')!);
const submissionRequiresComment = pendingComments === 0 && (value === 'reject' || value === 'comment');
select('#pull_request_review_body', form)!.toggleAttribute('required', submissionRequiresComment);
diff --git a/source/features/warning-for-disallow-edits.tsx b/source/features/warning-for-disallow-edits.tsx
index 8606cf25..39bdf76f 100644
--- a/source/features/warning-for-disallow-edits.tsx
+++ b/source/features/warning-for-disallow-edits.tsx
@@ -23,7 +23,7 @@ function update(checkbox: HTMLInputElement): void {
}
}
-function toggleHandler(event: delegate.Event<UIEvent, HTMLInputElement>): void {
+function toggleHandler(event: delegate.Event<Event, HTMLInputElement>): void {
update(event.delegateTarget);
}
@@ -34,7 +34,7 @@ function init(): void | false {
}
update(checkbox); // The sidebar checkbox may already be un-checked
- delegate(document, '[name="collab_privs"]', 'change', toggleHandler);
+ delegate(document, 'input[name="collab_privs"]', 'change', toggleHandler);
}
void features.add(__filebasename, {