From 1487f2bd26b2d59baee6274ae38c5d3128004506 Mon Sep 17 00:00:00 2001 From: petzbloom-sudo Date: Fri, 12 Dec 2025 16:43:43 +0000 Subject: [PATCH 01/43] Update _card.json.jbuilder Jbuilder: Include assignees in card data --- app/views/cards/_card.json.jbuilder | 1 + 1 file changed, 1 insertion(+) diff --git a/app/views/cards/_card.json.jbuilder b/app/views/cards/_card.json.jbuilder index a1c509a66..69833cc22 100644 --- a/app/views/cards/_card.json.jbuilder +++ b/app/views/cards/_card.json.jbuilder @@ -15,6 +15,7 @@ json.cache! card do json.board card.board, partial: "boards/board", as: :board json.column card.column, partial: "columns/column", as: :column if card.column json.creator card.creator, partial: "users/user", as: :user + json.assignees card.assignees, partial: "users/user", as: :user json.comments_url card_comments_url(card) end From e23b8711723898c829b4f72367835affa9b74aae Mon Sep 17 00:00:00 2001 From: Italo Matos Date: Tue, 16 Dec 2025 12:25:25 -0300 Subject: [PATCH 02/43] Fix: Maintain search input focus after form submission Problem: When pressing Enter in the search input field, focus was lost after the form was submitted and the Turbo Frame updated with search results. This forced users to click back into the field to continue interacting with the search. Solution: Added a turbo:frame-load event listener in the bar controller's showModalAndSubmit method that automatically restores focus to the search input after the Turbo Frame finishes loading the results. The listener uses {once: true} to auto-cleanup after execution. --- app/javascript/controllers/bar_controller.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/javascript/controllers/bar_controller.js b/app/javascript/controllers/bar_controller.js index 5e72e4e07..522e3eee3 100644 --- a/app/javascript/controllers/bar_controller.js +++ b/app/javascript/controllers/bar_controller.js @@ -34,6 +34,11 @@ export default class extends Controller { showModalAndSubmit(event) { this.showModal() this.formTarget.requestSubmit() + + // Restore focus to search input after turbo frame loads + this.turboFrameTarget.addEventListener("turbo:frame-load", () => { + this.searchInputTarget.focus() + }, { once: true }) } showModal() { From a936bc1c47fc121c10609d6391e73cf6b7de1f2f Mon Sep 17 00:00:00 2001 From: Adrien Maston Date: Wed, 17 Dec 2025 10:22:41 +0100 Subject: [PATCH 03/43] Make icon buttons bigger --- app/assets/stylesheets/buttons.css | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/app/assets/stylesheets/buttons.css b/app/assets/stylesheets/buttons.css index 4ee5f199e..64ea77611 100644 --- a/app/assets/stylesheets/buttons.css +++ b/app/assets/stylesheets/buttons.css @@ -107,13 +107,22 @@ > * { grid-area: 1/1; } + + @media (max-width: 639px) { + --btn-size: 3em; + --icon-size: 70%; + } } /* Make a normal button circular on mobile */ @media (max-width: 639px) { .btn--circle-mobile { + --btn-size: 3em; + --btn-padding: 0; + --icon-size: 70%; + aspect-ratio: 1; - padding: 0.5em; + inline-size: var(--btn-size); kbd, span:last-of-type { @@ -270,4 +279,3 @@ } } } - From 3c9c4cafea1dd5637e272ad4e85639d446811289 Mon Sep 17 00:00:00 2001 From: Adrien Maston Date: Wed, 17 Dec 2025 10:39:21 +0100 Subject: [PATCH 04/43] Use buttons above title layout --- app/assets/stylesheets/header.css | 10 ++++------ app/views/events/index.html.erb | 2 +- app/views/layouts/application.html.erb | 2 +- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/app/assets/stylesheets/header.css b/app/assets/stylesheets/header.css index 21553e358..a3b90ac4f 100644 --- a/app/assets/stylesheets/header.css +++ b/app/assets/stylesheets/header.css @@ -116,17 +116,15 @@ /* Optional class to stack header actions on small screens /* ------------------------------------------------------------------------ */ - /* .header--mobile-actions-stack { + .header--mobile-actions-stack { @media (max-width: 639px) { - grid-template-columns: 1fr 1fr; grid-template-areas: - "menu menu" - "actions-start actions-end" - "title title"; + "actions-start menu actions-end" + "title title title"; .header__title { margin-block-start: 0.25rem; } } - } */ + } } diff --git a/app/views/events/index.html.erb b/app/views/events/index.html.erb index 0c5ef2a0d..1279e4dac 100644 --- a/app/views/events/index.html.erb +++ b/app/views/events/index.html.erb @@ -1,5 +1,5 @@ <% @page_title = "Home" %> -<% @header_class = "header--events header--mobile-actions-stack" %> +<% @header_class = "header--events" %> <%= render "cards/broadcasts", filter: @filter %> diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 79b679637..be25a8eae 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -3,7 +3,7 @@ <%= render "layouts/shared/head" %> -