mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-30 18:36:22 +01:00 
			
		
		
		
	Fix autofocus behavior (#34397)
The "autofocus" was abused or misbehaved:
1. When users visit a page but they are not going to change a field,
then the field shouldn't get "autofocus"
* the "auth" / "user" page: in most cases, users do not want to change
the names
    * see also the GitHub's "settings" page behavior.
2. There shouldn't be duplicate "autofocus" inputs in most cases, only
the first one focuses
3. When a panel is shown, the "autofocus" should get focus
    * "add ssh key" panel
This PR fixes all these problems and by the way remove duplicate
"isElemHidden" function.
			
			
This commit is contained in:
		| @@ -1,4 +1,4 @@ | ||||
| import {isElemHidden, onInputDebounce, submitEventSubmitter, toggleElem} from '../utils/dom.ts'; | ||||
| import {isElemVisible, onInputDebounce, submitEventSubmitter, toggleElem} from '../utils/dom.ts'; | ||||
| import {GET} from '../modules/fetch.ts'; | ||||
|  | ||||
| const {appSubUrl} = window.config; | ||||
| @@ -28,7 +28,7 @@ export function parseIssueListQuickGotoLink(repoLink: string, searchText: string | ||||
| } | ||||
|  | ||||
| export function initCommonIssueListQuickGoto() { | ||||
|   const goto = document.querySelector('#issue-list-quick-goto'); | ||||
|   const goto = document.querySelector<HTMLElement>('#issue-list-quick-goto'); | ||||
|   if (!goto) return; | ||||
|  | ||||
|   const form = goto.closest('form'); | ||||
| @@ -37,7 +37,7 @@ export function initCommonIssueListQuickGoto() { | ||||
|  | ||||
|   form.addEventListener('submit', (e) => { | ||||
|     // if there is no goto button, or the form is submitted by non-quick-goto elements, submit the form directly | ||||
|     let doQuickGoto = !isElemHidden(goto); | ||||
|     let doQuickGoto = isElemVisible(goto); | ||||
|     const submitter = submitEventSubmitter(e); | ||||
|     if (submitter !== form && submitter !== input && submitter !== goto) doQuickGoto = false; | ||||
|     if (!doQuickGoto) return; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user