From 149a9df9e8e7e91c813232fb82e644b0d3369b09 Mon Sep 17 00:00:00 2001 From: Benno Date: Fri, 15 Nov 2019 10:52:59 +0800 Subject: Expand/Collapse Files and Blob Excerpt while Reviewing/Comparing code (#8924) * update #8659 fold/unfold code diffs * add fold button style * update #8659 implement expand up/down codes (blob excerpt) * fix golint errors * fix expand direction * remove debug message * update css style for blob exceprt * fix typo in comment * update style sheet with less * update expect diff (add SectionInfo) * update #8942 accept suggested change (fix typo) * close reader and check file type before get tail section * adjust button position and check file type before insert fold button * move index js to web_src * merge index.js with master * generate index.js * update js coding style --- web_src/js/index.js | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'web_src/js') diff --git a/web_src/js/index.js b/web_src/js/index.js index 4e53494eb0..69d2aafcc9 100644 --- a/web_src/js/index.js +++ b/web_src/js/index.js @@ -1852,6 +1852,27 @@ function initCodeView() { } }).trigger('hashchange'); } + $('.ui.fold-code').on('click', (e) => { + const $foldButton = $(e.target); + if ($foldButton.hasClass('fa-chevron-down')) { + $(e.target).parent().next().slideUp('fast', () => { + $foldButton.removeClass('fa-chevron-down').addClass('fa-chevron-right'); + }); + } else { + $(e.target).parent().next().slideDown('fast', () => { + $foldButton.removeClass('fa-chevron-right').addClass('fa-chevron-down'); + }); + } + }); + function insertBlobExcerpt(e) { + const $blob = $(e.target); + const $row = $blob.parent().parent(); + $.get(`${$blob.data('url')}?${$blob.data('query')}&anchor=${$blob.data('anchor')}`, (blob) => { + $row.replaceWith(blob); + $(`[data-anchor="${$blob.data('anchor')}"]`).on('click', (e) => { insertBlobExcerpt(e); }); + }); + } + $('.ui.blob-excerpt').on('click', (e) => { insertBlobExcerpt(e); }); } function initU2FAuth() { -- cgit v1.2.3