mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-11-07 01:41:05 +00:00
The primary goal is to balance having the editor work as expected by developers (with Tab key affecting indentation) while also not impeding keyboard navigation. * Tab indents, Shift+Tab unindents, but only when that indent would be valid. E.g. moving existing list items down or up one level. * Indenting a selection always works. * When an "invalid" indent is attempted, nothing happens and a toast is shown with a hint to press again to leave the editor. * Attempting the same action again allows the textarea lose focus by allowing the browser's default key handler. * Pressing Esc also loses focus immediately. * No tab handling happens until the text editor has been interacted with (other than just having been focused). * Changing indentation in block quotes adds or removes quote levels instead. Screenshot of the toast being shown: https://codeberg.org/forgejo/forgejo/attachments/a6287d29-4ce0-4977-aae8-ef1aff2ac89f Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/6813 Reviewed-by: Otto <otto@codeberg.org> Reviewed-by: 0ko <0ko@noreply.codeberg.org> Co-authored-by: Danko Aleksejevs <danko@very.lv> Co-committed-by: Danko Aleksejevs <danko@very.lv> |
||
|---|---|---|
| .. | ||
| admin | ||
| comp | ||
| autofocus-end.js | ||
| captcha.js | ||
| citation.js | ||
| clipboard.js | ||
| code-frequency.js | ||
| codeeditor.js | ||
| colorpicker.js | ||
| common-global.js | ||
| common-issue-list.js | ||
| common-issue-list.test.js | ||
| common-organization.js | ||
| contextpopup.js | ||
| contributors.js | ||
| copycontent.js | ||
| dropzone.js | ||
| emoji.js | ||
| eventsource.sharedworker.js | ||
| file-fold.js | ||
| heatmap.js | ||
| imagediff.js | ||
| install.js | ||
| notification.js | ||
| org-team.js | ||
| pull-view-file.js | ||
| recent-commits.js | ||
| repo-branch.js | ||
| repo-code.js | ||
| repo-code.test.js | ||
| repo-commit.js | ||
| repo-common.js | ||
| repo-diff-commit.js | ||
| repo-diff-commitselect.js | ||
| repo-diff-filetree.js | ||
| repo-diff.js | ||
| repo-editor.js | ||
| repo-findfile.js | ||
| repo-findfile.test.js | ||
| repo-graph.js | ||
| repo-home.js | ||
| repo-issue-content.js | ||
| repo-issue-list.js | ||
| repo-issue-pr-form.js | ||
| repo-issue-pr-status.js | ||
| repo-issue.js | ||
| repo-issue.test.js | ||
| repo-legacy.js | ||
| repo-migrate.js | ||
| repo-migration.js | ||
| repo-milestone.js | ||
| repo-projects.js | ||
| repo-release.js | ||
| repo-search.js | ||
| repo-settings.js | ||
| repo-template.js | ||
| repo-unicode-escape.js | ||
| repo-wiki.js | ||
| sshkey-helper.js | ||
| stopwatch.js | ||
| tablesort.js | ||
| tribute.js | ||
| user-auth-webauthn.js | ||
| user-auth.js | ||