[PR #1152] [MERGED] feat: rtl layout support for Arabic and Hebrew languages #1280

Closed
opened 2025-11-01 21:14:55 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/go-vikunja/vikunja/pull/1152
Author: @kolaente
Created: 7/21/2025
Status: Merged
Merged: 8/3/2025
Merged by: @kolaente

Base: mainHead: feature/rtl


📝 Commits (10+)

  • 2eef1c3 feat(rtl): basic rtl layout for rtl languages
  • 71a69bd fix: convert all css properties to logical
  • 247ad38 feat: add logical utils
  • 97b4677 fix(rtl): make header work
  • 9a0a635 fix(rtl): don't convert logical properties to absolute
  • 2e2bd9d fix: make sure task text items are flex
  • 729122b feat(rtl): mirror task description icon
  • 94acf4d feat: replace absolute left position with inset-inline-start
  • 931457b feat: replace border-top with logical properties
  • b518b19 feat: replace border-bottom with logical properties

📊 Changes

124 files changed (+658 additions, -524 deletions)

View changed files

📝 frontend/src/components/base/BasePagination.vue (+2 -2)
📝 frontend/src/components/base/Expandable.vue (+1 -1)
📝 frontend/src/components/date/DatepickerWithRange.vue (+4 -4)
📝 frontend/src/components/date/DatepickerWithValues.vue (+4 -4)
📝 frontend/src/components/home/AddToHomeScreen.vue (+2 -2)
📝 frontend/src/components/home/AppHeader.vue (+23 -13)
📝 frontend/src/components/home/ContentAuth.vue (+13 -13)
📝 frontend/src/components/home/ContentLinkShare.vue (+1 -1)
📝 frontend/src/components/home/DemoMode.vue (+3 -3)
📝 frontend/src/components/home/ImportHint.vue (+1 -1)
📝 frontend/src/components/home/MenuButton.vue (+3 -3)
📝 frontend/src/components/home/Navigation.vue (+17 -11)
📝 frontend/src/components/home/PoweredByLink.vue (+2 -2)
📝 frontend/src/components/home/ProjectsNavigationItem.vue (+1 -1)
📝 frontend/src/components/home/UpdateNotification.vue (+1 -1)
📝 frontend/src/components/input/AutocompleteDropdown.vue (+3 -3)
📝 frontend/src/components/input/Button.vue (+17 -2)
📝 frontend/src/components/input/ColorPicker.vue (+1 -1)
📝 frontend/src/components/input/DatepickerInline.vue (+1 -1)
📝 frontend/src/components/input/FancyCheckbox.vue (+3 -3)

...and 80 more files

📄 Description

This PR adds support for rtl layout in Arabic and Hebrew languages. The goal here is to get something working good enough quickly because this change touches a lot of files, causing many merge conflicts with other changes.

Things left to do:

  • mirror the text icon in task (for the description)
  • Fix rtl spacing in some cases (see comment below)
  • Are there equivalents for left/right css properties we could use?
  • keyboard shortcuts modal looks not quite right (and maybe others too?)
  • Fix the user menu
  • Form spacing
  • has-icon-left et al
  • icon buttons (at least on the task detail page)
  • task input: icon and spacing

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/go-vikunja/vikunja/pull/1152 **Author:** [@kolaente](https://github.com/kolaente) **Created:** 7/21/2025 **Status:** ✅ Merged **Merged:** 8/3/2025 **Merged by:** [@kolaente](https://github.com/kolaente) **Base:** `main` ← **Head:** `feature/rtl` --- ### 📝 Commits (10+) - [`2eef1c3`](https://github.com/go-vikunja/vikunja/commit/2eef1c327b9f45125ae0ad4dde8b3e080259886b) feat(rtl): basic rtl layout for rtl languages - [`71a69bd`](https://github.com/go-vikunja/vikunja/commit/71a69bd261838cfe3e2713f0a9fb06e46ec84505) fix: convert all css properties to logical - [`247ad38`](https://github.com/go-vikunja/vikunja/commit/247ad382928e74f4f608dc4a099235d45818cee2) feat: add logical utils - [`97b4677`](https://github.com/go-vikunja/vikunja/commit/97b46771d143ee31b56d087cd97d51050dafbbab) fix(rtl): make header work - [`9a0a635`](https://github.com/go-vikunja/vikunja/commit/9a0a63511b5ec459dce6701716ca98e0fe71726c) fix(rtl): don't convert logical properties to absolute - [`2e2bd9d`](https://github.com/go-vikunja/vikunja/commit/2e2bd9dbe5cc580b7863ec1f80f1fbd14c12b30e) fix: make sure task text items are flex - [`729122b`](https://github.com/go-vikunja/vikunja/commit/729122b70a82e62dddf8fc57787a8cab6c6a78ae) feat(rtl): mirror task description icon - [`94acf4d`](https://github.com/go-vikunja/vikunja/commit/94acf4d8ddb6e18b1dec9cdd81f9c05c46069482) feat: replace absolute left position with inset-inline-start - [`931457b`](https://github.com/go-vikunja/vikunja/commit/931457b18dfc0ef27c4234d64ba0666b2dc8304d) feat: replace border-top with logical properties - [`b518b19`](https://github.com/go-vikunja/vikunja/commit/b518b199f4d44c2cd00b80fcff343bc19360aa37) feat: replace border-bottom with logical properties ### 📊 Changes **124 files changed** (+658 additions, -524 deletions) <details> <summary>View changed files</summary> 📝 `frontend/src/components/base/BasePagination.vue` (+2 -2) 📝 `frontend/src/components/base/Expandable.vue` (+1 -1) 📝 `frontend/src/components/date/DatepickerWithRange.vue` (+4 -4) 📝 `frontend/src/components/date/DatepickerWithValues.vue` (+4 -4) 📝 `frontend/src/components/home/AddToHomeScreen.vue` (+2 -2) 📝 `frontend/src/components/home/AppHeader.vue` (+23 -13) 📝 `frontend/src/components/home/ContentAuth.vue` (+13 -13) 📝 `frontend/src/components/home/ContentLinkShare.vue` (+1 -1) 📝 `frontend/src/components/home/DemoMode.vue` (+3 -3) 📝 `frontend/src/components/home/ImportHint.vue` (+1 -1) 📝 `frontend/src/components/home/MenuButton.vue` (+3 -3) 📝 `frontend/src/components/home/Navigation.vue` (+17 -11) 📝 `frontend/src/components/home/PoweredByLink.vue` (+2 -2) 📝 `frontend/src/components/home/ProjectsNavigationItem.vue` (+1 -1) 📝 `frontend/src/components/home/UpdateNotification.vue` (+1 -1) 📝 `frontend/src/components/input/AutocompleteDropdown.vue` (+3 -3) 📝 `frontend/src/components/input/Button.vue` (+17 -2) 📝 `frontend/src/components/input/ColorPicker.vue` (+1 -1) 📝 `frontend/src/components/input/DatepickerInline.vue` (+1 -1) 📝 `frontend/src/components/input/FancyCheckbox.vue` (+3 -3) _...and 80 more files_ </details> ### 📄 Description This PR adds support for rtl layout in Arabic and Hebrew languages. The goal here is to get something working good enough quickly because this change touches a lot of files, causing many merge conflicts with other changes. Things left to do: - [x] mirror the text icon in task (for the description) - [x] Fix rtl spacing in some cases (see comment below) - [x] Are there equivalents for `left`/`right` css properties we could use? - [x] keyboard shortcuts modal looks not quite right (and maybe others too?) - [x] Fix the user menu - [x] Form spacing - [x] `has-icon-left` et al - [x] icon buttons (at least on the task detail page) - [x] task input: icon and spacing --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2025-11-01 21:14:55 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/vikunja#1280