Skip to content

Commit 4d66ee1

Browse files
jpraet6543
andauthored
Fix Quote Reply button on review diff (#13830)
* Fix Quote Reply #13762 * requestAnimationFrame() instead of setTimeout() Co-authored-by: 6543 <[email protected]>
1 parent 6bdcacd commit 4d66ee1

File tree

1 file changed

+15
-15
lines changed

1 file changed

+15
-15
lines changed

web_src/js/index.js

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -901,25 +901,23 @@ async function initRepository() {
901901
const target = $(this).data('target');
902902
const quote = $(`#comment-${target}`).text().replace(/\n/g, '\n> ');
903903
const content = `> ${quote}\n\n`;
904-
905-
let $content;
904+
let $simplemde = autoSimpleMDE;
906905
if ($(this).hasClass('quote-reply-diff')) {
907906
const $parent = $(this).closest('.comment-code-cloud');
908907
$parent.find('button.comment-form-reply').trigger('click');
909-
$content = $parent.find('[name="content"]');
910-
if ($content.val() !== '') {
911-
$content.val(`${$content.val()}\n\n${content}`);
912-
} else {
913-
$content.val(`${content}`);
914-
}
915-
$content.focus();
916-
} else if (autoSimpleMDE !== null) {
917-
if (autoSimpleMDE.value() !== '') {
918-
autoSimpleMDE.value(`${autoSimpleMDE.value()}\n\n${content}`);
908+
$simplemde = $parent.find('[name="content"]').data('simplemde');
909+
}
910+
if ($simplemde !== null) {
911+
if ($simplemde.value() !== '') {
912+
$simplemde.value(`${$simplemde.value()}\n\n${content}`);
919913
} else {
920-
autoSimpleMDE.value(`${content}`);
914+
$simplemde.value(`${content}`);
921915
}
922916
}
917+
requestAnimationFrame(() => {
918+
$simplemde.codemirror.focus();
919+
$simplemde.codemirror.setCursor($simplemde.codemirror.lineCount(), 0);
920+
});
923921
event.preventDefault();
924922
});
925923

@@ -1082,8 +1080,10 @@ async function initRepository() {
10821080
$textarea.val($rawContent.text());
10831081
$simplemde.value($rawContent.text());
10841082
}
1085-
$textarea.focus();
1086-
$simplemde.codemirror.focus();
1083+
requestAnimationFrame(() => {
1084+
$textarea.focus();
1085+
$simplemde.codemirror.focus();
1086+
});
10871087
event.preventDefault();
10881088
});
10891089

0 commit comments

Comments
 (0)