forgejo/templates/shared
Danko Aleksejevs d483dc674a
Some checks are pending
/ release (push) Waiting to run
testing / test-e2e (push) Blocked by required conditions
testing / backend-checks (push) Waiting to run
testing / frontend-checks (push) Waiting to run
testing / test-unit (push) Blocked by required conditions
testing / test-remote-cacher (redis) (push) Blocked by required conditions
testing / test-remote-cacher (valkey) (push) Blocked by required conditions
testing / test-remote-cacher (garnet) (push) Blocked by required conditions
testing / test-remote-cacher (redict) (push) Blocked by required conditions
testing / test-mysql (push) Blocked by required conditions
testing / test-pgsql (push) Blocked by required conditions
testing / test-sqlite (push) Blocked by required conditions
testing / security-check (push) Blocked by required conditions
Reimplement editor Tab handling with accessibility safeguards (#6813)
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:
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>
2025-05-25 19:17:03 +02:00
..
actions Fix cannot delete runners via the modal dialog (#33895) 2025-04-01 02:28:02 +02:00
search feat(issue search): query string for boolean operators and phrase search (#6952) 2025-02-23 08:35:35 +00:00
secrets [PORT] Refactor DateUtils and merge TimeSince (gitea#32409) 2024-11-10 22:23:27 +01:00
user feat!: Abusive content reporting (#6977) 2025-05-18 08:05:16 +00:00
variables [PORT] Refactor DateUtils and merge TimeSince (gitea#32409) 2024-11-10 22:23:27 +01:00
webhook Added alt's to <img> 2025-01-31 21:22:00 +00:00
blocked_users_list.tmpl fix: use DateUtils for blocked users list 2024-12-30 10:58:24 +01:00
combomarkdowneditor.tmpl Reimplement editor Tab handling with accessibility safeguards (#6813) 2025-05-25 19:17:03 +02:00
issueicon.tmpl ui: update pull request icons (#4455) 2024-07-16 14:38:46 +00:00
issuelist.tmpl feat(ui): enlarge metadata line gaps in issue list and refactor (#7580) 2025-04-22 14:58:32 +00:00
label_filter.tmpl feat(issue search): query string for boolean operators and phrase search (#6952) 2025-02-23 08:35:35 +00:00
quota_overview.tmpl feat(ui): add quota overview (#6602) 2025-02-26 14:36:53 +00:00
repo_search.tmpl Migrate margin and padding helpers to tailwind (#30043) 2024-03-30 07:17:29 +01:00
searchbottom.tmpl [PORT] Refactor DateUtils and merge TimeSince (gitea#32409) 2024-11-10 22:23:27 +01:00
searchfile.tmpl Update module github.com/editorconfig-checker/editorconfig-checker/v2/cmd/editorconfig-checker to v3 2024-08-09 21:03:37 +02:00