mirror of
https://github.com/go-vikunja/vikunja.git
synced 2026-07-31 10:47:57 -05:00
Duplicate Task Creation When Hitting Enter with Korean Input on Google Chrome #1987
Closed
opened 2026-03-22 13:49:33 -05:00 by GiteaMirror
·
8 comments
No Branch/Tag Specified
main
renovate/tiptap
fix-restore-dir-entries
renovate/postcss-8.x
renovate/github.com-danielgtaylor-huma-v2-2.x
renovate/node-24.x
renovate/aws-sdk-go-v2-monorepo
renovate/minimatch-10.x
renovate/major-dev-dependencies
renovate/actions-ai-inference-3.x
renovate/node
renovate/rollup-4.x
fix-multiline-add-task-order
gh-readonly-queue/main/pr-3363-654bb9493053299350c37d355cb426e045d72353
feat-project-templates
feat-soft-delete-projects
pr-swarm-assets
feat-run-as-user
fix-sr-findings
claude/task-event-field-changes-ws73g2
feat-mcp
feat-audit-sinks
claude/per-user-feature-toggles-vqlg8x
docs-v2-query-param
claude/veans-question-xBFkq
spike-huma-openapi3
claude/investigate-swagger3-support-nyyUa
feat-list-view-buckets
ci-mysql-8-test
codex/analyze-codebase-for-email-task-feature
csv-import-feature
claude/email-reply-comments-wpdcQ
fix-oidc-pkce-support
fix/overview-subtasks-expand
feat/bucket-select-task-detail
claude/review-bot-design-plan-cf5C3
claude/project-scoped-api-tokens-KTqR3
claude/explore-openclaw-integration-KQEzg
claude/project-scoped-api-tokens-yv5KS
fix-duplicate-close-button
feat-list-view-sorting
feat/official-vite-sentry-plugin
feat/highlight-overdue-tasks
feat/add-enter-key-form-submission-handling
feat/TipTap-nits
feat/update-caldavtimetotimestamp-parsing
feat-phosphor-icons
wip-plans
claude/investigate-issue-2173-llKme
fix-description-text-drag
feat-custom-keyboard-shortcuts
pr-1845-ci
codex/fix-drag-and-drop-behavior-inconsistency
copilot/add-clickable-labels-for-filtering
copilot/fix-issue-1786
playwright-migration
fix-kanban-repeating-wip
copilot/fix-1498
feature/replace-axios
codex/upgrade-to-tailwind-4.1.8-using-pnpm
codex/add-cypress-test-for-avatar-types
feature/biome
feature/oxc
codex/update-flexsearch-to-0.8.205
4r6ni9-codex/fix-deprecated-sass-@import-usage
codex/fix-deprecated-sass-@import-usage
codex/add-cypress-test-for-task-list-refresh-fix
codex/fix-quick-add-magic-not-adding-tasks
codex/fix-all-type-errors
codex/fix-mimetype-for-docs.json
feature/caldav-from-scratch
feature/gh-actions-hetzner
fix-ci
feat/new-logger
jyte-better-dev-config
feat/add-team-member-with-enter
fix/button-and-icon-types
fix/notifications-component-name-collision
feature/null-time
renovate/tailwindcss-4.x
feature/unplugin-vue-router
fix/deprecated-import
feature/zod-schema
renovate/golangci-golangci-lint-1.x
fix/tiptap-editor-reactive-destructuring
release/0.24
feat/improve-add-task
fix/saved-filter-search
feat/webp-and-avif-attachment-previews
feature/migrate-back-to-bulma
fix/sass-add-missing-list-import
feature/sticky-demo-bar
fix/gantt-view-switch
feature/typesense-position-join
feature/focus-visible
dependencies/golangci-lint
feature/better-filter-syntax
fix/tiptap-task-list
renovate/github.com-golang-jwt-jwt-v4-5.x
feature/hide-forbidden-related-tasks
renovate/golang-1.x
release/0.20
release/0.17
release/0.16
release/0.15
release/0.14
v2.4.0
v2.3.0
v2.2.2
v2.2.1
v2.2.0
v2.1.0
v2.0.0
v1.1.0
v1.0.0
v1.0.0-rc4
v1.0.0-rc3
v1.0.0-rc2
v1.0.0-rc1
v1.0.0-rc0
v0.24.6
v0.24.5
v0.24.4
v0.24.3
v0.24.2
v0.24.1
v0.24.0
v0.23.0
v0.22.1
v0.22.0
0.21.0
v0.21.0
v0.20.4
v0.20.5
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.2
v0.19.1
v0.19.0
vue3
v0.18.1
v0.18.0
v0.17.1
v0.17.0
v0.16.1
v0.16.0
v0.15.1
v0.15.0
v0.14.1
v0.14.0
v0.13.1
v0.13
v0.12
v0.11
v0.10
v0.9
v0.8
v0.7
v0.6
v0.5
v0.4
v0.3
v0.2
v0.1
Labels
Clear labels
area/api
area/attachments
area/auth
area/avatars
area/backup-restore
area/caldav
area/calendar-view
area/comments
area/config
area/database
area/desktop
area/docker
area/email
area/favorites
area/filters
area/frontend
area/gantt
area/i18n
area/import-export
area/internal-code
area/kanban
area/labels
area/list-view
area/mobile
area/notifications
area/permissions
area/projects
area/pwa
area/recurring-tasks
area/reminders
area/search
area/shortcuts
area/subtasks
area/sync
area/table-view
area/task-editor
area/task-metadata
area/task-relations
area/teams
area/theming
area/time-tracking
area/typesense
area/views
area/webhooks
bug
changes requested
concern/accessibility
concern/performance
concern/regression
concern/ux
confirmed
db/mysql
dependencies
enhancement
good first issue
help wanted
integration/inbound
integration/outbound
kind/bug
kind/feature
needs reproduction
pull-request
question
security
support
upstream issue
waiting for reply
wontfix
Mirrored from GitHub Pull Request
No labels
Milestone
No items
No Milestone
Projects
Clear projects
No projects
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/vikunja#1987
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Originally created by @uyu423 on GitHub (Aug 1, 2024).
Description
Hello.
I am a user from South Korea.
When creating a task using Korean input and hitting enter, the task gets created multiple times.
This issue might also occur with other input methods similar to Korean, such as Chinese and Japanese.
However, moving the cursor more than once or using the "ADD" button to create the task does not result in this issue.
Testing in Safari browser showed normal behavior without any issues.
I am attaching a screenshot for reference.
ps) When a task is duplicated, one is created exactly as entered, and the other is created with the last character omitted.
Thank you.
Test:
Input Korean Text (title: "한글이 두번 입력되는 이슈 테스트")

Duplicate creation HTTP request


Result

Vikunja Version
v0.24.1
Browser and version
Google Chrome 127.0.6533.73 (arm64)
Can you reproduce the bug on the Vikunja demo site?
Yes
Screenshots
No response
@dpschen commented on GitHub (Aug 7, 2024):
Unsure where this is originated.
Could this be an issue with text segmentation? If so Intl.Segmenter might help. Aka use
Intl.Segmenterinstead ofsplit(' ').@kolaente commented on GitHub (Aug 7, 2024):
I was unable to reproduce this when copying the Korean text from the original comment into the task input and pressing enter. This may indicate the bug has something to do with the keyboard layout, not necessarily with Korean letters.
@dpschen maybe we should add that and check if the issue is gone after that?
@dpschen commented on GitHub (Aug 7, 2024):
I was able to reproduce.
It did work in the overview. But in a project list view you will end up with two tasks.
@uyu423 commented on GitHub (Aug 8, 2024):
Thank you for your passionate technical support.
The way to reproduce @kolaente 's issue is probably because the copied text is in a different cursor activation state. I guess the issue is reproduced only when directly inputting.
@dpschen In my case, it is reproduced in both the overview and project list views.
Is there anything you can check to help me with this issue? If you tell me where to set the debug point and create the task, I can check it ! (although my knowledge of the frontend is limited)
@kolaente commented on GitHub (Aug 12, 2024):
My best guess right now is this has something to do with the multiline input (you can enter multiple lines of text and it will create a task for each line). If that's the case, using Intl.Segmenter as suggested by dpschen should fix it. I'll take a look.
@kolaente commented on GitHub (Aug 12, 2024):
Here's where we split:
https://github.com/go-vikunja/vikunja/blob/main/frontend/src/helpers/parseSubtasksViaIndention.ts#L21
It looks like that should work since
\r\nis the same regardless of the input text language.AFAIK to properly use
Intl.Segmenterwe'd need to detect the language of the input, which isn't really possible that easily (and overkill for the problem at hand).@dpschen do you have an idea how to debug this further?
@dpschen commented on GitHub (Aug 12, 2024):
Maybe try out the following: assume the written text is in the users language (even if that’s not the case). For segmentation the result might still be better than splitting by space. Eg. afaik emojis shouldn’t make problems.
If it doesn’t solve the problem I would reverse it.
@kolaente commented on GitHub (Jun 24, 2025):
I'm closing this since we can't really reproduce it. Please ping if you can provide us with a way to reproduce it reliably.