Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

When the title in the issue has a value, set the text cursor at the end of the text. #30090

Merged
merged 6 commits into from
Mar 27, 2024

Conversation

HEREYUA
Copy link
Contributor

@HEREYUA HEREYUA commented Mar 26, 2024

Fix: #25055

Before

image

After

image

ps:I've noticed that we are gradually replacing jQuery, so I didn't use jQuery here.

@GiteaBot GiteaBot added the lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. label Mar 26, 2024
@pull-request-size pull-request-size bot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label Mar 26, 2024
@github-actions github-actions bot added modifies/frontend modifies/templates This PR modifies the template files modifies/js labels Mar 26, 2024
@GiteaBot GiteaBot added lgtm/need 1 This PR needs approval from one additional maintainer to be merged. and removed lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. labels Mar 26, 2024
@@ -331,6 +331,14 @@ export function initRepoIssueReferenceRepositorySearch() {
});
}

export function initRepoIssueTitleFocus() {
const issueTitle = document.getElementById('issue_title');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of hard-coding issue_title here, I would suggest to introduce a general CSS selector:

<input type="js-auto-focus-end ...">

Copy link
Member

@silverwind silverwind Mar 26, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if we could keep the DOM autofocus property, detect when it runs and then just set the cursor to the right position when a class like js-autofocus-end is present. That should in theory also work for content appended to DOM via JS, unlike a querySelector-based solution which wouldn't.

Copy link
Member

@silverwind silverwind Mar 26, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure if it's possible to detect autofocus in JS. One could install a focus event listener on document.body but the problem will be telling apart a autofocus from a regular user interaction.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah no I think trying to detect autofocus is a hopeless effort. Would suggest to follow @wxiaoguang and add this simple class that will manually focus the first matching element on page load.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated

Copy link
Contributor

@wxiaoguang wxiaoguang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

By using js-auto-focus-end, it works for more cases, and no need to hard depend the input id.

templates/repo/issue/new_form.tmpl Outdated Show resolved Hide resolved
web_src/js/features/repo-issue.js Outdated Show resolved Hide resolved
@silverwind
Copy link
Member

Call it js-autofocus-end. There is no - in the HTML prop.

@GiteaBot GiteaBot added lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. and removed lgtm/need 1 This PR needs approval from one additional maintainer to be merged. labels Mar 27, 2024
@lunny lunny added the reviewed/wait-merge This pull request is part of the merge queue. It will be merged soon. label Mar 27, 2024
@lunny lunny merged commit 1261dd6 into go-gitea:main Mar 27, 2024
26 checks passed
@GiteaBot GiteaBot added this to the 1.23.0 milestone Mar 27, 2024
@GiteaBot GiteaBot removed the reviewed/wait-merge This pull request is part of the merge queue. It will be merged soon. label Mar 27, 2024
@HEREYUA HEREYUA deleted the fix/modify_issue_title_focus branch March 27, 2024 09:00
silverwind added a commit to HEREYUA/gitea that referenced this pull request Mar 27, 2024
* main: (106 commits)
  Relax generic package filename restrictions (go-gitea#30135)
  Remove jQuery class from the common admin functions (go-gitea#30137)
  Remove jQuery class from the reaction selector (go-gitea#30138)
  Forbid jQuery `.attr` (go-gitea#30116)
  Refactor render (go-gitea#30136)
  Fix: Organization Interface Display Issue (go-gitea#30133)
  Remove jQuery `.attr` from the Fomantic dropdowns (go-gitea#30114)
  Remove jQuery `.attr` from the common admin functions (go-gitea#30115)
  Remove jQuery from the create/rename branch modals (except Fomantic) (go-gitea#30109)
  Remove fomantic label module (go-gitea#30081)
  Fix bug for markdown rendering of blockquote (go-gitea#30130)
  Fix: The interface is broken when modifying  code comments under mobile devices  (go-gitea#30125)
  When the title in the issue has a value, set the text cursor at the end of the text. (go-gitea#30090)
  Load attachments for code comments (go-gitea#30124)
  Upgrade fabric to 6.0.0-beta20 (go-gitea#30121)
  Fix click handler in job-step-summary (go-gitea#30122)
  Put an edit file button on pull request files to allow a quick operation (go-gitea#29697)
  Remove jQuery `.attr` from the Fomantic modal cancel buttons (go-gitea#30113)
  Remove jQuery `.attr` from the code comments (go-gitea#30112)
  Remove jQuery calls that have no effect on `showElem` and `hideElem` (go-gitea#30110)
  ...
silverwind added a commit to silverwind/gitea that referenced this pull request Mar 27, 2024
* origin/main: (108 commits)
  Fix table alignment classes (go-gitea#30144)
  Add default board to new projects, remove uncategorized pseudo-board (go-gitea#29874)
  Fix loading spinner on ContextPopup (go-gitea#30145)
  Fix download buttons on branches page (go-gitea#30147)
  Relax generic package filename restrictions (go-gitea#30135)
  Remove jQuery class from the common admin functions (go-gitea#30137)
  Remove jQuery class from the reaction selector (go-gitea#30138)
  Forbid jQuery `.attr` (go-gitea#30116)
  Refactor render (go-gitea#30136)
  Fix: Organization Interface Display Issue (go-gitea#30133)
  Remove jQuery `.attr` from the Fomantic dropdowns (go-gitea#30114)
  Remove jQuery `.attr` from the common admin functions (go-gitea#30115)
  Remove jQuery from the create/rename branch modals (except Fomantic) (go-gitea#30109)
  Remove fomantic label module (go-gitea#30081)
  Fix bug for markdown rendering of blockquote (go-gitea#30130)
  Fix: The interface is broken when modifying  code comments under mobile devices  (go-gitea#30125)
  When the title in the issue has a value, set the text cursor at the end of the text. (go-gitea#30090)
  Load attachments for code comments (go-gitea#30124)
  Upgrade fabric to 6.0.0-beta20 (go-gitea#30121)
  Fix click handler in job-step-summary (go-gitea#30122)
  ...
zjjhot added a commit to zjjhot/gitea that referenced this pull request Mar 28, 2024
* giteaofficial/main: (63 commits)
  Apply to become a maintainer (go-gitea#30151)
  Refactor markdown render (go-gitea#30139)
  Drag-and-drop improvements for projects and issue pins (go-gitea#29875)
  Fix table alignment classes (go-gitea#30144)
  Add default board to new projects, remove uncategorized pseudo-board (go-gitea#29874)
  Fix loading spinner on ContextPopup (go-gitea#30145)
  Fix download buttons on branches page (go-gitea#30147)
  Relax generic package filename restrictions (go-gitea#30135)
  Remove jQuery class from the common admin functions (go-gitea#30137)
  Remove jQuery class from the reaction selector (go-gitea#30138)
  Forbid jQuery `.attr` (go-gitea#30116)
  Refactor render (go-gitea#30136)
  Fix: Organization Interface Display Issue (go-gitea#30133)
  Remove jQuery `.attr` from the Fomantic dropdowns (go-gitea#30114)
  Remove jQuery `.attr` from the common admin functions (go-gitea#30115)
  Remove jQuery from the create/rename branch modals (except Fomantic) (go-gitea#30109)
  Remove fomantic label module (go-gitea#30081)
  Fix bug for markdown rendering of blockquote (go-gitea#30130)
  Fix: The interface is broken when modifying  code comments under mobile devices  (go-gitea#30125)
  When the title in the issue has a value, set the text cursor at the end of the text. (go-gitea#30090)
  ...

# Conflicts:
#	templates/user/dashboard/issues.tmpl
@techknowlogick techknowlogick modified the milestones: 1.23.0, 1.22.0 Mar 28, 2024
@go-gitea go-gitea locked as resolved and limited conversation to collaborators Jun 25, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. modifies/js modifies/templates This PR modifies the template files size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Place text cursor in title field in template based issue after specified default value
6 participants