Fix autofocus handling for search widget #885
Open
+8
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adds logic to focus input elements with the autofocus attribute using requestAnimationFrame, ensuring proper behavior for dynamically loaded content (like the search widget) and improved compatibility with browsers like Firefox. Should fix #348 and any other autofocusing widget problems.
The problem is that the setupSearchBoxes() function runs after the page content is loaded, and it adds event listeners to the search input. However, the browser's autofocus behavior happens during initial page load, but since the content is loaded asynchronously and inserted via innerHTML, the autofocus attribute doesn't work as expected. I commited a fix that should solve this. It runs focus() on all elements with autofocus enabled after the widgets are added. Might not be the best solution but works for me on both Firefox and Chrome!