Skip to content

[#70778] Primerize Backlogs Project Settings#21822

Merged
HDinger merged 1 commit intodevfrom
feature/70778-primerize-backlogs-project-settings
Mar 10, 2026
Merged

[#70778] Primerize Backlogs Project Settings#21822
HDinger merged 1 commit intodevfrom
feature/70778-primerize-backlogs-project-settings

Conversation

@myabc
Copy link
Contributor

@myabc myabc commented Jan 30, 2026

Ticket

https://community.openproject.org/work_packages/70778

What are you trying to accomplish?

Updates the design of Backlogs Project Settings.

  • Changes the page header text to "Backlogs" for consistency with other pages.
  • Moves "Rebuild positions" under the page's action menu.
  • Renders Definition of Done options as an autocompleter.

(out-of-scope for #21723)

Screenshots

Before After
Screenshot 2026-01-30 at 09 16 46 image

What approach did you choose and why?

Merge checklist

  • Added/updated tests
  • Added/updated documentation in Lookbook (patterns, previews, etc)
  • Tested major browsers (Chrome, Firefox, Edge, ...)

@myabc myabc marked this pull request as ready for review January 30, 2026 12:23
Copilot AI review requested due to automatic review settings January 30, 2026 12:23
@github-actions
Copy link

github-actions bot commented Jan 30, 2026

Caution

The provided work package version does not match the core version

Details:

Please make sure that:

  • The work package version OR your pull request target branch is correct

Copy link
Contributor

@HDinger HDinger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We discussed this week, that the SelectPanel is not a component we want to use in normal forms as the button as form element, is visually weird. Instead, we afterwards decided to use the normal autocompleter for cases like this

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the Backlogs project settings page UI to align with Primerized OpenProject patterns and improve consistency with other settings pages.

Changes:

  • Renames the page header/breadcrumb title to “Backlogs” and moves “Rebuild positions” into the PageHeader action menu.
  • Replaces the status “Definition of Done” checkbox table with a Primer SelectPanel-based form.
  • Adds supporting i18n strings for SelectPanel titles/captions/dynamic labels.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.

File Description
modules/backlogs/config/locales/en.yml Adds new translations for the Definition of Done caption and SelectPanel labels.
modules/backlogs/app/views/projects/settings/backlogs/show.html.erb Primerizes the page header/actions and swaps the legacy checkbox table for a Primer form + ApplicationForm component.
modules/backlogs/app/forms/projects/settings/backlogs_settings_form.rb Introduces an ApplicationForm rendering the Definition of Done SelectPanel and submit button.
modules/backlogs/app/controllers/projects/settings/backlogs_controller.rb Simplifies update logic to mass-assign done_status_ids via expected params.

menu_arguments: { anchor_align: :end },
button_arguments: {
icon: :"kebab-horizontal",
aria: { label: t(:label_more) }
Copy link

Copilot AI Jan 30, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

button_arguments uses aria: { label: ... }, but other Primer::OpenProject::PageHeader#with_action_menu usages pass the attribute as "aria-label": ... (e.g., app/views/projects/settings/versions/show.html.erb:43-46). Using the nested aria hash here may not set the aria-label attribute on the kebab button, which would hurt accessibility and can break consistency with the component API.

Suggested change
aria: { label: t(:label_more) }
"aria-label": t(:label_more)

Copilot uses AI. Check for mistakes.
@myabc myabc force-pushed the feature/70778-primerize-backlogs-project-settings branch 2 times, most recently from de61052 to 3d6079f Compare March 3, 2026 15:48
@myabc myabc requested a review from HDinger March 3, 2026 16:37
@myabc myabc added feature styling javascript Pull requests that update Javascript code ruby Pull requests that update Ruby code needs review labels Mar 8, 2026
@myabc myabc force-pushed the feature/70778-primerize-backlogs-project-settings branch from 3d6079f to 2ec380f Compare March 9, 2026 17:46
Copy link
Contributor

@HDinger HDinger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks so much better than before. 👍 I only have one minor remark

Copy link
Contributor

@HDinger HDinger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The menu is a bit too much since it only has one entry. So I suggest to change that to a standalone button with leading icon and text

Ah I see why you did this.. The automatic form generation to post to the rebuild position endpoint.. Fine for me then 👍

@HDinger HDinger merged commit 4a2f913 into dev Mar 10, 2026
17 of 18 checks passed
@HDinger HDinger deleted the feature/70778-primerize-backlogs-project-settings branch March 10, 2026 14:32
@github-actions github-actions bot locked and limited conversation to collaborators Mar 10, 2026
@HDinger HDinger added this to the 17.3.x milestone Mar 10, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

feature javascript Pull requests that update Javascript code needs review ruby Pull requests that update Ruby code styling

Development

Successfully merging this pull request may close these issues.

3 participants