Wrap around for previous/next buttons (#16319)

Fixes #16317

Wrap around from last to first comment when clicking "Next" on last comment.
Wrap around from first to last comment when clicking "Previous" on first comment.
This commit is contained in:
Jimmy Praet 2021-07-02 00:02:48 +02:00 committed by GitHub
parent 290f458d46
commit a3476e5ad5
Signed by: GitHub
GPG Key ID: 4AEE18F83AFDEB23

@ -947,21 +947,19 @@ async function initRepository() {
const $conversation = $(e.currentTarget).closest('.comment-code-cloud');
const $conversations = $('.comment-code-cloud:not(.hide)');
const index = $conversations.index($conversation);
if (index !== 0) {
const $previousConversation = $conversations.eq(index - 1);
const anchor = $previousConversation.find('.comment').first().attr('id');
window.location.href = `#${anchor}`;
}
const previousIndex = index > 0 ? index - 1 : $conversations.length - 1;
const $previousConversation = $conversations.eq(previousIndex);
const anchor = $previousConversation.find('.comment').first().attr('id');
window.location.href = `#${anchor}`;
});
$(document).on('click', '.next-conversation', (e) => {
const $conversation = $(e.currentTarget).closest('.comment-code-cloud');
const $conversations = $('.comment-code-cloud:not(.hide)');
const index = $conversations.index($conversation);
if (index !== $conversations.length - 1) {
const $nextConversation = $conversations.eq(index + 1);
const anchor = $nextConversation.find('.comment').first().attr('id');
window.location.href = `#${anchor}`;
}
const nextIndex = index < $conversations.length - 1 ? index + 1 : 0;
const $nextConversation = $conversations.eq(nextIndex);
const anchor = $nextConversation.find('.comment').first().attr('id');
window.location.href = `#${anchor}`;
});
// Quote reply