Fossil SCM

Reduce clutter by omitting the "Files" checkbox on the /timeline page that checkbox would normally be disable because the y= query parameter is something other than "all" or "ci".

drh 2026-10-19 10:05 UTC trunk
Commit 9ba7a0d8f8b494f23097f413ac4e5ba43153c5cd8c33de360a983b99c0e2ccdf
1 file changed +10 -4
+10 -4
--- src/timeline.c
+++ src/timeline.c
@@ -2374,11 +2374,13 @@
23742374
);
23752375
}
23762376
tmFlags |= TIMELINE_XMERGE | TIMELINE_FILLGAPS;
23772377
db_multi_exec("%s", blob_sql_text(&sql));
23782378
if( advancedMenu ){
2379
- style_submenu_checkbox("v", "Files", (zType[0]!='a' && zType[0]!='c'),0);
2379
+ if( zType[0]=='a' || zType[0]=='c' ){
2380
+ style_submenu_checkbox("v", "Files", 0, 0);
2381
+ }
23802382
}
23812383
nNodeOnPath = db_int(0, "SELECT count(*) FROM temp.pathnode");
23822384
if( nNodeOnPath==1 && from_to_mode>0 ){
23832385
blob_appendf(&desc,"Check-in ");
23842386
}else if( bMin ){
@@ -2591,11 +2593,13 @@
25912593
if( zChng ){
25922594
if( strstr(blob_str(&desc)," that ") ) blob_appendf(&desc, " and");
25932595
blob_appendf(&desc, " that make changes to files matching \"%h\"", zChng);
25942596
}
25952597
if( advancedMenu ){
2596
- style_submenu_checkbox("v", "Files", (zType[0]!='a' && zType[0]!='c'),0);
2598
+ if( zType[0]=='a' || zType[0]=='c' ){
2599
+ style_submenu_checkbox("v", "Files", 0, 0);
2600
+ }
25972601
}
25982602
style_submenu_entry("n","Max:",4,0);
25992603
timeline_y_submenu(1);
26002604
}else if( f_rid && g.perm.Read ){
26012605
/* If f= is present, ignore all other parameters other than n= */
@@ -2623,11 +2627,13 @@
26232627
zUuid = db_text("", "SELECT uuid FROM blob WHERE rid=%d", f_rid);
26242628
blob_appendf(&desc, "%z[%S]</a>", href("%R/info/%!S", zUuid), zUuid);
26252629
tmFlags |= TIMELINE_XMERGE;
26262630
if( advancedMenu ){
26272631
style_submenu_checkbox("unhide", "Unhide", 0, 0);
2628
- style_submenu_checkbox("v", "Files", (zType[0]!='a' && zType[0]!='c'),0);
2632
+ if( zType[0]=='a' || zType[0]=='c' ){
2633
+ style_submenu_checkbox("v", "Files", 0, 0);
2634
+ }
26292635
}
26302636
}else{
26312637
/* Otherwise, a timeline based on a span of time */
26322638
int n;
26332639
const char *zEType = "event";
@@ -3256,12 +3262,12 @@
32563262
free(zDate);
32573263
}
32583264
if( advancedMenu ){
32593265
if( zType[0]=='a' || zType[0]=='c' ){
32603266
style_submenu_checkbox("unhide", "Unhide", 0, 0);
3267
+ style_submenu_checkbox("v", "Files", 0, 0);
32613268
}
3262
- style_submenu_checkbox("v", "Files",(zType[0]!='a' && zType[0]!='c'),0);
32633269
}
32643270
style_submenu_entry("n","Max:",4,0);
32653271
timeline_y_submenu(disableY);
32663272
if( zType[0]=='f' || zType[0]=='h' ){
32673273
style_submenu_checkbox("vfx", "Content", 0, 0);
32683274
--- src/timeline.c
+++ src/timeline.c
@@ -2374,11 +2374,13 @@
2374 );
2375 }
2376 tmFlags |= TIMELINE_XMERGE | TIMELINE_FILLGAPS;
2377 db_multi_exec("%s", blob_sql_text(&sql));
2378 if( advancedMenu ){
2379 style_submenu_checkbox("v", "Files", (zType[0]!='a' && zType[0]!='c'),0);
 
 
2380 }
2381 nNodeOnPath = db_int(0, "SELECT count(*) FROM temp.pathnode");
2382 if( nNodeOnPath==1 && from_to_mode>0 ){
2383 blob_appendf(&desc,"Check-in ");
2384 }else if( bMin ){
@@ -2591,11 +2593,13 @@
2591 if( zChng ){
2592 if( strstr(blob_str(&desc)," that ") ) blob_appendf(&desc, " and");
2593 blob_appendf(&desc, " that make changes to files matching \"%h\"", zChng);
2594 }
2595 if( advancedMenu ){
2596 style_submenu_checkbox("v", "Files", (zType[0]!='a' && zType[0]!='c'),0);
 
 
2597 }
2598 style_submenu_entry("n","Max:",4,0);
2599 timeline_y_submenu(1);
2600 }else if( f_rid && g.perm.Read ){
2601 /* If f= is present, ignore all other parameters other than n= */
@@ -2623,11 +2627,13 @@
2623 zUuid = db_text("", "SELECT uuid FROM blob WHERE rid=%d", f_rid);
2624 blob_appendf(&desc, "%z[%S]</a>", href("%R/info/%!S", zUuid), zUuid);
2625 tmFlags |= TIMELINE_XMERGE;
2626 if( advancedMenu ){
2627 style_submenu_checkbox("unhide", "Unhide", 0, 0);
2628 style_submenu_checkbox("v", "Files", (zType[0]!='a' && zType[0]!='c'),0);
 
 
2629 }
2630 }else{
2631 /* Otherwise, a timeline based on a span of time */
2632 int n;
2633 const char *zEType = "event";
@@ -3256,12 +3262,12 @@
3256 free(zDate);
3257 }
3258 if( advancedMenu ){
3259 if( zType[0]=='a' || zType[0]=='c' ){
3260 style_submenu_checkbox("unhide", "Unhide", 0, 0);
 
3261 }
3262 style_submenu_checkbox("v", "Files",(zType[0]!='a' && zType[0]!='c'),0);
3263 }
3264 style_submenu_entry("n","Max:",4,0);
3265 timeline_y_submenu(disableY);
3266 if( zType[0]=='f' || zType[0]=='h' ){
3267 style_submenu_checkbox("vfx", "Content", 0, 0);
3268
--- src/timeline.c
+++ src/timeline.c
@@ -2374,11 +2374,13 @@
2374 );
2375 }
2376 tmFlags |= TIMELINE_XMERGE | TIMELINE_FILLGAPS;
2377 db_multi_exec("%s", blob_sql_text(&sql));
2378 if( advancedMenu ){
2379 if( zType[0]=='a' || zType[0]=='c' ){
2380 style_submenu_checkbox("v", "Files", 0, 0);
2381 }
2382 }
2383 nNodeOnPath = db_int(0, "SELECT count(*) FROM temp.pathnode");
2384 if( nNodeOnPath==1 && from_to_mode>0 ){
2385 blob_appendf(&desc,"Check-in ");
2386 }else if( bMin ){
@@ -2591,11 +2593,13 @@
2593 if( zChng ){
2594 if( strstr(blob_str(&desc)," that ") ) blob_appendf(&desc, " and");
2595 blob_appendf(&desc, " that make changes to files matching \"%h\"", zChng);
2596 }
2597 if( advancedMenu ){
2598 if( zType[0]=='a' || zType[0]=='c' ){
2599 style_submenu_checkbox("v", "Files", 0, 0);
2600 }
2601 }
2602 style_submenu_entry("n","Max:",4,0);
2603 timeline_y_submenu(1);
2604 }else if( f_rid && g.perm.Read ){
2605 /* If f= is present, ignore all other parameters other than n= */
@@ -2623,11 +2627,13 @@
2627 zUuid = db_text("", "SELECT uuid FROM blob WHERE rid=%d", f_rid);
2628 blob_appendf(&desc, "%z[%S]</a>", href("%R/info/%!S", zUuid), zUuid);
2629 tmFlags |= TIMELINE_XMERGE;
2630 if( advancedMenu ){
2631 style_submenu_checkbox("unhide", "Unhide", 0, 0);
2632 if( zType[0]=='a' || zType[0]=='c' ){
2633 style_submenu_checkbox("v", "Files", 0, 0);
2634 }
2635 }
2636 }else{
2637 /* Otherwise, a timeline based on a span of time */
2638 int n;
2639 const char *zEType = "event";
@@ -3256,12 +3262,12 @@
3262 free(zDate);
3263 }
3264 if( advancedMenu ){
3265 if( zType[0]=='a' || zType[0]=='c' ){
3266 style_submenu_checkbox("unhide", "Unhide", 0, 0);
3267 style_submenu_checkbox("v", "Files", 0, 0);
3268 }
 
3269 }
3270 style_submenu_entry("n","Max:",4,0);
3271 timeline_y_submenu(disableY);
3272 if( zType[0]=='f' || zType[0]=='h' ){
3273 style_submenu_checkbox("vfx", "Content", 0, 0);
3274

Keyboard Shortcuts

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