From 2347c9ebbe1cf180cfa714ea0118b79df1ced2cd Mon Sep 17 00:00:00 2001 From: parnic Date: Tue, 26 Apr 2022 14:09:46 -0500 Subject: [PATCH] Allow commit status popup on /pulls page (#19507) * Allow commit status popup on /pulls page The /pulls page doesn't contain a "repository" element, so the early-out here was preventing the commit status popup hook from working. However, the only thing the .repository element is being used for here is determining whether the popup should be on the right or on the left, so we don't actually need the element to exist for the hook to work. Pull request #19375 allows the statuses on /pulls pages to appear clickable, but this commit is required to make the popup actually work there. * Move commit statuses popup hook to dedicated func * Add missing import --- web_src/js/features/repo-commit.js | 13 +++++++++++++ web_src/js/features/repo-legacy.js | 12 ------------ web_src/js/index.js | 8 +++++++- 3 files changed, 20 insertions(+), 13 deletions(-) diff --git a/web_src/js/features/repo-commit.js b/web_src/js/features/repo-commit.js index 9a8f1a159..a911c1739 100644 --- a/web_src/js/features/repo-commit.js +++ b/web_src/js/features/repo-commit.js @@ -49,3 +49,16 @@ export function initRepoCommitLastCommitLoader() { }); }); } + +export function initCommitStatuses() { + $('.commit-statuses-trigger').each(function () { + const positionRight = $('.repository.file.list').length > 0 || $('.repository.diff').length > 0; + const popupPosition = positionRight ? 'right center' : 'left center'; + $(this) + .popup({ + on: 'click', + lastResort: popupPosition, // prevent error message "Popup does not fit within the boundaries of the viewport" + position: popupPosition, + }); + }); +} diff --git a/web_src/js/features/repo-legacy.js b/web_src/js/features/repo-legacy.js index 185a0014f..b7e6206e5 100644 --- a/web_src/js/features/repo-legacy.js +++ b/web_src/js/features/repo-legacy.js @@ -423,18 +423,6 @@ export function initRepository() { } - // Commit statuses - $('.commit-statuses-trigger').each(function () { - const positionRight = $('.repository.file.list').length > 0 || $('.repository.diff').length > 0; - const popupPosition = positionRight ? 'right center' : 'left center'; - $(this) - .popup({ - on: 'click', - lastResort: popupPosition, // prevent error message "Popup does not fit within the boundaries of the viewport" - position: popupPosition, - }); - }); - // File list and commits if ($('.repository.file.list').length > 0 || $('.branch-dropdown').length > 0 || $('.repository.commits').length > 0 || $('.repository.release').length > 0) { diff --git a/web_src/js/index.js b/web_src/js/index.js index 18b949e4e..f5d72aff9 100644 --- a/web_src/js/index.js +++ b/web_src/js/index.js @@ -38,7 +38,11 @@ import { initRepoPullRequestMergeInstruction, initRepoPullRequestReview, } from './features/repo-issue.js'; -import {initRepoEllipsisButton, initRepoCommitLastCommitLoader} from './features/repo-commit.js'; +import { + initRepoEllipsisButton, + initRepoCommitLastCommitLoader, + initCommitStatuses, +} from './features/repo-commit.js'; import { checkAppUrl, initFootLanguageMenu, @@ -165,6 +169,8 @@ $(document).ready(() => { initRepoWikiForm(); initRepository(); + initCommitStatuses(); + initUserAuthLinkAccountView(); initUserAuthOauth2(); initUserAuthWebAuthn();