diff --git a/web_src/js/features/repo-common.ts b/web_src/js/features/repo-common.ts index ebb6881c67545..61a974eea29d2 100644 --- a/web_src/js/features/repo-common.ts +++ b/web_src/js/features/repo-common.ts @@ -1,4 +1,4 @@ -import {queryElems, type DOMEvent} from '../utils/dom.ts'; +import {addDelegatedEventListener, queryElems, type DOMEvent} from '../utils/dom.ts'; import {POST} from '../modules/fetch.ts'; import {showErrorToast} from '../modules/toast.ts'; import {sleep} from '../utils.ts'; @@ -141,6 +141,12 @@ function initClonePanelButton(btn: HTMLButtonElement) { interactive: true, hideOnClick: true, arrow: false, + onMount: (instance) => { // focus input on open and on tab click + instance.popper.querySelector('.js-clone-url')?.focus(); + addDelegatedEventListener(instance.popper, 'click', '.clone-panel-tab .item', () => { + instance.popper.querySelector('.js-clone-url')?.focus(); + }); + }, }); }