| | @@ -1112,27 +1112,31 @@ |
| 1112 | 1112 | "title='Status message area. Double-click to clear them.'>" |
| 1113 | 1113 | "Status messages will go here.</div>\n" |
| 1114 | 1114 | /* will be moved into the tab container via JS */); |
| 1115 | 1115 | |
| 1116 | 1116 | /* Main tab container... */ |
| 1117 | | - CX("<div id='wikiedit-tabs' class='tab-container'></div>"); |
| 1117 | + CX("<div id='wikiedit-tabs' class='tab-container'>Loading...</div>"); |
| 1118 | + /* The .hidden class on the following tab elements is to help lessen |
| 1119 | + the FOUC effect of the tabs before JS re-assembles them. */ |
| 1118 | 1120 | |
| 1119 | 1121 | /******* Page list *******/ |
| 1120 | 1122 | { |
| 1121 | 1123 | CX("<div id='wikiedit-tab-pages' " |
| 1122 | 1124 | "data-tab-parent='wikiedit-tabs' " |
| 1123 | | - "data-tab-label='Wiki Page List'" |
| 1125 | + "data-tab-label='Wiki Page List' " |
| 1126 | + "class='hidden'" |
| 1124 | 1127 | ">"); |
| 1125 | 1128 | CX("<div>Loading wiki pages list...</div>"); |
| 1126 | 1129 | CX("</div>"/*#wikiedit-tab-pages*/); |
| 1127 | 1130 | } |
| 1128 | 1131 | |
| 1129 | 1132 | /******* Content tab *******/ |
| 1130 | 1133 | { |
| 1131 | 1134 | CX("<div id='wikiedit-tab-content' " |
| 1132 | 1135 | "data-tab-parent='wikiedit-tabs' " |
| 1133 | | - "data-tab-label='Wiki Editor'" |
| 1136 | + "data-tab-label='Wiki Editor' " |
| 1137 | + "class='hidden'" |
| 1134 | 1138 | ">"); |
| 1135 | 1139 | CX("<div class='flex-container flex-row child-gap-small'>"); |
| 1136 | 1140 | CX("<span class='input-with-label'>" |
| 1137 | 1141 | "<label>Mime type</label>"); |
| 1138 | 1142 | mimetype_option_menu(0); |
| | @@ -1161,11 +1165,12 @@ |
| 1161 | 1165 | } |
| 1162 | 1166 | /****** Preview tab ******/ |
| 1163 | 1167 | { |
| 1164 | 1168 | CX("<div id='wikiedit-tab-preview' " |
| 1165 | 1169 | "data-tab-parent='wikiedit-tabs' " |
| 1166 | | - "data-tab-label='Preview & Save'" |
| 1170 | + "data-tab-label='Preview & Save' " |
| 1171 | + "class='hidden'" |
| 1167 | 1172 | ">"); |
| 1168 | 1173 | CX("<div class='wikiedit-options flex-container flex-row'>"); |
| 1169 | 1174 | CX("<button id='btn-preview-refresh' " |
| 1170 | 1175 | "data-f-preview-from='wikiContent' " |
| 1171 | 1176 | /* ^^^ fossil.page[methodName]() OR text source elem ID, |
| | @@ -1191,11 +1196,12 @@ |
| 1191 | 1196 | |
| 1192 | 1197 | /****** Diff tab ******/ |
| 1193 | 1198 | { |
| 1194 | 1199 | CX("<div id='wikiedit-tab-diff' " |
| 1195 | 1200 | "data-tab-parent='wikiedit-tabs' " |
| 1196 | | - "data-tab-label='Diff'" |
| 1201 | + "data-tab-label='Diff' " |
| 1202 | + "class='hidden'" |
| 1197 | 1203 | ">"); |
| 1198 | 1204 | |
| 1199 | 1205 | CX("<div class='wikiedit-options flex-container flex-row' " |
| 1200 | 1206 | "id='wikiedit-tab-diff-buttons'>"); |
| 1201 | 1207 | CX("<button class='sbs'>Side-by-side</button>" |
| | @@ -1209,11 +1215,12 @@ |
| 1209 | 1215 | |
| 1210 | 1216 | /****** The obligatory "Misc" tab ******/ |
| 1211 | 1217 | { |
| 1212 | 1218 | CX("<div id='wikiedit-tab-misc' " |
| 1213 | 1219 | "data-tab-parent='wikiedit-tabs' " |
| 1214 | | - "data-tab-label='Help, Attachments, etc.'" |
| 1220 | + "data-tab-label='Help, Attachments, etc.' " |
| 1221 | + "class='hidden'" |
| 1215 | 1222 | ">"); |
| 1216 | 1223 | CX("<h3>Wiki formatting rules</h3>"); |
| 1217 | 1224 | CX("<ul>"); |
| 1218 | 1225 | CX("<li><a href='%R/wiki_rules'>Fossil wiki format</a></li>"); |
| 1219 | 1226 | CX("<li><a href='%R/md_rules'>Markdown format</a></li>"); |
| 1220 | 1227 | |