Fossil SCM

More accurate scroll width calculation for unified diffs (looks better for SQLite diffs with up to 5-digit line numbers).

florian 2023-01-19 11:35 trunk
Commit 337b297cbe0179d188d3368ec48292d1ab9945c08fa6207496afb4e974f7e00c
1 file changed +6 -1
--- src/fossil.diff.js
+++ src/fossil.diff.js
@@ -669,12 +669,17 @@
669669
e.style.maxWidth = w + "px";
670670
});
671671
if(force || !f.colsU){
672672
f.colsU = document.querySelectorAll('td.difftxtu pre');
673673
}
674
- w = lastWidth - 100;
675674
f.colsU.forEach(function(e){
675
+ w = lastWidth;
676
+ var k = e.parentElement/*TD*/;
677
+ for(var i=0;i<3;i++){
678
+ k = k.previousElementSibling/*TD*/;
679
+ w -= k.scrollWidth;
680
+ }
676681
e.style.width = w + "px";
677682
e.style.maxWidth = w + "px";
678683
});
679684
if(0){ // seems to be unnecessary
680685
if(!f.allDiffs){
681686
--- src/fossil.diff.js
+++ src/fossil.diff.js
@@ -669,12 +669,17 @@
669 e.style.maxWidth = w + "px";
670 });
671 if(force || !f.colsU){
672 f.colsU = document.querySelectorAll('td.difftxtu pre');
673 }
674 w = lastWidth - 100;
675 f.colsU.forEach(function(e){
 
 
 
 
 
 
676 e.style.width = w + "px";
677 e.style.maxWidth = w + "px";
678 });
679 if(0){ // seems to be unnecessary
680 if(!f.allDiffs){
681
--- src/fossil.diff.js
+++ src/fossil.diff.js
@@ -669,12 +669,17 @@
669 e.style.maxWidth = w + "px";
670 });
671 if(force || !f.colsU){
672 f.colsU = document.querySelectorAll('td.difftxtu pre');
673 }
 
674 f.colsU.forEach(function(e){
675 w = lastWidth;
676 var k = e.parentElement/*TD*/;
677 for(var i=0;i<3;i++){
678 k = k.previousElementSibling/*TD*/;
679 w -= k.scrollWidth;
680 }
681 e.style.width = w + "px";
682 e.style.maxWidth = w + "px";
683 });
684 if(0){ // seems to be unnecessary
685 if(!f.allDiffs){
686

Keyboard Shortcuts

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