Fossil SCM
Make the "basic" query parameter the default for built-in skins when clicking on the Timeline menu. Add "basic" to /finfo. Other improvements to timeline.
Commit
78f18dbd1cf1cb8b11aca59edd3fcea75f144ebe59f538795fcc51e88d550050
Parent
5ec5a403ae74ffd…
18 files changed
+1
-1
+1
-1
+1
-1
+2
-2
+4
+1
-1
+1
-1
+1
-1
+1
-1
+1
-1
+1
-1
+1
-1
+1
-1
+1
-1
+7
-1
+3
-3
+4
+11
-10
~
skins/black_and_white/header.txt
~
skins/blitz/header.txt
~
skins/blitz_no_logo/header.txt
~
skins/bootstrap/header.txt
~
skins/default/css.txt
~
skins/default/header.txt
~
skins/eagle/header.txt
~
skins/enhanced1/header.txt
~
skins/khaki/header.txt
~
skins/original/header.txt
~
skins/plain_gray/header.txt
~
skins/rounded1/details.txt
~
skins/rounded1/header.txt
~
skins/xekri/header.txt
~
src/finfo.c
~
src/main.c
~
src/style.c
~
src/timeline.c
+1
-1
| --- skins/black_and_white/header.txt | ||
| +++ skins/black_and_white/header.txt | ||
| @@ -14,11 +14,11 @@ | ||
| 14 | 14 | </div> |
| 15 | 15 | <div class="mainmenu"> |
| 16 | 16 | <th1> |
| 17 | 17 | html "<a href='$home$index_page'>Home</a>\n" |
| 18 | 18 | if {[anycap jor]} { |
| 19 | - html "<a href='$home/timeline'>Timeline</a>\n" | |
| 19 | + html "<a href='$home/timeline?basic'>Timeline</a>\n" | |
| 20 | 20 | } |
| 21 | 21 | if {[anoncap oh]} { |
| 22 | 22 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 23 | 23 | } |
| 24 | 24 | if {[anoncap o]} { |
| 25 | 25 |
| --- skins/black_and_white/header.txt | |
| +++ skins/black_and_white/header.txt | |
| @@ -14,11 +14,11 @@ | |
| 14 | </div> |
| 15 | <div class="mainmenu"> |
| 16 | <th1> |
| 17 | html "<a href='$home$index_page'>Home</a>\n" |
| 18 | if {[anycap jor]} { |
| 19 | html "<a href='$home/timeline'>Timeline</a>\n" |
| 20 | } |
| 21 | if {[anoncap oh]} { |
| 22 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 23 | } |
| 24 | if {[anoncap o]} { |
| 25 |
| --- skins/black_and_white/header.txt | |
| +++ skins/black_and_white/header.txt | |
| @@ -14,11 +14,11 @@ | |
| 14 | </div> |
| 15 | <div class="mainmenu"> |
| 16 | <th1> |
| 17 | html "<a href='$home$index_page'>Home</a>\n" |
| 18 | if {[anycap jor]} { |
| 19 | html "<a href='$home/timeline?basic'>Timeline</a>\n" |
| 20 | } |
| 21 | if {[anoncap oh]} { |
| 22 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 23 | } |
| 24 | if {[anoncap o]} { |
| 25 |
+1
-1
| --- skins/blitz/header.txt | ||
| +++ skins/blitz/header.txt | ||
| @@ -37,11 +37,11 @@ | ||
| 37 | 37 | } |
| 38 | 38 | html "<a href='$home$url'>$name</a></li>\n" |
| 39 | 39 | } |
| 40 | 40 | menulink $index_page Home |
| 41 | 41 | if {[anycap jor]} { |
| 42 | - menulink /timeline Timeline | |
| 42 | + menulink /timeline?basic Timeline | |
| 43 | 43 | } |
| 44 | 44 | if {[hascap oh]} { |
| 45 | 45 | menulink /dir?ci=tip Files |
| 46 | 46 | } |
| 47 | 47 | if {[hascap o]} { |
| 48 | 48 |
| --- skins/blitz/header.txt | |
| +++ skins/blitz/header.txt | |
| @@ -37,11 +37,11 @@ | |
| 37 | } |
| 38 | html "<a href='$home$url'>$name</a></li>\n" |
| 39 | } |
| 40 | menulink $index_page Home |
| 41 | if {[anycap jor]} { |
| 42 | menulink /timeline Timeline |
| 43 | } |
| 44 | if {[hascap oh]} { |
| 45 | menulink /dir?ci=tip Files |
| 46 | } |
| 47 | if {[hascap o]} { |
| 48 |
| --- skins/blitz/header.txt | |
| +++ skins/blitz/header.txt | |
| @@ -37,11 +37,11 @@ | |
| 37 | } |
| 38 | html "<a href='$home$url'>$name</a></li>\n" |
| 39 | } |
| 40 | menulink $index_page Home |
| 41 | if {[anycap jor]} { |
| 42 | menulink /timeline?basic Timeline |
| 43 | } |
| 44 | if {[hascap oh]} { |
| 45 | menulink /dir?ci=tip Files |
| 46 | } |
| 47 | if {[hascap o]} { |
| 48 |
+1
-1
| --- skins/blitz_no_logo/header.txt | ||
| +++ skins/blitz_no_logo/header.txt | ||
| @@ -34,11 +34,11 @@ | ||
| 34 | 34 | } |
| 35 | 35 | html "<a href='$home$url'>$name</a></li>\n" |
| 36 | 36 | } |
| 37 | 37 | menulink $index_page Home |
| 38 | 38 | if {[anycap jor]} { |
| 39 | - menulink /timeline Timeline | |
| 39 | + menulink /timeline?basic Timeline | |
| 40 | 40 | } |
| 41 | 41 | if {[hascap oh]} { |
| 42 | 42 | menulink /dir?ci=tip Files |
| 43 | 43 | } |
| 44 | 44 | if {[hascap o]} { |
| 45 | 45 |
| --- skins/blitz_no_logo/header.txt | |
| +++ skins/blitz_no_logo/header.txt | |
| @@ -34,11 +34,11 @@ | |
| 34 | } |
| 35 | html "<a href='$home$url'>$name</a></li>\n" |
| 36 | } |
| 37 | menulink $index_page Home |
| 38 | if {[anycap jor]} { |
| 39 | menulink /timeline Timeline |
| 40 | } |
| 41 | if {[hascap oh]} { |
| 42 | menulink /dir?ci=tip Files |
| 43 | } |
| 44 | if {[hascap o]} { |
| 45 |
| --- skins/blitz_no_logo/header.txt | |
| +++ skins/blitz_no_logo/header.txt | |
| @@ -34,11 +34,11 @@ | |
| 34 | } |
| 35 | html "<a href='$home$url'>$name</a></li>\n" |
| 36 | } |
| 37 | menulink $index_page Home |
| 38 | if {[anycap jor]} { |
| 39 | menulink /timeline?basic Timeline |
| 40 | } |
| 41 | if {[hascap oh]} { |
| 42 | menulink /dir?ci=tip Files |
| 43 | } |
| 44 | if {[hascap o]} { |
| 45 |
+2
-2
| --- skins/bootstrap/header.txt | ||
| +++ skins/bootstrap/header.txt | ||
| @@ -54,13 +54,13 @@ | ||
| 54 | 54 | html "<li><a href='$home/wiki'>Wiki</a></li>\n" |
| 55 | 55 | } |
| 56 | 56 | } |
| 57 | 57 | if {[anycap jor]} { |
| 58 | 58 | if {[string compare $current_page "timeline"] == 0} { |
| 59 | - html "<li class='active'><a href='$home/timeline'>Timeline</a></li>\n" | |
| 59 | + html "<li class='active'><a href='$home/timeline?basic'>Timeline</a></li>\n" | |
| 60 | 60 | } else { |
| 61 | - html "<li><a href='$home/timeline'>Timeline</a></li>\n" | |
| 61 | + html "<li><a href='$home/timeline?basic'>Timeline</a></li>\n" | |
| 62 | 62 | } |
| 63 | 63 | } |
| 64 | 64 | if {[hascap oh]} { |
| 65 | 65 | if {[string compare [string range $current_page 0 2] "dir"] == 0} { |
| 66 | 66 | html "<li class='active'><a href='$home/dir?ci=tip'>Files</a></li>\n" |
| 67 | 67 |
| --- skins/bootstrap/header.txt | |
| +++ skins/bootstrap/header.txt | |
| @@ -54,13 +54,13 @@ | |
| 54 | html "<li><a href='$home/wiki'>Wiki</a></li>\n" |
| 55 | } |
| 56 | } |
| 57 | if {[anycap jor]} { |
| 58 | if {[string compare $current_page "timeline"] == 0} { |
| 59 | html "<li class='active'><a href='$home/timeline'>Timeline</a></li>\n" |
| 60 | } else { |
| 61 | html "<li><a href='$home/timeline'>Timeline</a></li>\n" |
| 62 | } |
| 63 | } |
| 64 | if {[hascap oh]} { |
| 65 | if {[string compare [string range $current_page 0 2] "dir"] == 0} { |
| 66 | html "<li class='active'><a href='$home/dir?ci=tip'>Files</a></li>\n" |
| 67 |
| --- skins/bootstrap/header.txt | |
| +++ skins/bootstrap/header.txt | |
| @@ -54,13 +54,13 @@ | |
| 54 | html "<li><a href='$home/wiki'>Wiki</a></li>\n" |
| 55 | } |
| 56 | } |
| 57 | if {[anycap jor]} { |
| 58 | if {[string compare $current_page "timeline"] == 0} { |
| 59 | html "<li class='active'><a href='$home/timeline?basic'>Timeline</a></li>\n" |
| 60 | } else { |
| 61 | html "<li><a href='$home/timeline?basic'>Timeline</a></li>\n" |
| 62 | } |
| 63 | } |
| 64 | if {[hascap oh]} { |
| 65 | if {[string compare [string range $current_page 0 2] "dir"] == 0} { |
| 66 | html "<li class='active'><a href='$home/dir?ci=tip'>Files</a></li>\n" |
| 67 |
| --- skins/default/css.txt | ||
| +++ skins/default/css.txt | ||
| @@ -181,10 +181,14 @@ | ||
| 181 | 181 | border: 1px solid #ccc; |
| 182 | 182 | } |
| 183 | 183 | td.tktDspValue pre { |
| 184 | 184 | white-space: pre-wrap; |
| 185 | 185 | } |
| 186 | + | |
| 187 | +span.timelineDetail { | |
| 188 | + font-size: 90%; | |
| 189 | +} | |
| 186 | 190 | |
| 187 | 191 | .footer { |
| 188 | 192 | border-top: 1px solid #ccc; |
| 189 | 193 | padding: 10px; |
| 190 | 194 | font-size:.7em; |
| 191 | 195 |
| --- skins/default/css.txt | |
| +++ skins/default/css.txt | |
| @@ -181,10 +181,14 @@ | |
| 181 | border: 1px solid #ccc; |
| 182 | } |
| 183 | td.tktDspValue pre { |
| 184 | white-space: pre-wrap; |
| 185 | } |
| 186 | |
| 187 | .footer { |
| 188 | border-top: 1px solid #ccc; |
| 189 | padding: 10px; |
| 190 | font-size:.7em; |
| 191 |
| --- skins/default/css.txt | |
| +++ skins/default/css.txt | |
| @@ -181,10 +181,14 @@ | |
| 181 | border: 1px solid #ccc; |
| 182 | } |
| 183 | td.tktDspValue pre { |
| 184 | white-space: pre-wrap; |
| 185 | } |
| 186 | |
| 187 | span.timelineDetail { |
| 188 | font-size: 90%; |
| 189 | } |
| 190 | |
| 191 | .footer { |
| 192 | border-top: 1px solid #ccc; |
| 193 | padding: 10px; |
| 194 | font-size:.7em; |
| 195 |
+1
-1
| --- skins/default/header.txt | ||
| +++ skins/default/header.txt | ||
| @@ -19,11 +19,11 @@ | ||
| 19 | 19 | html "<a href='$home$url'>$name</a>\n" |
| 20 | 20 | } |
| 21 | 21 | } |
| 22 | 22 | menulink $index_page Home |
| 23 | 23 | if {[anycap jor]} { |
| 24 | - menulink /timeline Timeline | |
| 24 | + menulink /timeline?basic Timeline | |
| 25 | 25 | } |
| 26 | 26 | if {[hascap oh]} { |
| 27 | 27 | menulink /dir?ci=tip Files |
| 28 | 28 | } |
| 29 | 29 | if {[hascap o]} { |
| 30 | 30 |
| --- skins/default/header.txt | |
| +++ skins/default/header.txt | |
| @@ -19,11 +19,11 @@ | |
| 19 | html "<a href='$home$url'>$name</a>\n" |
| 20 | } |
| 21 | } |
| 22 | menulink $index_page Home |
| 23 | if {[anycap jor]} { |
| 24 | menulink /timeline Timeline |
| 25 | } |
| 26 | if {[hascap oh]} { |
| 27 | menulink /dir?ci=tip Files |
| 28 | } |
| 29 | if {[hascap o]} { |
| 30 |
| --- skins/default/header.txt | |
| +++ skins/default/header.txt | |
| @@ -19,11 +19,11 @@ | |
| 19 | html "<a href='$home$url'>$name</a>\n" |
| 20 | } |
| 21 | } |
| 22 | menulink $index_page Home |
| 23 | if {[anycap jor]} { |
| 24 | menulink /timeline?basic Timeline |
| 25 | } |
| 26 | if {[hascap oh]} { |
| 27 | menulink /dir?ci=tip Files |
| 28 | } |
| 29 | if {[hascap o]} { |
| 30 |
+1
-1
| --- skins/eagle/header.txt | ||
| +++ skins/eagle/header.txt | ||
| @@ -98,11 +98,11 @@ | ||
| 98 | 98 | html "<a href='$home$url'>$name</a>\n" |
| 99 | 99 | } |
| 100 | 100 | menulink $index_page Home |
| 101 | 101 | menulink /help Help |
| 102 | 102 | if {[anycap jor]} { |
| 103 | - menulink /timeline Timeline | |
| 103 | + menulink /timeline?basic Timeline | |
| 104 | 104 | } |
| 105 | 105 | if {[anoncap oh]} { |
| 106 | 106 | menulink /dir?ci=tip Files |
| 107 | 107 | } |
| 108 | 108 | if {[anoncap o]} { |
| 109 | 109 |
| --- skins/eagle/header.txt | |
| +++ skins/eagle/header.txt | |
| @@ -98,11 +98,11 @@ | |
| 98 | html "<a href='$home$url'>$name</a>\n" |
| 99 | } |
| 100 | menulink $index_page Home |
| 101 | menulink /help Help |
| 102 | if {[anycap jor]} { |
| 103 | menulink /timeline Timeline |
| 104 | } |
| 105 | if {[anoncap oh]} { |
| 106 | menulink /dir?ci=tip Files |
| 107 | } |
| 108 | if {[anoncap o]} { |
| 109 |
| --- skins/eagle/header.txt | |
| +++ skins/eagle/header.txt | |
| @@ -98,11 +98,11 @@ | |
| 98 | html "<a href='$home$url'>$name</a>\n" |
| 99 | } |
| 100 | menulink $index_page Home |
| 101 | menulink /help Help |
| 102 | if {[anycap jor]} { |
| 103 | menulink /timeline?basic Timeline |
| 104 | } |
| 105 | if {[anoncap oh]} { |
| 106 | menulink /dir?ci=tip Files |
| 107 | } |
| 108 | if {[anoncap o]} { |
| 109 |
+1
-1
| --- skins/enhanced1/header.txt | ||
| +++ skins/enhanced1/header.txt | ||
| @@ -98,11 +98,11 @@ | ||
| 98 | 98 | html "<a href='$home$url'>$name</a>\n" |
| 99 | 99 | } |
| 100 | 100 | menulink $index_page Home |
| 101 | 101 | menulink /help Help |
| 102 | 102 | if {[anycap jor]} { |
| 103 | - menulink /timeline Timeline | |
| 103 | + menulink /timeline?basic Timeline | |
| 104 | 104 | } |
| 105 | 105 | if {[anoncap oh]} { |
| 106 | 106 | menulink /dir?ci=tip Files |
| 107 | 107 | } |
| 108 | 108 | if {[anoncap o]} { |
| 109 | 109 |
| --- skins/enhanced1/header.txt | |
| +++ skins/enhanced1/header.txt | |
| @@ -98,11 +98,11 @@ | |
| 98 | html "<a href='$home$url'>$name</a>\n" |
| 99 | } |
| 100 | menulink $index_page Home |
| 101 | menulink /help Help |
| 102 | if {[anycap jor]} { |
| 103 | menulink /timeline Timeline |
| 104 | } |
| 105 | if {[anoncap oh]} { |
| 106 | menulink /dir?ci=tip Files |
| 107 | } |
| 108 | if {[anoncap o]} { |
| 109 |
| --- skins/enhanced1/header.txt | |
| +++ skins/enhanced1/header.txt | |
| @@ -98,11 +98,11 @@ | |
| 98 | html "<a href='$home$url'>$name</a>\n" |
| 99 | } |
| 100 | menulink $index_page Home |
| 101 | menulink /help Help |
| 102 | if {[anycap jor]} { |
| 103 | menulink /timeline?basic Timeline |
| 104 | } |
| 105 | if {[anoncap oh]} { |
| 106 | menulink /dir?ci=tip Files |
| 107 | } |
| 108 | if {[anoncap o]} { |
| 109 |
+1
-1
| --- skins/khaki/header.txt | ||
| +++ skins/khaki/header.txt | ||
| @@ -12,11 +12,11 @@ | ||
| 12 | 12 | </div> |
| 13 | 13 | <div class="mainmenu"> |
| 14 | 14 | <th1> |
| 15 | 15 | html "<a href='$home$index_page'>Home</a>\n" |
| 16 | 16 | if {[anycap jor]} { |
| 17 | - html "<a href='$home/timeline'>Timeline</a>\n" | |
| 17 | + html "<a href='$home/timeline?basic'>Timeline</a>\n" | |
| 18 | 18 | } |
| 19 | 19 | if {[anoncap oh]} { |
| 20 | 20 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 21 | 21 | } |
| 22 | 22 | if {[anoncap o]} { |
| 23 | 23 |
| --- skins/khaki/header.txt | |
| +++ skins/khaki/header.txt | |
| @@ -12,11 +12,11 @@ | |
| 12 | </div> |
| 13 | <div class="mainmenu"> |
| 14 | <th1> |
| 15 | html "<a href='$home$index_page'>Home</a>\n" |
| 16 | if {[anycap jor]} { |
| 17 | html "<a href='$home/timeline'>Timeline</a>\n" |
| 18 | } |
| 19 | if {[anoncap oh]} { |
| 20 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 21 | } |
| 22 | if {[anoncap o]} { |
| 23 |
| --- skins/khaki/header.txt | |
| +++ skins/khaki/header.txt | |
| @@ -12,11 +12,11 @@ | |
| 12 | </div> |
| 13 | <div class="mainmenu"> |
| 14 | <th1> |
| 15 | html "<a href='$home$index_page'>Home</a>\n" |
| 16 | if {[anycap jor]} { |
| 17 | html "<a href='$home/timeline?basic'>Timeline</a>\n" |
| 18 | } |
| 19 | if {[anoncap oh]} { |
| 20 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 21 | } |
| 22 | if {[anoncap o]} { |
| 23 |
+1
-1
| --- skins/original/header.txt | ||
| +++ skins/original/header.txt | ||
| @@ -13,11 +13,11 @@ | ||
| 13 | 13 | </div> |
| 14 | 14 | <div class="mainmenu"> |
| 15 | 15 | <th1> |
| 16 | 16 | html "<a href='$home$index_page'>Home</a>\n" |
| 17 | 17 | if {[anycap jor]} { |
| 18 | - html "<a href='$home/timeline'>Timeline</a>\n" | |
| 18 | + html "<a href='$home/timeline?basic'>Timeline</a>\n" | |
| 19 | 19 | } |
| 20 | 20 | if {[anoncap oh]} { |
| 21 | 21 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 22 | 22 | } |
| 23 | 23 | if {[anoncap o]} { |
| 24 | 24 |
| --- skins/original/header.txt | |
| +++ skins/original/header.txt | |
| @@ -13,11 +13,11 @@ | |
| 13 | </div> |
| 14 | <div class="mainmenu"> |
| 15 | <th1> |
| 16 | html "<a href='$home$index_page'>Home</a>\n" |
| 17 | if {[anycap jor]} { |
| 18 | html "<a href='$home/timeline'>Timeline</a>\n" |
| 19 | } |
| 20 | if {[anoncap oh]} { |
| 21 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 22 | } |
| 23 | if {[anoncap o]} { |
| 24 |
| --- skins/original/header.txt | |
| +++ skins/original/header.txt | |
| @@ -13,11 +13,11 @@ | |
| 13 | </div> |
| 14 | <div class="mainmenu"> |
| 15 | <th1> |
| 16 | html "<a href='$home$index_page'>Home</a>\n" |
| 17 | if {[anycap jor]} { |
| 18 | html "<a href='$home/timeline?basic'>Timeline</a>\n" |
| 19 | } |
| 20 | if {[anoncap oh]} { |
| 21 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 22 | } |
| 23 | if {[anoncap o]} { |
| 24 |
+1
-1
| --- skins/plain_gray/header.txt | ||
| +++ skins/plain_gray/header.txt | ||
| @@ -10,11 +10,11 @@ | ||
| 10 | 10 | </div> |
| 11 | 11 | <div class="mainmenu"> |
| 12 | 12 | <th1> |
| 13 | 13 | html "<a href='$home$index_page'>Home</a>\n" |
| 14 | 14 | if {[anycap jor]} { |
| 15 | - html "<a href='$home/timeline'>Timeline</a>\n" | |
| 15 | + html "<a href='$home/timeline?basic'>Timeline</a>\n" | |
| 16 | 16 | } |
| 17 | 17 | if {[anoncap oh]} { |
| 18 | 18 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 19 | 19 | } |
| 20 | 20 | if {[anoncap o]} { |
| 21 | 21 |
| --- skins/plain_gray/header.txt | |
| +++ skins/plain_gray/header.txt | |
| @@ -10,11 +10,11 @@ | |
| 10 | </div> |
| 11 | <div class="mainmenu"> |
| 12 | <th1> |
| 13 | html "<a href='$home$index_page'>Home</a>\n" |
| 14 | if {[anycap jor]} { |
| 15 | html "<a href='$home/timeline'>Timeline</a>\n" |
| 16 | } |
| 17 | if {[anoncap oh]} { |
| 18 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 19 | } |
| 20 | if {[anoncap o]} { |
| 21 |
| --- skins/plain_gray/header.txt | |
| +++ skins/plain_gray/header.txt | |
| @@ -10,11 +10,11 @@ | |
| 10 | </div> |
| 11 | <div class="mainmenu"> |
| 12 | <th1> |
| 13 | html "<a href='$home$index_page'>Home</a>\n" |
| 14 | if {[anycap jor]} { |
| 15 | html "<a href='$home/timeline?basic'>Timeline</a>\n" |
| 16 | } |
| 17 | if {[anoncap oh]} { |
| 18 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 19 | } |
| 20 | if {[anoncap o]} { |
| 21 |
+1
-1
| --- skins/rounded1/details.txt | ||
| +++ skins/rounded1/details.txt | ||
| @@ -1,4 +1,4 @@ | ||
| 1 | 1 | timeline-arrowheads: 1 |
| 2 | -timeline-circle-nodes: 0 | |
| 2 | +timeline-circle-nodes: 1 | |
| 3 | 3 | timeline-color-graph-lines: 0 |
| 4 | 4 | white-foreground: 0 |
| 5 | 5 |
| --- skins/rounded1/details.txt | |
| +++ skins/rounded1/details.txt | |
| @@ -1,4 +1,4 @@ | |
| 1 | timeline-arrowheads: 1 |
| 2 | timeline-circle-nodes: 0 |
| 3 | timeline-color-graph-lines: 0 |
| 4 | white-foreground: 0 |
| 5 |
| --- skins/rounded1/details.txt | |
| +++ skins/rounded1/details.txt | |
| @@ -1,4 +1,4 @@ | |
| 1 | timeline-arrowheads: 1 |
| 2 | timeline-circle-nodes: 1 |
| 3 | timeline-color-graph-lines: 0 |
| 4 | white-foreground: 0 |
| 5 |
+1
-1
| --- skins/rounded1/header.txt | ||
| +++ skins/rounded1/header.txt | ||
| @@ -14,11 +14,11 @@ | ||
| 14 | 14 | </div> |
| 15 | 15 | <div class="mainmenu"> |
| 16 | 16 | <th1> |
| 17 | 17 | html "<a href='$home$index_page'>Home</a>\n" |
| 18 | 18 | if {[anycap jor]} { |
| 19 | - html "<a href='$home/timeline'>Timeline</a>\n" | |
| 19 | + html "<a href='$home/timeline?basic'>Timeline</a>\n" | |
| 20 | 20 | } |
| 21 | 21 | if {[anoncap oh]} { |
| 22 | 22 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 23 | 23 | } |
| 24 | 24 | if {[anoncap o]} { |
| 25 | 25 |
| --- skins/rounded1/header.txt | |
| +++ skins/rounded1/header.txt | |
| @@ -14,11 +14,11 @@ | |
| 14 | </div> |
| 15 | <div class="mainmenu"> |
| 16 | <th1> |
| 17 | html "<a href='$home$index_page'>Home</a>\n" |
| 18 | if {[anycap jor]} { |
| 19 | html "<a href='$home/timeline'>Timeline</a>\n" |
| 20 | } |
| 21 | if {[anoncap oh]} { |
| 22 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 23 | } |
| 24 | if {[anoncap o]} { |
| 25 |
| --- skins/rounded1/header.txt | |
| +++ skins/rounded1/header.txt | |
| @@ -14,11 +14,11 @@ | |
| 14 | </div> |
| 15 | <div class="mainmenu"> |
| 16 | <th1> |
| 17 | html "<a href='$home$index_page'>Home</a>\n" |
| 18 | if {[anycap jor]} { |
| 19 | html "<a href='$home/timeline?basic'>Timeline</a>\n" |
| 20 | } |
| 21 | if {[anoncap oh]} { |
| 22 | html "<a href='$home/tree?ci=tip'>Files</a>\n" |
| 23 | } |
| 24 | if {[anoncap o]} { |
| 25 |
+1
-1
| --- skins/xekri/header.txt | ||
| +++ skins/xekri/header.txt | ||
| @@ -102,11 +102,11 @@ | ||
| 102 | 102 | html "<a href='$home$url'>$name</a>\n" |
| 103 | 103 | } |
| 104 | 104 | } |
| 105 | 105 | menulink $index_page Home |
| 106 | 106 | if {[anycap jor]} { |
| 107 | - menulink /timeline Timeline | |
| 107 | + menulink /timeline?basic Timeline | |
| 108 | 108 | } |
| 109 | 109 | if {[anoncap oh]} { |
| 110 | 110 | menulink /dir?ci=tip Files |
| 111 | 111 | } |
| 112 | 112 | if {[anoncap o]} { |
| 113 | 113 |
| --- skins/xekri/header.txt | |
| +++ skins/xekri/header.txt | |
| @@ -102,11 +102,11 @@ | |
| 102 | html "<a href='$home$url'>$name</a>\n" |
| 103 | } |
| 104 | } |
| 105 | menulink $index_page Home |
| 106 | if {[anycap jor]} { |
| 107 | menulink /timeline Timeline |
| 108 | } |
| 109 | if {[anoncap oh]} { |
| 110 | menulink /dir?ci=tip Files |
| 111 | } |
| 112 | if {[anoncap o]} { |
| 113 |
| --- skins/xekri/header.txt | |
| +++ skins/xekri/header.txt | |
| @@ -102,11 +102,11 @@ | |
| 102 | html "<a href='$home$url'>$name</a>\n" |
| 103 | } |
| 104 | } |
| 105 | menulink $index_page Home |
| 106 | if {[anycap jor]} { |
| 107 | menulink /timeline?basic Timeline |
| 108 | } |
| 109 | if {[anoncap oh]} { |
| 110 | menulink /dir?ci=tip Files |
| 111 | } |
| 112 | if {[anoncap o]} { |
| 113 |
+7
-1
| --- src/finfo.c | ||
| +++ src/finfo.c | ||
| @@ -287,10 +287,11 @@ | ||
| 287 | 287 | ** ubg Background color by user name |
| 288 | 288 | ** ci=UUID Ancestors of a particular check-in |
| 289 | 289 | ** orig=UUID If both ci and orig are supplied, only show those |
| 290 | 290 | ** changes on a direct path from orig to ci. |
| 291 | 291 | ** showid Show RID values for debugging |
| 292 | +** basic Minimize clutter and complication | |
| 292 | 293 | ** |
| 293 | 294 | ** DATETIME may be "now" or "YYYY-MM-DDTHH:MM:SS.SSS". If in |
| 294 | 295 | ** year-month-day form, it may be truncated, and it may also name a |
| 295 | 296 | ** timezone offset from UTC as "-HH:MM" (westward) or "+HH:MM" |
| 296 | 297 | ** (eastward). Either no timezone suffix or "Z" means UTC. |
| @@ -313,10 +314,11 @@ | ||
| 313 | 314 | int uBg = P("ubg")!=0; |
| 314 | 315 | int fDebug = atoi(PD("debug","0")); |
| 315 | 316 | int fShowId = P("showid")!=0; |
| 316 | 317 | Stmt qparent; |
| 317 | 318 | int iTableId = timeline_tableid(); |
| 319 | + int bBasic = PB("basic"); | |
| 318 | 320 | int bHashBeforeComment = 0; /* Show hash before the comment */ |
| 319 | 321 | int bHashAfterComment = 0; /* Show hash after the comment */ |
| 320 | 322 | int bHashInDetail = 0; /* Show the hash inside the detail section */ |
| 321 | 323 | int bShowDetail; /* Show the detail section */ |
| 322 | 324 | int bSeparateDetail; /* Detail section in a separate column */ |
| @@ -330,11 +332,11 @@ | ||
| 330 | 332 | if( brBg ) url_add_parameter(&url, "brbg", 0); |
| 331 | 333 | if( uBg ) url_add_parameter(&url, "ubg", 0); |
| 332 | 334 | baseCheckin = name_to_rid_www("ci"); |
| 333 | 335 | zPrevDate[0] = 0; |
| 334 | 336 | zFilename = PD("name",""); |
| 335 | - eCommentFormat = db_get_int("timeline-comment-format", 0); | |
| 337 | + eCommentFormat = bBasic ? 5 : db_get_int("timeline-comment-format", 0); | |
| 336 | 338 | bShowDetail = (eCommentFormat & 1)==0; /* Bit 0 suppresses the comment */ |
| 337 | 339 | bSeparateDetail = (eCommentFormat & 8)!=0; |
| 338 | 340 | switch( (eCommentFormat>>1)&3 ){ |
| 339 | 341 | case 1: bHashAfterComment = 1; break; |
| 340 | 342 | case 2: bHashInDetail = 1; break; |
| @@ -445,10 +447,14 @@ | ||
| 445 | 447 | }else{ |
| 446 | 448 | blob_appendf(&title, "History of "); |
| 447 | 449 | hyperlinked_path(zFilename, &title, 0, "tree", ""); |
| 448 | 450 | if( fShowId ) blob_appendf(&title, " (%d)", fnid); |
| 449 | 451 | } |
| 452 | + if( bBasic ){ | |
| 453 | + style_submenu_element("Advanced", "%s", | |
| 454 | + url_render(&url, "basic", 0, 0, 0)); | |
| 455 | + } | |
| 450 | 456 | @ <h2>%b(&title)</h2> |
| 451 | 457 | blob_reset(&title); |
| 452 | 458 | pGraph = graph_init(); |
| 453 | 459 | @ <table id="timelineTable%d(iTableId)" class="timelineTable"> |
| 454 | 460 | if( baseCheckin ){ |
| 455 | 461 |
| --- src/finfo.c | |
| +++ src/finfo.c | |
| @@ -287,10 +287,11 @@ | |
| 287 | ** ubg Background color by user name |
| 288 | ** ci=UUID Ancestors of a particular check-in |
| 289 | ** orig=UUID If both ci and orig are supplied, only show those |
| 290 | ** changes on a direct path from orig to ci. |
| 291 | ** showid Show RID values for debugging |
| 292 | ** |
| 293 | ** DATETIME may be "now" or "YYYY-MM-DDTHH:MM:SS.SSS". If in |
| 294 | ** year-month-day form, it may be truncated, and it may also name a |
| 295 | ** timezone offset from UTC as "-HH:MM" (westward) or "+HH:MM" |
| 296 | ** (eastward). Either no timezone suffix or "Z" means UTC. |
| @@ -313,10 +314,11 @@ | |
| 313 | int uBg = P("ubg")!=0; |
| 314 | int fDebug = atoi(PD("debug","0")); |
| 315 | int fShowId = P("showid")!=0; |
| 316 | Stmt qparent; |
| 317 | int iTableId = timeline_tableid(); |
| 318 | int bHashBeforeComment = 0; /* Show hash before the comment */ |
| 319 | int bHashAfterComment = 0; /* Show hash after the comment */ |
| 320 | int bHashInDetail = 0; /* Show the hash inside the detail section */ |
| 321 | int bShowDetail; /* Show the detail section */ |
| 322 | int bSeparateDetail; /* Detail section in a separate column */ |
| @@ -330,11 +332,11 @@ | |
| 330 | if( brBg ) url_add_parameter(&url, "brbg", 0); |
| 331 | if( uBg ) url_add_parameter(&url, "ubg", 0); |
| 332 | baseCheckin = name_to_rid_www("ci"); |
| 333 | zPrevDate[0] = 0; |
| 334 | zFilename = PD("name",""); |
| 335 | eCommentFormat = db_get_int("timeline-comment-format", 0); |
| 336 | bShowDetail = (eCommentFormat & 1)==0; /* Bit 0 suppresses the comment */ |
| 337 | bSeparateDetail = (eCommentFormat & 8)!=0; |
| 338 | switch( (eCommentFormat>>1)&3 ){ |
| 339 | case 1: bHashAfterComment = 1; break; |
| 340 | case 2: bHashInDetail = 1; break; |
| @@ -445,10 +447,14 @@ | |
| 445 | }else{ |
| 446 | blob_appendf(&title, "History of "); |
| 447 | hyperlinked_path(zFilename, &title, 0, "tree", ""); |
| 448 | if( fShowId ) blob_appendf(&title, " (%d)", fnid); |
| 449 | } |
| 450 | @ <h2>%b(&title)</h2> |
| 451 | blob_reset(&title); |
| 452 | pGraph = graph_init(); |
| 453 | @ <table id="timelineTable%d(iTableId)" class="timelineTable"> |
| 454 | if( baseCheckin ){ |
| 455 |
| --- src/finfo.c | |
| +++ src/finfo.c | |
| @@ -287,10 +287,11 @@ | |
| 287 | ** ubg Background color by user name |
| 288 | ** ci=UUID Ancestors of a particular check-in |
| 289 | ** orig=UUID If both ci and orig are supplied, only show those |
| 290 | ** changes on a direct path from orig to ci. |
| 291 | ** showid Show RID values for debugging |
| 292 | ** basic Minimize clutter and complication |
| 293 | ** |
| 294 | ** DATETIME may be "now" or "YYYY-MM-DDTHH:MM:SS.SSS". If in |
| 295 | ** year-month-day form, it may be truncated, and it may also name a |
| 296 | ** timezone offset from UTC as "-HH:MM" (westward) or "+HH:MM" |
| 297 | ** (eastward). Either no timezone suffix or "Z" means UTC. |
| @@ -313,10 +314,11 @@ | |
| 314 | int uBg = P("ubg")!=0; |
| 315 | int fDebug = atoi(PD("debug","0")); |
| 316 | int fShowId = P("showid")!=0; |
| 317 | Stmt qparent; |
| 318 | int iTableId = timeline_tableid(); |
| 319 | int bBasic = PB("basic"); |
| 320 | int bHashBeforeComment = 0; /* Show hash before the comment */ |
| 321 | int bHashAfterComment = 0; /* Show hash after the comment */ |
| 322 | int bHashInDetail = 0; /* Show the hash inside the detail section */ |
| 323 | int bShowDetail; /* Show the detail section */ |
| 324 | int bSeparateDetail; /* Detail section in a separate column */ |
| @@ -330,11 +332,11 @@ | |
| 332 | if( brBg ) url_add_parameter(&url, "brbg", 0); |
| 333 | if( uBg ) url_add_parameter(&url, "ubg", 0); |
| 334 | baseCheckin = name_to_rid_www("ci"); |
| 335 | zPrevDate[0] = 0; |
| 336 | zFilename = PD("name",""); |
| 337 | eCommentFormat = bBasic ? 5 : db_get_int("timeline-comment-format", 0); |
| 338 | bShowDetail = (eCommentFormat & 1)==0; /* Bit 0 suppresses the comment */ |
| 339 | bSeparateDetail = (eCommentFormat & 8)!=0; |
| 340 | switch( (eCommentFormat>>1)&3 ){ |
| 341 | case 1: bHashAfterComment = 1; break; |
| 342 | case 2: bHashInDetail = 1; break; |
| @@ -445,10 +447,14 @@ | |
| 447 | }else{ |
| 448 | blob_appendf(&title, "History of "); |
| 449 | hyperlinked_path(zFilename, &title, 0, "tree", ""); |
| 450 | if( fShowId ) blob_appendf(&title, " (%d)", fnid); |
| 451 | } |
| 452 | if( bBasic ){ |
| 453 | style_submenu_element("Advanced", "%s", |
| 454 | url_render(&url, "basic", 0, 0, 0)); |
| 455 | } |
| 456 | @ <h2>%b(&title)</h2> |
| 457 | blob_reset(&title); |
| 458 | pGraph = graph_init(); |
| 459 | @ <table id="timelineTable%d(iTableId)" class="timelineTable"> |
| 460 | if( baseCheckin ){ |
| 461 |
+3
-3
| --- src/main.c | ||
| +++ src/main.c | ||
| @@ -2445,11 +2445,11 @@ | ||
| 2445 | 2445 | allowRepoList = 1; |
| 2446 | 2446 | } |
| 2447 | 2447 | find_server_repository(2, fCreate); |
| 2448 | 2448 | if( zInitPage==0 ){ |
| 2449 | 2449 | if( isUiCmd && g.localOpen ){ |
| 2450 | - zInitPage = "timeline?c=current"; | |
| 2450 | + zInitPage = "timeline?c=current&basic"; | |
| 2451 | 2451 | }else{ |
| 2452 | 2452 | zInitPage = ""; |
| 2453 | 2453 | } |
| 2454 | 2454 | } |
| 2455 | 2455 | if( zPort ){ |
| @@ -2483,14 +2483,14 @@ | ||
| 2483 | 2483 | } |
| 2484 | 2484 | #else |
| 2485 | 2485 | zBrowser = db_get("web-browser", "open"); |
| 2486 | 2486 | #endif |
| 2487 | 2487 | if( zIpAddr ){ |
| 2488 | - zBrowserCmd = mprintf("%s http://%s:%%d/%s &", | |
| 2488 | + zBrowserCmd = mprintf("%s \"http://%s:%%d/%s\" &", | |
| 2489 | 2489 | zBrowser, zIpAddr, zInitPage); |
| 2490 | 2490 | }else{ |
| 2491 | - zBrowserCmd = mprintf("%s http://localhost:%%d/%s &", | |
| 2491 | + zBrowserCmd = mprintf("%s \"http://localhost:%%d/%s\" &", | |
| 2492 | 2492 | zBrowser, zInitPage); |
| 2493 | 2493 | } |
| 2494 | 2494 | } |
| 2495 | 2495 | if( g.repositoryOpen ) flags |= HTTP_SERVER_HAD_REPOSITORY; |
| 2496 | 2496 | if( g.localOpen ) flags |= HTTP_SERVER_HAD_CHECKOUT; |
| 2497 | 2497 |
| --- src/main.c | |
| +++ src/main.c | |
| @@ -2445,11 +2445,11 @@ | |
| 2445 | allowRepoList = 1; |
| 2446 | } |
| 2447 | find_server_repository(2, fCreate); |
| 2448 | if( zInitPage==0 ){ |
| 2449 | if( isUiCmd && g.localOpen ){ |
| 2450 | zInitPage = "timeline?c=current"; |
| 2451 | }else{ |
| 2452 | zInitPage = ""; |
| 2453 | } |
| 2454 | } |
| 2455 | if( zPort ){ |
| @@ -2483,14 +2483,14 @@ | |
| 2483 | } |
| 2484 | #else |
| 2485 | zBrowser = db_get("web-browser", "open"); |
| 2486 | #endif |
| 2487 | if( zIpAddr ){ |
| 2488 | zBrowserCmd = mprintf("%s http://%s:%%d/%s &", |
| 2489 | zBrowser, zIpAddr, zInitPage); |
| 2490 | }else{ |
| 2491 | zBrowserCmd = mprintf("%s http://localhost:%%d/%s &", |
| 2492 | zBrowser, zInitPage); |
| 2493 | } |
| 2494 | } |
| 2495 | if( g.repositoryOpen ) flags |= HTTP_SERVER_HAD_REPOSITORY; |
| 2496 | if( g.localOpen ) flags |= HTTP_SERVER_HAD_CHECKOUT; |
| 2497 |
| --- src/main.c | |
| +++ src/main.c | |
| @@ -2445,11 +2445,11 @@ | |
| 2445 | allowRepoList = 1; |
| 2446 | } |
| 2447 | find_server_repository(2, fCreate); |
| 2448 | if( zInitPage==0 ){ |
| 2449 | if( isUiCmd && g.localOpen ){ |
| 2450 | zInitPage = "timeline?c=current&basic"; |
| 2451 | }else{ |
| 2452 | zInitPage = ""; |
| 2453 | } |
| 2454 | } |
| 2455 | if( zPort ){ |
| @@ -2483,14 +2483,14 @@ | |
| 2483 | } |
| 2484 | #else |
| 2485 | zBrowser = db_get("web-browser", "open"); |
| 2486 | #endif |
| 2487 | if( zIpAddr ){ |
| 2488 | zBrowserCmd = mprintf("%s \"http://%s:%%d/%s\" &", |
| 2489 | zBrowser, zIpAddr, zInitPage); |
| 2490 | }else{ |
| 2491 | zBrowserCmd = mprintf("%s \"http://localhost:%%d/%s\" &", |
| 2492 | zBrowser, zInitPage); |
| 2493 | } |
| 2494 | } |
| 2495 | if( g.repositoryOpen ) flags |= HTTP_SERVER_HAD_REPOSITORY; |
| 2496 | if( g.localOpen ) flags |= HTTP_SERVER_HAD_CHECKOUT; |
| 2497 |
+4
| --- src/style.c | ||
| +++ src/style.c | ||
| @@ -751,10 +751,14 @@ | ||
| 751 | 751 | }, |
| 752 | 752 | { "td.timelineTableCell", |
| 753 | 753 | "the format for the timeline data cells", |
| 754 | 754 | @ vertical-align: top; |
| 755 | 755 | @ text-align: left; |
| 756 | + }, | |
| 757 | + { "td.timelineDetailCell", | |
| 758 | + "the format for the timeline data cells for the detail column", | |
| 759 | + @ padding-left: 2em; | |
| 756 | 760 | }, |
| 757 | 761 | { "tr.timelineCurrent", |
| 758 | 762 | "the format for the timeline data cell of the current checkout", |
| 759 | 763 | @ padding: .1em .2em; |
| 760 | 764 | @ border: 1px dashed #446979; |
| 761 | 765 |
| --- src/style.c | |
| +++ src/style.c | |
| @@ -751,10 +751,14 @@ | |
| 751 | }, |
| 752 | { "td.timelineTableCell", |
| 753 | "the format for the timeline data cells", |
| 754 | @ vertical-align: top; |
| 755 | @ text-align: left; |
| 756 | }, |
| 757 | { "tr.timelineCurrent", |
| 758 | "the format for the timeline data cell of the current checkout", |
| 759 | @ padding: .1em .2em; |
| 760 | @ border: 1px dashed #446979; |
| 761 |
| --- src/style.c | |
| +++ src/style.c | |
| @@ -751,10 +751,14 @@ | |
| 751 | }, |
| 752 | { "td.timelineTableCell", |
| 753 | "the format for the timeline data cells", |
| 754 | @ vertical-align: top; |
| 755 | @ text-align: left; |
| 756 | }, |
| 757 | { "td.timelineDetailCell", |
| 758 | "the format for the timeline data cells for the detail column", |
| 759 | @ padding-left: 2em; |
| 760 | }, |
| 761 | { "tr.timelineCurrent", |
| 762 | "the format for the timeline data cell of the current checkout", |
| 763 | @ padding: .1em .2em; |
| 764 | @ border: 1px dashed #446979; |
| 765 |
+11
-10
| --- src/timeline.c | ||
| +++ src/timeline.c | ||
| @@ -268,13 +268,16 @@ | ||
| 268 | 268 | dateFormat = db_get_int("timeline-date-format", 0); |
| 269 | 269 | bCommentGitStyle = db_get_int("timeline-truncate-at-blank", 0); |
| 270 | 270 | if( tmFlags & TIMELINE_BASIC ){ |
| 271 | 271 | eCommentFormat = 5; /* Comment only */ |
| 272 | 272 | }else{ |
| 273 | - eCommentFormat = db_get_int("timeline-comment-format", 0); | |
| 273 | + /* Undocumented query parameter commentformat=N takes a numeric parameter to | |
| 274 | + ** adjust the comment-format for testing purposes. */ | |
| 275 | + const char *z = P("commentformat"); | |
| 276 | + eCommentFormat = z ? atoi(z) : db_get_int("timeline-comment-format", 0); | |
| 274 | 277 | } |
| 275 | - bShowDetail = (eCommentFormat & 1)==0; /* Bit 0 suppresses the comment */ | |
| 278 | + bShowDetail = (eCommentFormat & 1)==0; /* Bit 0 suppresses the comment */ | |
| 276 | 279 | bSeparateDetail = (eCommentFormat & 8)!=0; /* Bit 3 turns on the detail column */ |
| 277 | 280 | switch( (eCommentFormat>>1)&3 ){ |
| 278 | 281 | case 1: bHashAfterComment = 1; break; |
| 279 | 282 | case 2: bHashInDetail = 1; break; |
| 280 | 283 | default: bHashBeforeComment = 1; break; |
| @@ -1571,10 +1574,11 @@ | ||
| 1571 | 1574 | /* |
| 1572 | 1575 | ** WEBPAGE: timeline |
| 1573 | 1576 | ** |
| 1574 | 1577 | ** Query parameters: |
| 1575 | 1578 | ** |
| 1579 | +** basic Minimum clutter and distraction | |
| 1576 | 1580 | ** a=TIMEORTAG After this event |
| 1577 | 1581 | ** b=TIMEORTAG Before this event |
| 1578 | 1582 | ** c=TIMEORTAG "Circa" this event |
| 1579 | 1583 | ** m=TIMEORTAG Mark this event |
| 1580 | 1584 | ** n=COUNT Suggested number of events in output |
| @@ -1589,11 +1593,10 @@ | ||
| 1589 | 1593 | ** u=USER Only show items associated with USER |
| 1590 | 1594 | ** y=TYPE 'ci', 'w', 't', 'e', or (default) 'all' |
| 1591 | 1595 | ** ng No Graph. |
| 1592 | 1596 | ** nd Do not highlight the focus check-in |
| 1593 | 1597 | ** v Show details of files changed |
| 1594 | -** basic Minimum clutter and distraction | |
| 1595 | 1598 | ** f=CHECKIN Show family (immediate parents and children) of CHECKIN |
| 1596 | 1599 | ** from=CHECKIN Path from... |
| 1597 | 1600 | ** to=CHECKIN ... to this |
| 1598 | 1601 | ** shortest ... show only the shortest path |
| 1599 | 1602 | ** uf=FILE_HASH Show only check-ins that contain the given file version |
| @@ -1623,11 +1626,12 @@ | ||
| 1623 | 1626 | int nEntry; /* Max number of entries on timeline */ |
| 1624 | 1627 | int p_rid = name_to_typed_rid(P("p"),"ci"); /* artifact p and its parents */ |
| 1625 | 1628 | int d_rid = name_to_typed_rid(P("d"),"ci"); /* artifact d and descendants */ |
| 1626 | 1629 | int f_rid = name_to_typed_rid(P("f"),"ci"); /* artifact f and close family */ |
| 1627 | 1630 | const char *zUser = P("u"); /* All entries by this user if not NULL */ |
| 1628 | - const char *zType = PD("y","all"); /* Type of events. All if NULL */ | |
| 1631 | + int bBasic = PB("basic"); /* Minimize clutter and distraction */ | |
| 1632 | + const char *zType = PD("y",bBasic?"ci":"all"); /* Type of events. All if NULL */ | |
| 1629 | 1633 | const char *zAfter = P("a"); /* Events after this time */ |
| 1630 | 1634 | const char *zBefore = P("b"); /* Events before this time */ |
| 1631 | 1635 | const char *zCirca = P("c"); /* Events near this time */ |
| 1632 | 1636 | const char *zMark = P("m"); /* Mark this event or an event this time */ |
| 1633 | 1637 | const char *zTagName = P("t"); /* Show events with this tag */ |
| @@ -1646,11 +1650,10 @@ | ||
| 1646 | 1650 | const char *zChng = P("chng"); /* List of GLOBs for files that changed */ |
| 1647 | 1651 | int useDividers = P("nd")==0; /* Show dividers if "nd" is missing */ |
| 1648 | 1652 | int renameOnly = P("namechng")!=0; /* Show only check-ins that rename files */ |
| 1649 | 1653 | int forkOnly = PB("forks"); /* Show only forks and their children */ |
| 1650 | 1654 | int bisectOnly = PB("bisect"); /* Show the check-ins of the bisect */ |
| 1651 | - int bBasic = PB("basic"); /* Minimize clutter and distraction */ | |
| 1652 | 1655 | int tmFlags = 0; /* Timeline flags */ |
| 1653 | 1656 | const char *zThisTag = 0; /* Suppress links to this tag */ |
| 1654 | 1657 | const char *zThisUser = 0; /* Suppress links to this user */ |
| 1655 | 1658 | HQuery url; /* URL for various branch links */ |
| 1656 | 1659 | int from_rid = name_to_typed_rid(P("from"),"ci"); /* from= for paths */ |
| @@ -1916,12 +1919,12 @@ | ||
| 1916 | 1919 | } |
| 1917 | 1920 | } |
| 1918 | 1921 | if( !bBasic ){ |
| 1919 | 1922 | style_submenu_checkbox("v", "Files", zType[0]!='a' && zType[0]!='c', 0); |
| 1920 | 1923 | style_submenu_entry("n","Max:",4,0); |
| 1924 | + timeline_y_submenu(1); | |
| 1921 | 1925 | } |
| 1922 | - timeline_y_submenu(1); | |
| 1923 | 1926 | }else if( f_rid && g.perm.Read ){ |
| 1924 | 1927 | /* If f= is present, ignore all other parameters other than n= */ |
| 1925 | 1928 | char *zUuid; |
| 1926 | 1929 | db_multi_exec( |
| 1927 | 1930 | "CREATE TEMP TABLE IF NOT EXISTS ok(rid INTEGER PRIMARY KEY);" |
| @@ -2228,21 +2231,19 @@ | ||
| 2228 | 2231 | if( zType[0]=='a' || zType[0]=='c' ){ |
| 2229 | 2232 | style_submenu_checkbox("unhide", "Unhide", 0, 0); |
| 2230 | 2233 | } |
| 2231 | 2234 | style_submenu_checkbox("v", "Files", zType[0]!='a' && zType[0]!='c', 0); |
| 2232 | 2235 | style_submenu_entry("n","Max:",4,0); |
| 2233 | - } | |
| 2234 | - timeline_y_submenu(disableY); | |
| 2235 | - if( !bBasic ){ | |
| 2236 | + timeline_y_submenu(disableY); | |
| 2236 | 2237 | style_submenu_entry("t", "Tag Filter:", -8, 0); |
| 2237 | 2238 | style_submenu_multichoice("ms", count(azMatchStyles)/2, azMatchStyles, 0); |
| 2238 | 2239 | } |
| 2239 | 2240 | } |
| 2240 | 2241 | blob_zero(&cond); |
| 2241 | 2242 | } |
| 2242 | 2243 | if( bBasic ){ |
| 2243 | - timeline_submenu(&url, "Advanced", "basic", "0", 0); | |
| 2244 | + timeline_submenu(&url, "Advanced", "basic", 0, 0); | |
| 2244 | 2245 | } |
| 2245 | 2246 | if( PB("showsql") ){ |
| 2246 | 2247 | @ <pre>%h(blob_sql_text(&sql))</pre> |
| 2247 | 2248 | } |
| 2248 | 2249 | if( search_restrict(SRCH_CKIN)!=0 ){ |
| 2249 | 2250 |
| --- src/timeline.c | |
| +++ src/timeline.c | |
| @@ -268,13 +268,16 @@ | |
| 268 | dateFormat = db_get_int("timeline-date-format", 0); |
| 269 | bCommentGitStyle = db_get_int("timeline-truncate-at-blank", 0); |
| 270 | if( tmFlags & TIMELINE_BASIC ){ |
| 271 | eCommentFormat = 5; /* Comment only */ |
| 272 | }else{ |
| 273 | eCommentFormat = db_get_int("timeline-comment-format", 0); |
| 274 | } |
| 275 | bShowDetail = (eCommentFormat & 1)==0; /* Bit 0 suppresses the comment */ |
| 276 | bSeparateDetail = (eCommentFormat & 8)!=0; /* Bit 3 turns on the detail column */ |
| 277 | switch( (eCommentFormat>>1)&3 ){ |
| 278 | case 1: bHashAfterComment = 1; break; |
| 279 | case 2: bHashInDetail = 1; break; |
| 280 | default: bHashBeforeComment = 1; break; |
| @@ -1571,10 +1574,11 @@ | |
| 1571 | /* |
| 1572 | ** WEBPAGE: timeline |
| 1573 | ** |
| 1574 | ** Query parameters: |
| 1575 | ** |
| 1576 | ** a=TIMEORTAG After this event |
| 1577 | ** b=TIMEORTAG Before this event |
| 1578 | ** c=TIMEORTAG "Circa" this event |
| 1579 | ** m=TIMEORTAG Mark this event |
| 1580 | ** n=COUNT Suggested number of events in output |
| @@ -1589,11 +1593,10 @@ | |
| 1589 | ** u=USER Only show items associated with USER |
| 1590 | ** y=TYPE 'ci', 'w', 't', 'e', or (default) 'all' |
| 1591 | ** ng No Graph. |
| 1592 | ** nd Do not highlight the focus check-in |
| 1593 | ** v Show details of files changed |
| 1594 | ** basic Minimum clutter and distraction |
| 1595 | ** f=CHECKIN Show family (immediate parents and children) of CHECKIN |
| 1596 | ** from=CHECKIN Path from... |
| 1597 | ** to=CHECKIN ... to this |
| 1598 | ** shortest ... show only the shortest path |
| 1599 | ** uf=FILE_HASH Show only check-ins that contain the given file version |
| @@ -1623,11 +1626,12 @@ | |
| 1623 | int nEntry; /* Max number of entries on timeline */ |
| 1624 | int p_rid = name_to_typed_rid(P("p"),"ci"); /* artifact p and its parents */ |
| 1625 | int d_rid = name_to_typed_rid(P("d"),"ci"); /* artifact d and descendants */ |
| 1626 | int f_rid = name_to_typed_rid(P("f"),"ci"); /* artifact f and close family */ |
| 1627 | const char *zUser = P("u"); /* All entries by this user if not NULL */ |
| 1628 | const char *zType = PD("y","all"); /* Type of events. All if NULL */ |
| 1629 | const char *zAfter = P("a"); /* Events after this time */ |
| 1630 | const char *zBefore = P("b"); /* Events before this time */ |
| 1631 | const char *zCirca = P("c"); /* Events near this time */ |
| 1632 | const char *zMark = P("m"); /* Mark this event or an event this time */ |
| 1633 | const char *zTagName = P("t"); /* Show events with this tag */ |
| @@ -1646,11 +1650,10 @@ | |
| 1646 | const char *zChng = P("chng"); /* List of GLOBs for files that changed */ |
| 1647 | int useDividers = P("nd")==0; /* Show dividers if "nd" is missing */ |
| 1648 | int renameOnly = P("namechng")!=0; /* Show only check-ins that rename files */ |
| 1649 | int forkOnly = PB("forks"); /* Show only forks and their children */ |
| 1650 | int bisectOnly = PB("bisect"); /* Show the check-ins of the bisect */ |
| 1651 | int bBasic = PB("basic"); /* Minimize clutter and distraction */ |
| 1652 | int tmFlags = 0; /* Timeline flags */ |
| 1653 | const char *zThisTag = 0; /* Suppress links to this tag */ |
| 1654 | const char *zThisUser = 0; /* Suppress links to this user */ |
| 1655 | HQuery url; /* URL for various branch links */ |
| 1656 | int from_rid = name_to_typed_rid(P("from"),"ci"); /* from= for paths */ |
| @@ -1916,12 +1919,12 @@ | |
| 1916 | } |
| 1917 | } |
| 1918 | if( !bBasic ){ |
| 1919 | style_submenu_checkbox("v", "Files", zType[0]!='a' && zType[0]!='c', 0); |
| 1920 | style_submenu_entry("n","Max:",4,0); |
| 1921 | } |
| 1922 | timeline_y_submenu(1); |
| 1923 | }else if( f_rid && g.perm.Read ){ |
| 1924 | /* If f= is present, ignore all other parameters other than n= */ |
| 1925 | char *zUuid; |
| 1926 | db_multi_exec( |
| 1927 | "CREATE TEMP TABLE IF NOT EXISTS ok(rid INTEGER PRIMARY KEY);" |
| @@ -2228,21 +2231,19 @@ | |
| 2228 | if( zType[0]=='a' || zType[0]=='c' ){ |
| 2229 | style_submenu_checkbox("unhide", "Unhide", 0, 0); |
| 2230 | } |
| 2231 | style_submenu_checkbox("v", "Files", zType[0]!='a' && zType[0]!='c', 0); |
| 2232 | style_submenu_entry("n","Max:",4,0); |
| 2233 | } |
| 2234 | timeline_y_submenu(disableY); |
| 2235 | if( !bBasic ){ |
| 2236 | style_submenu_entry("t", "Tag Filter:", -8, 0); |
| 2237 | style_submenu_multichoice("ms", count(azMatchStyles)/2, azMatchStyles, 0); |
| 2238 | } |
| 2239 | } |
| 2240 | blob_zero(&cond); |
| 2241 | } |
| 2242 | if( bBasic ){ |
| 2243 | timeline_submenu(&url, "Advanced", "basic", "0", 0); |
| 2244 | } |
| 2245 | if( PB("showsql") ){ |
| 2246 | @ <pre>%h(blob_sql_text(&sql))</pre> |
| 2247 | } |
| 2248 | if( search_restrict(SRCH_CKIN)!=0 ){ |
| 2249 |
| --- src/timeline.c | |
| +++ src/timeline.c | |
| @@ -268,13 +268,16 @@ | |
| 268 | dateFormat = db_get_int("timeline-date-format", 0); |
| 269 | bCommentGitStyle = db_get_int("timeline-truncate-at-blank", 0); |
| 270 | if( tmFlags & TIMELINE_BASIC ){ |
| 271 | eCommentFormat = 5; /* Comment only */ |
| 272 | }else{ |
| 273 | /* Undocumented query parameter commentformat=N takes a numeric parameter to |
| 274 | ** adjust the comment-format for testing purposes. */ |
| 275 | const char *z = P("commentformat"); |
| 276 | eCommentFormat = z ? atoi(z) : db_get_int("timeline-comment-format", 0); |
| 277 | } |
| 278 | bShowDetail = (eCommentFormat & 1)==0; /* Bit 0 suppresses the comment */ |
| 279 | bSeparateDetail = (eCommentFormat & 8)!=0; /* Bit 3 turns on the detail column */ |
| 280 | switch( (eCommentFormat>>1)&3 ){ |
| 281 | case 1: bHashAfterComment = 1; break; |
| 282 | case 2: bHashInDetail = 1; break; |
| 283 | default: bHashBeforeComment = 1; break; |
| @@ -1571,10 +1574,11 @@ | |
| 1574 | /* |
| 1575 | ** WEBPAGE: timeline |
| 1576 | ** |
| 1577 | ** Query parameters: |
| 1578 | ** |
| 1579 | ** basic Minimum clutter and distraction |
| 1580 | ** a=TIMEORTAG After this event |
| 1581 | ** b=TIMEORTAG Before this event |
| 1582 | ** c=TIMEORTAG "Circa" this event |
| 1583 | ** m=TIMEORTAG Mark this event |
| 1584 | ** n=COUNT Suggested number of events in output |
| @@ -1589,11 +1593,10 @@ | |
| 1593 | ** u=USER Only show items associated with USER |
| 1594 | ** y=TYPE 'ci', 'w', 't', 'e', or (default) 'all' |
| 1595 | ** ng No Graph. |
| 1596 | ** nd Do not highlight the focus check-in |
| 1597 | ** v Show details of files changed |
| 1598 | ** f=CHECKIN Show family (immediate parents and children) of CHECKIN |
| 1599 | ** from=CHECKIN Path from... |
| 1600 | ** to=CHECKIN ... to this |
| 1601 | ** shortest ... show only the shortest path |
| 1602 | ** uf=FILE_HASH Show only check-ins that contain the given file version |
| @@ -1623,11 +1626,12 @@ | |
| 1626 | int nEntry; /* Max number of entries on timeline */ |
| 1627 | int p_rid = name_to_typed_rid(P("p"),"ci"); /* artifact p and its parents */ |
| 1628 | int d_rid = name_to_typed_rid(P("d"),"ci"); /* artifact d and descendants */ |
| 1629 | int f_rid = name_to_typed_rid(P("f"),"ci"); /* artifact f and close family */ |
| 1630 | const char *zUser = P("u"); /* All entries by this user if not NULL */ |
| 1631 | int bBasic = PB("basic"); /* Minimize clutter and distraction */ |
| 1632 | const char *zType = PD("y",bBasic?"ci":"all"); /* Type of events. All if NULL */ |
| 1633 | const char *zAfter = P("a"); /* Events after this time */ |
| 1634 | const char *zBefore = P("b"); /* Events before this time */ |
| 1635 | const char *zCirca = P("c"); /* Events near this time */ |
| 1636 | const char *zMark = P("m"); /* Mark this event or an event this time */ |
| 1637 | const char *zTagName = P("t"); /* Show events with this tag */ |
| @@ -1646,11 +1650,10 @@ | |
| 1650 | const char *zChng = P("chng"); /* List of GLOBs for files that changed */ |
| 1651 | int useDividers = P("nd")==0; /* Show dividers if "nd" is missing */ |
| 1652 | int renameOnly = P("namechng")!=0; /* Show only check-ins that rename files */ |
| 1653 | int forkOnly = PB("forks"); /* Show only forks and their children */ |
| 1654 | int bisectOnly = PB("bisect"); /* Show the check-ins of the bisect */ |
| 1655 | int tmFlags = 0; /* Timeline flags */ |
| 1656 | const char *zThisTag = 0; /* Suppress links to this tag */ |
| 1657 | const char *zThisUser = 0; /* Suppress links to this user */ |
| 1658 | HQuery url; /* URL for various branch links */ |
| 1659 | int from_rid = name_to_typed_rid(P("from"),"ci"); /* from= for paths */ |
| @@ -1916,12 +1919,12 @@ | |
| 1919 | } |
| 1920 | } |
| 1921 | if( !bBasic ){ |
| 1922 | style_submenu_checkbox("v", "Files", zType[0]!='a' && zType[0]!='c', 0); |
| 1923 | style_submenu_entry("n","Max:",4,0); |
| 1924 | timeline_y_submenu(1); |
| 1925 | } |
| 1926 | }else if( f_rid && g.perm.Read ){ |
| 1927 | /* If f= is present, ignore all other parameters other than n= */ |
| 1928 | char *zUuid; |
| 1929 | db_multi_exec( |
| 1930 | "CREATE TEMP TABLE IF NOT EXISTS ok(rid INTEGER PRIMARY KEY);" |
| @@ -2228,21 +2231,19 @@ | |
| 2231 | if( zType[0]=='a' || zType[0]=='c' ){ |
| 2232 | style_submenu_checkbox("unhide", "Unhide", 0, 0); |
| 2233 | } |
| 2234 | style_submenu_checkbox("v", "Files", zType[0]!='a' && zType[0]!='c', 0); |
| 2235 | style_submenu_entry("n","Max:",4,0); |
| 2236 | timeline_y_submenu(disableY); |
| 2237 | style_submenu_entry("t", "Tag Filter:", -8, 0); |
| 2238 | style_submenu_multichoice("ms", count(azMatchStyles)/2, azMatchStyles, 0); |
| 2239 | } |
| 2240 | } |
| 2241 | blob_zero(&cond); |
| 2242 | } |
| 2243 | if( bBasic ){ |
| 2244 | timeline_submenu(&url, "Advanced", "basic", 0, 0); |
| 2245 | } |
| 2246 | if( PB("showsql") ){ |
| 2247 | @ <pre>%h(blob_sql_text(&sql))</pre> |
| 2248 | } |
| 2249 | if( search_restrict(SRCH_CKIN)!=0 ){ |
| 2250 |