Listings: Columns and Views beside Apply, at the end of the row, only with a table #840

Closed
opened 2026-10-10 15:50:11 +00:00 by tiagoagueda · 1 comment
Owner

Move “Columns” and “Views” down into the row with “Apply”, aligned to the end, and show them only when a table is drawn.

What exists today

  • They sit in the title row beside the Capture and Add buttons (templates/jobs/listing_list.html:90-97), shown whenever has_listings — any listing in any tab (listing_views.py:130-134), so an empty tab such as Discarded still shows them above no table.
  • The filter form (:175-191, #listing-filters, max-md:hidden) holds hidden inputs, Apply and Clear; the column filters are in the table header, and phones use Narrow (#622).
  • The table is drawn when listings or table.filters_active and has_listings (:47), the empty state otherwise.
  • Columns and Views each hold their own POST forms (partials/table/columns.html:9, partials/table/views.html:94,110,134), so they cannot go inside the filter form.

What would change

  • A flex row holding the filter form and, at its end (ms-auto), Columns and Views, gated on the table's own condition.

Decisions

  • Updating with the table. htmx swaps only #listings-table; a filter that empties the table would leave Columns and Views shown until a reload. Recommended: render them in the swapped partial.
  • Phones. The filter form is hidden below md; recommended: Columns and Views follow the Narrow control there.
  • Applications and Companies draw the same controls in the title row; recommended: the same change for both, in this issue or right after.

Checked against main at 8c3d03570. From the maintainer's improvements list of 2026-10-07.

Move “Columns” and “Views” down into the row with “Apply”, aligned to the end, and show them only when a table is drawn. ## What exists today - They sit in the title row beside the Capture and Add buttons (`templates/jobs/listing_list.html:90-97`), shown whenever `has_listings` — any listing in any tab (`listing_views.py:130-134`), so an empty tab such as Discarded still shows them above no table. - The filter form (`:175-191`, `#listing-filters`, `max-md:hidden`) holds hidden inputs, **Apply** and **Clear**; the column filters are in the table header, and phones use *Narrow* (#622). - The table is drawn when `listings or table.filters_active and has_listings` (`:47`), the empty state otherwise. - Columns and Views each hold their own POST forms (`partials/table/columns.html:9`, `partials/table/views.html:94,110,134`), so they cannot go **inside** the filter form. ## What would change - A flex row holding the filter form and, at its end (`ms-auto`), Columns and Views, gated on the table's own condition. ## Decisions - **Updating with the table.** htmx swaps only `#listings-table`; a filter that empties the table would leave Columns and Views shown until a reload. Recommended: render them in the swapped partial. - **Phones.** The filter form is hidden below `md`; recommended: Columns and Views follow the *Narrow* control there. - **Applications and Companies** draw the same controls in the title row; recommended: the same change for both, in this issue or right after. Checked against `main` at `8c3d03570`. From the maintainer's improvements list of 2026-10-07.
tiagoagueda added this to the 0.6.0 milestone 2026-10-10 15:50:11 +00:00
Author
Owner

Fixed in 1fed3f923 on main.

Fixed in 1fed3f923 on main.
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#840
No description provided.