Fixed expanded sections not opening on first click (mobile)

This commit is contained in:
squidfunk 2021-03-05 18:58:12 +01:00
parent 0e359b9649
commit 5d0cae7ca6
6 changed files with 21 additions and 17 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -217,7 +217,7 @@
</script>
{% endblock %}
{% block scripts %}
<script src="{{ 'assets/javascripts/bundle.9b151c6a.min.js' | url }}"></script>
<script src="{{ 'assets/javascripts/bundle.b881577d.min.js' | url }}"></script>
{% for path in config["extra_javascript"] %}
<script src="{{ path | url }}"></script>
{% endfor %}

View File

@ -144,7 +144,7 @@ keyboard$
})
/* Set up patches */
patchIndeterminate({ document$ })
patchIndeterminate({ document$, tablet$ })
patchScrollfix({ document$ })
patchScrolllock({ viewport$, tablet$ })

View File

@ -26,7 +26,8 @@ import {
mergeMap,
switchMap,
takeWhile,
tap
tap,
withLatestFrom
} from "rxjs/operators"
import { getElements } from "~/browser"
@ -40,6 +41,7 @@ import { getElements } from "~/browser"
*/
interface PatchOptions {
document$: Observable<Document> /* Document observable */
tablet$: Observable<boolean> /* Tablet breakpoint observable */
}
/* ----------------------------------------------------------------------------
@ -55,7 +57,7 @@ interface PatchOptions {
* @param options - Options
*/
export function patchIndeterminate(
{ document$ }: PatchOptions
{ document$, tablet$ }: PatchOptions
): void {
document$
.pipe(
@ -71,10 +73,12 @@ export function patchIndeterminate(
takeWhile(() => el.hasAttribute("data-md-state")),
mapTo(el)
)
)
),
withLatestFrom(tablet$)
)
.subscribe(el => {
.subscribe(([el, tablet]) => {
el.removeAttribute("data-md-state")
el.checked = false
if (tablet)
el.checked = false
})
}