mirror of
https://github.com/squidfunk/mkdocs-material.git
synced 2024-06-14 11:52:32 +03:00
Fixed following of link if search input is focused
This commit is contained in:
parent
f6238f3bae
commit
7ae0a42654
3
material/assets/javascripts/application-6b599127bc.js
Normal file
3
material/assets/javascripts/application-6b599127bc.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -149,7 +149,7 @@
|
|||||||
{% endblock %}
|
{% endblock %}
|
||||||
</div>
|
</div>
|
||||||
{% block scripts %}
|
{% block scripts %}
|
||||||
<script src="{{ base_url }}/assets/javascripts/application-7018102a8b.js"></script>
|
<script src="{{ base_url }}/assets/javascripts/application-6b599127bc.js"></script>
|
||||||
<script>app.initialize({url:{base:"{{ base_url }}"}})</script>
|
<script>app.initialize({url:{base:"{{ base_url }}"}})</script>
|
||||||
{% for path in extra_javascript %}
|
{% for path in extra_javascript %}
|
||||||
<script src="{{ path }}"></script>
|
<script src="{{ path }}"></script>
|
||||||
|
@ -203,8 +203,8 @@ function initialize(config) { // eslint-disable-line func-style
|
|||||||
}
|
}
|
||||||
}))
|
}))
|
||||||
|
|
||||||
/* Listener: keyboard handlers */
|
/* Listener: keyboard handlers */ // eslint-disable-next-line complexity
|
||||||
new Material.Event.Listener(window, "keydown", ev => {
|
new Material.Event.Listener(window, "keydown", ev => { // TODO: split up into component to reduce complexity
|
||||||
const toggle = document.querySelector("[data-md-toggle=search]")
|
const toggle = document.querySelector("[data-md-toggle=search]")
|
||||||
if (!(toggle instanceof HTMLInputElement))
|
if (!(toggle instanceof HTMLInputElement))
|
||||||
throw new ReferenceError
|
throw new ReferenceError
|
||||||
@ -221,9 +221,21 @@ function initialize(config) { // eslint-disable-line func-style
|
|||||||
|
|
||||||
/* Enter: prevent form submission */
|
/* Enter: prevent form submission */
|
||||||
if (ev.keyCode === 13) {
|
if (ev.keyCode === 13) {
|
||||||
if (query === document.activeElement)
|
if (query === document.activeElement) {
|
||||||
ev.preventDefault()
|
ev.preventDefault()
|
||||||
|
|
||||||
|
/* Go to current active/focused link */
|
||||||
|
const focus = document.querySelector(
|
||||||
|
"[data-md-component=search] [href][data-md-state=active]")
|
||||||
|
if (focus instanceof HTMLLinkElement)
|
||||||
|
window.location = focus.getAttribute("href")
|
||||||
|
|
||||||
|
/* Close search */
|
||||||
|
toggle.checked = false
|
||||||
|
toggle.dispatchEvent(new CustomEvent("change"))
|
||||||
|
query.blur()
|
||||||
|
}
|
||||||
|
|
||||||
/* Escape: close search */
|
/* Escape: close search */
|
||||||
} else if (ev.keyCode === 27) {
|
} else if (ev.keyCode === 27) {
|
||||||
toggle.checked = false
|
toggle.checked = false
|
||||||
@ -299,16 +311,6 @@ function initialize(config) { // eslint-disable-line func-style
|
|||||||
}
|
}
|
||||||
}).listen()
|
}).listen()
|
||||||
|
|
||||||
/* Listener: fix unclickable toggle due to blur handler */
|
|
||||||
new Material.Event.MatchMedia("(min-width: 960px)",
|
|
||||||
new Material.Event.Listener("[data-md-toggle=search]", "click",
|
|
||||||
ev => ev.stopPropagation()))
|
|
||||||
|
|
||||||
/* Listener: prevent search from closing when clicking */
|
|
||||||
new Material.Event.MatchMedia("(min-width: 960px)",
|
|
||||||
new Material.Event.Listener("[data-md-component=search]", "click",
|
|
||||||
ev => ev.stopPropagation()))
|
|
||||||
|
|
||||||
/* Retrieve facts for the given repository type */
|
/* Retrieve facts for the given repository type */
|
||||||
;(() => {
|
;(() => {
|
||||||
const el = document.querySelector("[data-md-source]")
|
const el = document.querySelector("[data-md-source]")
|
||||||
|
Loading…
Reference in New Issue
Block a user