Fossil SCM

Put the diff-toggle checkbox on the /fdiff page into its own DIV instead of into the HR preceding the diff. The diff-toggle checkbox could also be omitted for the /fdiff page, but is left in place for consistency.

florian 2024-09-13 16:38 trunk
Commit 7a1177148338341ef00fd5076381fec64ed180400e1657cfad9e71e9b23afbce
1 file changed +4 -1
--- src/fossil.diff.js
+++ src/fossil.diff.js
@@ -6,15 +6,18 @@
66
/**
77
Adds toggle checkboxes to each file entry in the diff views for
88
/info and similar pages.
99
*/
1010
const D = window.fossil.dom;
11
+ const isFdiff = !!document.querySelector('body.fdiff');
1112
const addToggle = function(diffElem){
1213
const sib = diffElem.previousElementSibling,
1314
btn = sib ? D.addClass(D.checkbox(true), 'diff-toggle') : 0;
1415
if(!sib) return;
15
- D.append(sib,btn);
16
+ if(isFdiff) sib.parentElement.insertBefore(
17
+ D.append(D.div(),btn),sib.nextElementSibling);
18
+ else D.append(sib,btn);
1619
btn.addEventListener('click', function(){
1720
diffElem.classList.toggle('hidden');
1821
}, false);
1922
};
2023
document.querySelectorAll('table.diff').forEach(addToggle);
2124
--- src/fossil.diff.js
+++ src/fossil.diff.js
@@ -6,15 +6,18 @@
6 /**
7 Adds toggle checkboxes to each file entry in the diff views for
8 /info and similar pages.
9 */
10 const D = window.fossil.dom;
 
11 const addToggle = function(diffElem){
12 const sib = diffElem.previousElementSibling,
13 btn = sib ? D.addClass(D.checkbox(true), 'diff-toggle') : 0;
14 if(!sib) return;
15 D.append(sib,btn);
 
 
16 btn.addEventListener('click', function(){
17 diffElem.classList.toggle('hidden');
18 }, false);
19 };
20 document.querySelectorAll('table.diff').forEach(addToggle);
21
--- src/fossil.diff.js
+++ src/fossil.diff.js
@@ -6,15 +6,18 @@
6 /**
7 Adds toggle checkboxes to each file entry in the diff views for
8 /info and similar pages.
9 */
10 const D = window.fossil.dom;
11 const isFdiff = !!document.querySelector('body.fdiff');
12 const addToggle = function(diffElem){
13 const sib = diffElem.previousElementSibling,
14 btn = sib ? D.addClass(D.checkbox(true), 'diff-toggle') : 0;
15 if(!sib) return;
16 if(isFdiff) sib.parentElement.insertBefore(
17 D.append(D.div(),btn),sib.nextElementSibling);
18 else D.append(sib,btn);
19 btn.addEventListener('click', function(){
20 diffElem.classList.toggle('hidden');
21 }, false);
22 };
23 document.querySelectorAll('table.diff').forEach(addToggle);
24

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button