Commit Graph

6573 Commits

Author SHA1 Message Date
Jay Ohms 2e6d06afa7 Mobile: improve search screen (#2636)
* Disable search results nested scrolling behavior for mobile apps

* Display the native search input clear button in the native apps
2026-03-03 11:22:28 +01:00
Adrien Maston 757f990b85 Merge pull request #2641 from basecamp/mobile/fix-notice-size
Mobile / Fix notice size
2026-03-03 10:32:45 +01:00
Jorge Manrubia cae7990876 Strip whitespace from webhook URL's
Strip whitespace from webhook URL's
2026-03-03 10:06:31 +01:00
Adrien Maston f4c35a1ca4 Merge pull request #2642 from basecamp/mobile/fix-missing-draft-button
Mobile / Fix missing draft button
2026-03-02 16:28:18 +01:00
Adrien Maston 1cb556ab2e Merge pull request #2639 from basecamp/mobile/fix-new-column-dialog
Mobile / Fix new column dialog
2026-03-02 16:27:40 +01:00
Jirka Hutárek f22afa7b56 Extract event particulars helper method 2026-03-02 16:15:28 +01:00
Jirka Hutárek 7e05794114 Reapply "Push event payload body updates"
This reverts commit 6e9de6a017.
2026-03-02 16:15:28 +01:00
Adrien Maston 85ba8a63d5 Bump z-index 2026-03-02 15:07:26 +01:00
Adrien Maston ef980a0d48 Allow notice to take more inline space 2026-03-02 14:50:58 +01:00
Adrien Maston cc6809cd1f Bump z-index 2026-03-02 11:03:32 +01:00
Jay Ohms 29e80876e2 Update the android remote path config with the properties 2026-02-27 16:39:47 -05:00
Jay Ohms 4819b89a78 Merge pull request #2621 from basecamp/fix-long-card-title-truncation
Fix long card titles truncating in Safari
2026-02-27 14:14:53 -05:00
Stanko Krtalić 6e9de6a017 Revert "Push event payload body updates" 2026-02-27 19:59:18 +01:00
Jirka Hutárek 97d188fae4 Rename new_board_name to new_location_name for clarity in event payload handling 2026-02-27 18:54:15 +01:00
Jirka Hutárek 44235da9c1 Add fallback message for card triage when column name is missing 2026-02-27 18:47:41 +01:00
Jirka Hutárek 7702e49afa Handle collection change the same as board change 2026-02-27 18:42:49 +01:00
Jirka Hutárek 566dd8ded2 Update default message 2026-02-27 18:30:12 +01:00
Jirka Hutárek 856d17c510 Handle missing fields 2026-02-27 18:26:50 +01:00
Jirka Hutárek 9678bdbd24 Add more specific messages to event push payload body 2026-02-27 18:17:56 +01:00
Jirka Hutárek b93752dbb5 Mention column name and creator in push event body when card is moved between columns 2026-02-27 18:10:37 +01:00
Jay Ohms e685d68dec Merge pull request #2620 from basecamp/identity-accounts
Only return identity accounts that are active with an active user
2026-02-27 09:48:06 -05:00
Jay Ohms 74eac289ee Improve the structure so users_with_active_accounts is available on identity 2026-02-27 09:17:12 -05:00
Zoltan Hosszu 41cc5467c6 Remove lexxy-content class on comment editor 2026-02-27 12:09:46 +01:00
Zoltan Hosszu 295b5dd94d Tweak for ... icon to prevent Safari clipping 2026-02-27 10:49:03 +01:00
Zoltan Hosszu f727afdabb Stamp z-index issue fix 2026-02-27 10:37:32 +01:00
Zoltan Hosszu dea9e3e353 Button underline fix 2026-02-27 10:29:35 +01:00
Fernando Olivares d48b73ebdc Fix long card titles truncating in Safari
text-wrap: balance conflicts with -webkit-line-clamp in Safari, causing
titles to collapse into fewer lines and truncate early. Unset text-wrap
when the title is line-clamped on the board view.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 21:21:36 -06:00
Jay Ohms 42900cf170 Only return identity accounts that are active with an active user 2026-02-26 16:45:16 -05:00
Jay Ohms 867267890b Update app/javascript/controllers/bridge/buttons_controller.js
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-26 08:05:48 -05:00
Jay Ohms 7427675fc8 PR feedback 2026-02-26 07:53:02 -05:00
Jay Ohms 84c650ab25 Fix beforeunload event listeners 2026-02-26 07:41:51 -05:00
Jay Ohms 2d41463074 Merge branch 'main' into card-perma-editing
* main: (56 commits)
  Update app/views/cards/container/_closure_buttons.html.erb
  Update app/views/columns/show/_add_card_button.html.erb
  Update app/views/events/index/_add_card_button.html.erb
  Just return the object
  Rename is-main-action to display-as-primary-action
  Remove debug line
  Rename show-label to display-title
  Include path in web push payload for backwards compatibility
  Add base_url to native push notification payload
  Use internal account ID as `account_id` and add `account_slug`
  Make APNS and FCM env vars available
  Fix devices_path route helper in native devices partial
  Fix tests for renamed fixtures and new stacked notifications
  Add creator_familiar_name to push notification payload
  Add creator initials and avatar color to push notification payload
  Add avatar_url so we always get an avatar even when the user hasn't set one
  Document --push flag for testing native push notifications
  Don't read APNS_TEAM_ID from 1Password
  Simplify push.yml to only use B64 encryption keys
  Rename apns-dev to push-dev and unify 1Password credentials
  ...
2026-02-26 07:32:18 -05:00
Adrien Maston 1505ed7783 Merge pull request #2611 from basecamp/mobile/tweak-bridge-buttons 2026-02-26 13:23:39 +01:00
Adrien Maston c4cea3d5db Update app/views/cards/container/_closure_buttons.html.erb
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-26 12:14:37 +01:00
Adrien Maston 7f6351ea41 Update app/views/columns/show/_add_card_button.html.erb
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-26 12:14:28 +01:00
Adrien Maston 3f7b33889b Update app/views/events/index/_add_card_button.html.erb
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-26 12:14:13 +01:00
Adrien Maston a62defb570 Just return the object 2026-02-26 11:48:01 +01:00
Adrien Maston 047e8efad3 Rename is-main-action to display-as-primary-action 2026-02-26 11:33:24 +01:00
Adrien Maston fc1ee616c8 Remove debug line 2026-02-26 11:13:39 +01:00
Adrien Maston 158e95de42 Rename show-label to display-title 2026-02-26 11:12:01 +01:00
Jay Ohms 339a37576c Try adding turbo:before-visit event listener to test refreshing on iOS 2026-02-26 05:04:14 -05:00
Jay Ohms 2095848d32 Remove the ability to add/remove background images for now in the apps, since it's buggy 2026-02-25 15:40:37 -05:00
Jay Ohms 6ceb5ef7c3 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. 2026-02-25 15:32:00 -05:00
Jay Ohms 91aa806b72 Don't show the bridged button to the board when editing a card 2026-02-25 14:40:31 -05:00
Rosa Gutierrez 5b689dfac7 Merge pull request #2511 from basecamp/native-push-notifications
Support native push notifications
2026-02-25 19:55:04 +01:00
Rosa Gutierrez 13268ef668 Add base_url to native push notification payload
Include the server's base URL so native apps can identify which Fizzy
instance (SaaS or self-hosted) a notification originated from.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 19:31:13 +01:00
Rosa Gutierrez 92cb749e16 Fix tests for renamed fixtures and new stacked notifications
Clear assignee's existing notifications in setup since Notifier now
uses create_or_find_by instead of create, and reload the association
to avoid caching after destroy_all.

Update fixture references after rebase: use `logo_assignment_kevin`
as base notification and `logo_mentioned_david` for mention tests.
Update source to `logo_published` in tests that need generic card events.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-25 19:31:13 +01:00
Fernando Olivares b1cdb72381 Add creator initials and avatar color to push notification payload
Move avatar_background_color logic from helper to User::Avatar concern
so it can be accessed from models. Include creator_id, creator_initials,
and creator_avatar_color in native push notifications for local avatar
rendering on iOS.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-25 19:31:13 +01:00
Fernando Olivares 113e61d418 Add avatar_url so we always get an avatar even when the user hasn't set one 2026-02-25 19:31:13 +01:00
Rosa Gutierrez dbfb141b6f Restore PushNotificationJob as shim for in-flight jobs during deploy
In-flight jobs queued before deploy would fail if the old class is
missing. This shim delegates to the new notification.push method.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-25 19:31:13 +01:00