authorgravatar for clementespeute@shirogames.comClement Espeute <clementespeute@shirogames.com> 2023-01-12 13:35:23+01:00
committergravatar for clementespeute@shirogames.comClement Espeute <clementespeute@shirogames.com> 2023-01-12 13:38:26+01:00
log66569c7ec664fbab691b74616c02fed838b91a7d
tree2d656dd6ca7f0dad07b20b5c349891540b1008cb
parent4971df857213f32b39e79f39b6e391cf76d06c3a

autodoc: use js instead of details for collapsing descriptions


2 files changed, 13 insertions(+), 16 deletions(-)

lib/docs/index.html+6-8
...@@ -266,25 +266,23 @@...@@ -266,25 +266,23 @@
266 font-weight: bold;266 font-weight: bold;
267 }267 }
268268
269 details[open] summary .sum-less {269 .expand[open] .sum-less {
270 display: none;270 display: none;
271 }271 }
272272
273 details[open] summary .sum-more {273 .expand[open] .sum-more {
274 display: block;274 display: block;
275 }275 }
276276
277 details summary .sum-more {277 .expand .sum-more {
278 display: none;278 display: none;
279 }279 }
280280
281 details summary {281 .expand {
282 list-style-type: none;
283 position: relative;282 position: relative;
284 pointer-events: none;
285 }283 }
286284
287 details summary::before {285 .expand .button:before {
288 content: "[+] ";286 content: "[+] ";
289 font-family: var(--mono);287 font-family: var(--mono);
290 color: var(--link-color);288 color: var(--link-color);
...@@ -298,7 +296,7 @@...@@ -298,7 +296,7 @@
298 cursor: pointer;296 cursor: pointer;
299 }297 }
300298
301 details[open] summary::before {299 .expand[open] .button:before {
302 content: "[-] ";300 content: "[-] ";
303 }301 }
304302
lib/docs/main.js+7-8
...@@ -2476,7 +2476,7 @@ var zigAnalysis;...@@ -2476,7 +2476,7 @@ var zigAnalysis;
2476 short = markdown(short);2476 short = markdown(short);
2477 var long = markdown(docs);2477 var long = markdown(docs);
2478 tdDesc.innerHTML = 2478 tdDesc.innerHTML =
2479 "<details ontoggle=\"scrollOnCollapse(event);\"><summary><div class=\"sum-less\">" + short + "</div>" + "<div class=\"sum-more\">" + long + "</div></summary></details>";2479 "<div class=\"expand\" ><span class=\"button\" onclick=\"toggleExpand(event)\"></span><div class=\"sum-less\">" + short + "</div>" + "<div class=\"sum-more\">" + long + "</div></details>";
2480 }2480 }
2481 else {2481 else {
2482 tdDesc.innerHTML = markdown(short);2482 tdDesc.innerHTML = markdown(short);
...@@ -3718,12 +3718,11 @@ var zigAnalysis;...@@ -3718,12 +3718,11 @@ var zigAnalysis;
37183718
3719})();3719})();
37203720
3721function scrollOnCollapse(event) {3721function toggleExpand(event) {
3722 const details = event.target;3722 const parent = event.target.parentElement;
3723 if (!details.open && details.getBoundingClientRect().top < 0) {3723 parent.toggleAttribute("open");
3724 console.log("scrolling!")3724
3725 details.parentElement.parentElement.scrollIntoView(true);3725 if (!parent.open && parent.getBoundingClientRect().top < 0) {
3726 } else {3726 parent.parentElement.parentElement.scrollIntoView(true);
3727 console.log("not scrolling!", details.open, details.top);
3728 }3727 }
3729}3728}
\ No newline at end of file