forgejo/web_src/js/features
Danko Aleksejevs 39e6785da0 fix(ui): erroneous list continuation on Cmd+Enter on macOS (#8153) (#8170)
The line continuation code in the Markdown editor ignored Enter presses if Ctrl, Alt or Shift were being held. This now also accounts for Cmd on macOS (which browsers represent as metaKey).

### Tests

- Use Safari (on macOS)
- create a new issue in a repository
- start writing a list (with - one[enter]- two)
- now press Cmd+Enter
- verify that while the form is being submitted, no new line got visually added

***

The visual evidence of this bug is a race condition (form is being edited while also being submitted) and I don't think a reliable cross-browser E2E test is possible.

Bugged and fixed behavior verified manually on an actual Macbook in current Safari. Specifically,

* Before the fix: pressing Cmd+Enter submits the form *and* inserts a newline + list prefix in the markdown editor.  Reporter had the changed content submitted, I only saw it submit the original (but the change was visible during submission).
* After the fix: Cmd+Enter only submits the form. Enter with no modifiers inserts newlines/prefixes as before.

### Documentation

- [ ] I created a pull request [to the documentation](https://codeberg.org/forgejo/docs) to explain to Forgejo users how to use this change.
- [x] I did not document these changes and I do not expect someone else to do it.

### Release notes

- [ ] I do not want this change to show in the release notes.
- [x] I want the title to show in the release notes with a link to this pull request.
- [ ] I want the content of the `release-notes/<pull request number>.md` to be be used for the release notes instead of the title.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8170
Reviewed-by: Beowulf <beowulf@beocode.eu>
Co-authored-by: Danko Aleksejevs <danko@very.lv>
Co-committed-by: Danko Aleksejevs <danko@very.lv>
2025-06-23 15:21:15 +02:00
..
admin fix(ui): only run auth_name code on new and edit page (#7470) 2025-04-06 12:25:29 +00:00
comp fix(ui): erroneous list continuation on Cmd+Enter on macOS (#8153) (#8170) 2025-06-23 15:21:15 +02:00
autofocus-end.js When the title in the issue has a value, set the text cursor at the end of the text. (#30090) 2024-03-30 07:17:31 +01:00
captcha.js Enforce trailing comma in JS on multiline (#30002) 2024-03-26 19:04:27 +01:00
citation.js Remove APA as cite format 2024-07-20 15:48:57 +02:00
clipboard.js Fix Citation modal responsiveness and clipboard copy (#29799) 2024-03-20 08:46:29 +01:00
code-frequency.js Enforce trailing comma in JS on multiline (#30002) 2024-03-26 19:04:27 +01:00
codeeditor.js Remove obsolete monaco workaround (#30893) 2024-05-12 20:03:10 +02:00
colorpicker.js Replace coloris with vanilla-colorful (#30201) 2024-04-07 15:40:31 +02:00
common-global.js chore: enable no-jquery/no-trigger 2025-04-01 04:43:06 +02:00
common-issue-list.js Remove jQuery from the issue "go to" button (#30028) 2024-03-26 19:04:27 +01:00
common-issue-list.test.js Use vitest globals (#27102) 2023-09-27 04:37:13 +00:00
common-organization.js Fix initCompLabelEdit not being called (#29198) 2024-02-17 23:24:31 +01:00
contextpopup.js Enforce trailing comma in JS on multiline (#30002) 2024-03-26 19:04:27 +01:00
contributors.js Add "n commits" link to contributors in contributors graph page (#32799) 2024-12-15 13:21:02 +01:00
copycontent.js Remove fomantic input module (#30194) 2024-04-07 15:40:31 +02:00
dropzone.js JS refactors (#22227) 2022-12-24 00:03:11 +08:00
emoji.js Update JS and PY dependencies (#27501) 2023-10-08 00:16:20 +00:00
eventsource.sharedworker.js chore: add new lint rules 2024-10-23 08:10:18 +02:00
file-fold.js Update JS dependencies (#27922) 2023-11-06 21:14:32 +00:00
heatmap.js Fix heatmap localization 2024-03-20 08:20:08 +01:00
imagediff.js Refactor imagediff and fix regression bug (#30694) 2024-04-28 15:39:01 +02:00
install.js [CHORE] Remove Microsoft SQL Server Support 2024-04-05 23:37:36 +02:00
notification.js Remove jQuery class from the notification count (#30172) 2024-04-07 15:40:31 +02:00
org-team.js chore: enable no-jquery/no-each-util 2025-04-01 03:59:12 +02:00
pull-view-file.js Fix counter display number incorrectly displayed on the page (#29448) 2024-03-06 12:10:44 +08:00
recent-commits.js Enforce trailing comma in JS on multiline (#30002) 2024-03-26 19:04:27 +01:00
repo-branch.js Remove jQuery from the create/rename branch modals (except Fomantic) (#30109) 2024-03-30 07:17:31 +01:00
repo-code.js chore: enable no-jquery/no-trigger 2025-04-01 04:43:06 +02:00
repo-code.test.js Use vitest globals (#27102) 2023-09-27 04:37:13 +00:00
repo-commit.js ui: improve git notes 2024-11-19 10:27:57 +05:00
repo-common.js fix(ui): make tag dropdown clickable again (#7558) 2025-04-16 12:28:39 +00:00
repo-diff-commit.js Migrate margin and padding helpers to tailwind (#30043) 2024-03-30 07:17:29 +01:00
repo-diff-commitselect.js Add commits dropdown in PR files view and allow commit by commit review (#25528) 2023-07-28 21:18:12 +02:00
repo-diff-filetree.js Remove DiffFileList component 2025-01-19 18:56:18 +01:00
repo-diff.js Remove DiffFileList component 2025-01-19 18:56:18 +01:00
repo-editor.js chore: enable no-jquery/no-trigger 2025-04-01 04:43:06 +02:00
repo-findfile.js Refactor all .length === 0 patterns in JS (#30045) 2024-03-30 07:17:30 +01:00
repo-findfile.test.js Use vitest globals (#27102) 2023-09-27 04:37:13 +00:00
repo-graph.js fix branch selector in commit graph 2024-07-07 20:26:30 +02:00
repo-home.js Add null check for responseData.invalidTopics (#32212) 2024-10-13 08:06:49 +03:00
repo-issue-content.js Remove jQuery class from the comment edit history (#30186) 2024-04-07 15:40:31 +02:00
repo-issue-list.js Make a distinction between active and selected in the issue author dropdown (#30207) 2024-04-07 15:40:31 +02:00
repo-issue-pr-form.js JS refactors (#22227) 2022-12-24 00:03:11 +08:00
repo-issue-pr-status.js Fix the overflow style for "Hide all checks" (#27932) 2023-11-07 18:53:35 +00:00
repo-issue.js chore: enable no-jquery/no-trigger 2025-04-01 04:43:06 +02:00
repo-issue.test.js feat(ui): add more emoji and code block rendering in issues 2024-09-24 14:20:33 +02:00
repo-legacy.js fix: quote reply in Chromium (#7883) 2025-05-16 18:43:32 +00:00
repo-migrate.js fix(ui): prevent exceptions on other users' repo migration pages 2024-08-21 19:57:08 +00:00
repo-migration.js fix: ignore trailing slash for autogenerated name (#7307) 2025-03-29 19:35:01 +00:00
repo-milestone.js feat: use combo markdown editor for milestone description 2024-10-22 19:58:44 +02:00
repo-projects.js Fix various problems around projects board view (#30696) 2024-05-12 20:03:10 +02:00
repo-release.js fix(ui): release: set default release title to tag name (#6883) 2025-02-23 08:30:39 +00:00
repo-search.js Filter Repositories by type (#29231) 2024-03-06 12:10:46 +08:00
repo-settings.js chore: enable no-jquery/no-each-util 2025-04-01 03:59:12 +02:00
repo-template.js chore: enable no-jquery/no-each-util 2025-04-01 03:59:12 +02:00
repo-unicode-escape.js Render inline file permalinks 2024-03-15 14:00:34 +01:00
repo-wiki.js Enforce trailing comma in JS on multiline (#30002) 2024-03-26 19:04:27 +01:00
sshkey-helper.js Remove jQuery from SSH key form parser (#29193) 2024-02-17 23:24:31 +01:00
stopwatch.js Remove jQuery from the stopwatch (#29351) 2024-02-26 22:30:26 +01:00
tablesort.js JS refactors (#22227) 2022-12-24 00:03:11 +08:00
tribute.js Migrate margin and padding helpers to tailwind (#30043) 2024-03-30 07:17:29 +01:00
user-auth-webauthn.js Enforce trailing comma in JS on multiline (#30002) 2024-03-26 19:04:27 +01:00
user-auth.js feat: improve incorrect ROOT_URL warning (#7103) 2025-03-03 18:05:01 +00:00