From 91aa806b722a5c154ffc04f4823c9c191177554d Mon Sep 17 00:00:00 2001 From: Jay Ohms Date: Wed, 25 Feb 2026 14:40:31 -0500 Subject: [PATCH 1/7] Don't show the bridged button to the board when editing a card --- app/views/cards/container/_closure_buttons.html.erb | 2 ++ app/views/cards/show.html.erb | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/app/views/cards/container/_closure_buttons.html.erb b/app/views/cards/container/_closure_buttons.html.erb index 990a17982..9a73b287d 100644 --- a/app/views/cards/container/_closure_buttons.html.erb +++ b/app/views/cards/container/_closure_buttons.html.erb @@ -13,4 +13,6 @@ Mark as Done d <% end %> + + <%= bridged_button_to_board(@card.board) %> diff --git a/app/views/cards/show.html.erb b/app/views/cards/show.html.erb index 1ad92dd59..fabd2ad02 100644 --- a/app/views/cards/show.html.erb +++ b/app/views/cards/show.html.erb @@ -9,7 +9,6 @@
<%= link_back_to_board(@card.board) %>
- <%= bridged_button_to_board(@card.board) %> <% end %> <%= turbo_stream_from @card %> From 6ceb5ef7c32ef1c42d22b89048b32425fa22a725 Mon Sep 17 00:00:00 2001 From: Jay Ohms Date: Wed, 25 Feb 2026 15:32:00 -0500 Subject: [PATCH 2/7] Notify the form/buttons components of a disconnect before a page reload. This gives the native components an opportunity to reset their state before the fresh page loads. --- .../controllers/bridge/buttons_controller.js | 16 ++++++++++++++++ .../controllers/bridge/form_controller.js | 16 ++++++++++++++-- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/app/javascript/controllers/bridge/buttons_controller.js b/app/javascript/controllers/bridge/buttons_controller.js index 47d09a158..7cbf73501 100644 --- a/app/javascript/controllers/bridge/buttons_controller.js +++ b/app/javascript/controllers/bridge/buttons_controller.js @@ -5,6 +5,14 @@ export default class extends BridgeComponent { static component = "buttons" static targets = [ "button" ] + connect() { + window.addEventListener("beforeunload", this.handleBeforeUnload.bind(this)) + } + + disconnect() { + window.removeEventListener("beforeunload", this.handleBeforeUnload.bind(this)) + } + buttonTargetConnected() { this.notifyBridgeOfConnect() } @@ -27,6 +35,14 @@ export default class extends BridgeComponent { }) } + notifyBridgeOfDisconnect() { + this.send("disconnect") + } + + handleBeforeUnload() { + this.notifyBridgeOfDisconnect() + } + #clickButton(message) { const selectedIndex = message.data.selectedIndex this.#enabledButtonTargets[selectedIndex].click() diff --git a/app/javascript/controllers/bridge/form_controller.js b/app/javascript/controllers/bridge/form_controller.js index a3c780e62..e2d3f929c 100644 --- a/app/javascript/controllers/bridge/form_controller.js +++ b/app/javascript/controllers/bridge/form_controller.js @@ -6,13 +6,21 @@ export default class extends BridgeComponent { static targets = [ "submit", "cancel" ] static values = { submitTitle: String } + connect() { + window.addEventListener("beforeunload", this.handleBeforeUnload.bind(this)) + } + + disconnect() { + window.removeEventListener("beforeunload", this.handleBeforeUnload.bind(this)) + } + submitTargetConnected() { this.notifyBridgeOfConnect() this.#observeSubmitTarget() } submitTargetDisconnected() { - this.notifyBridgeOfDisonnect() + this.notifyBridgeOfDisconnect() this.submitObserver?.disconnect() } @@ -37,7 +45,7 @@ export default class extends BridgeComponent { } } - notifyBridgeOfDisonnect() { + notifyBridgeOfDisconnect() { this.send("disconnect") } @@ -49,6 +57,10 @@ export default class extends BridgeComponent { this.send("submitEnd") } + handleBeforeUnload() { + this.notifyBridgeOfDisconnect() + } + #observeSubmitTarget() { this.submitObserver = new MutationObserver(() => { this.send(this.submitTarget.disabled ? "submitDisabled" : "submitEnabled") From 2095848d321ada730f036c4c848c1594314ad6c6 Mon Sep 17 00:00:00 2001 From: Jay Ohms Date: Wed, 25 Feb 2026 15:40:37 -0500 Subject: [PATCH 3/7] Remove the ability to add/remove background images for now in the apps, since it's buggy --- app/views/cards/container/_image.html.erb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/views/cards/container/_image.html.erb b/app/views/cards/container/_image.html.erb index e044b9b0c..c8892f0d4 100644 --- a/app/views/cards/container/_image.html.erb +++ b/app/views/cards/container/_image.html.erb @@ -1,12 +1,12 @@ <% if card.image.attached? %> - <%= button_to card_image_path(card), method: :delete, class: "btn", - data: { controller: "tooltip", bridge__overflow_menu_target: "item", bridge_title: "Remove background image" } do %> + <%= button_to card_image_path(card), method: :delete, class: "btn hide-on-native", + data: { controller: "tooltip" } do %> <%= icon_tag "picture-remove" %> Remove background image <% end %> <% elsif !card.closed? %> <%= form_with model: card, data: { controller: "form" } do |form| %> -