My career: Edit and Delete as pencil and bin icons, with the entry in their names #1247

Open
opened 2026-11-13 10:31:58 +00:00 by tiagoagueda · 0 comments
Owner

What happens

On My career, each entry of every section (jobs, education, links, skills and the rest) ends with the words Edit and Delete as small text buttons beside the ↑ ↓ arrows. They are long in some languages (the Greek wrapping of #165 is the reason for the basis-48 workaround), and they differ from the rest of the application, where an edit is a pencil and a removal is a bin (the company page, the reminders, c-remove-button).

Where

src/postulo/templates/resume/overview.html, the row actions (resume:item_update and resume:item_delete links with {% translate "Edit" %} and {% translate "Delete" %}).

Expected

  • Edit becomes a pencil icon button, Delete a bin icon button in the destructive tone, both as data-size="icon-xs" ghost buttons with the 24 px target the application uses for icon buttons (WCAG 2.5.8), and the same icons as elsewhere (pencil, trash-2).
  • Each has an accessible name that says which entry: "Edit Software engineer at Acme", "Delete Software engineer at Acme", not "Edit" eleven times down one page, as c-remove-button does. A tooltip shows the same words.
  • Delete keeps its confirmation: it still goes to resume:item_delete (a confirmation page), unless the row's dialog pattern of c-remove-button is preferred; say which in the decision, but never delete on one click.
  • The two arrows (↑ ↓) are text characters; draw them as icons (chevron-up, chevron-down) in the same row so the four buttons match, keeping aria-labels and the disabled state on the first and last.
  • The row no longer needs the wide basis kept for long words, so the entry gets its space back in the languages where "Edit" and "Delete" were long. Check Greek, German, Finnish and Arabic (right-to-left mirrors) at 320 px.

Tests

The row has the two icon buttons with entry-specific names (and no visible "Edit" / "Delete" text); the links still point at the same routes; the first row's up and the last row's down stay disabled; axe and target-size walks pass in light and dark.

No new strings except the entry-specific names; those go through Weblate.

## What happens On My career, each entry of every section (jobs, education, links, skills and the rest) ends with the words **Edit** and **Delete** as small text buttons beside the `↑` `↓` arrows. They are long in some languages (the Greek wrapping of #165 is the reason for the `basis-48` workaround), and they differ from the rest of the application, where an edit is a pencil and a removal is a bin (the company page, the reminders, `c-remove-button`). ## Where `src/postulo/templates/resume/overview.html`, the row actions (`resume:item_update` and `resume:item_delete` links with `{% translate "Edit" %}` and `{% translate "Delete" %}`). ## Expected - **Edit** becomes a pencil icon button, **Delete** a bin icon button in the destructive tone, both as `data-size="icon-xs"` ghost buttons with the 24 px target the application uses for icon buttons (WCAG 2.5.8), and the same icons as elsewhere (`pencil`, `trash-2`). - Each has an **accessible name that says which entry**: "Edit Software engineer at Acme", "Delete Software engineer at Acme", not "Edit" eleven times down one page, as `c-remove-button` does. A tooltip shows the same words. - Delete keeps its confirmation: it still goes to `resume:item_delete` (a confirmation page), unless the row's dialog pattern of `c-remove-button` is preferred; say which in the decision, but never delete on one click. - The two arrows (`↑` `↓`) are text characters; draw them as icons (`chevron-up`, `chevron-down`) in the same row so the four buttons match, keeping `aria-label`s and the disabled state on the first and last. - The row no longer needs the wide basis kept for long words, so the entry gets its space back in the languages where "Edit" and "Delete" were long. Check Greek, German, Finnish and Arabic (right-to-left mirrors) at 320 px. ## Tests The row has the two icon buttons with entry-specific names (and no visible "Edit" / "Delete" text); the links still point at the same routes; the first row's up and the last row's down stay disabled; axe and target-size walks pass in light and dark. No new strings except the entry-specific names; those go through Weblate.
tiagoagueda added this to the 0.6.0 milestone 2026-11-13 10:31:58 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Postulo/postulo#1247
No description provided.