Commit Graph

7251 Commits

Author SHA1 Message Date
Adrien Maston 041ac0c28e Add conditional stylesheets for mobile apps 2025-11-24 11:52:56 +01:00
Mike Dalessio 26ccbf6968 Merge pull request #1695 from basecamp/flavorjones/better-card-edit-form-behavior
Update card buttons dynamically
2025-11-23 23:36:10 -05:00
Mike Dalessio 09e6a15c6e Merge pull request #1696 from basecamp/flavorjones/avoid-overlapping-bundles
Prevent overlapping bundles from being created
2025-11-23 10:20:17 -05:00
Jorge Manrubia f0851988a2 Revert tentatively
Kevin got a bunch of dups, need to look into this more calmly https://3.basecamp.com/2914079/buckets/37331921/chats/9301300227
2025-11-23 10:18:39 +01:00
Mike Dalessio db51b616bb Handle notifs created before the current bundle starts_at 2025-11-22 22:38:23 -05:00
Mike Dalessio a29dd89683 Make sure Bundle#ends_at is set before validation
otherwise we risk creating overlapping bundles and not catching it.
2025-11-22 22:19:05 -05:00
Jason Zimdars a66b40ba51 Display this full size on mobile
Just the icon isn't clear enough
2025-11-22 17:59:33 -06:00
Mike Dalessio b05ecb7809 Update card buttons dynamically
User flows when editing a card look like:
- Click "Edit" → the closure buttons are replaced by "Save changes"
- Submit card form → Saves and restores closure buttons
- Press ESC while editing → Cancels and restores closure buttons

Also, renamed for clarity:
- _title.html.erb → _content.html.erb

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-22 12:14:39 -05:00
Mike Dalessio 31266699cb Merge pull request #1694 from basecamp/flavorjones/fix-card-edit-button
Make sure the card edit button targets the turbo frame
2025-11-22 10:26:12 -05:00
Mike Dalessio 4e6a053ff2 Make sure the card edit button targets the turbo frame
Related to 5aaaeab5
2025-11-22 10:15:11 -05:00
Mike Dalessio 521c1572b0 Merge pull request #1693 from basecamp/flavorjones/more-more-avatar
Don't let cloudflare cache avatars
2025-11-22 09:50:15 -05:00
Mike Dalessio 4dc28943da Don't let cloudflare cache avatars
The issue here is that anyone else who views my avatar will cause it
to be cached, and then I can't easily bust the cache if I change my
avatar.
2025-11-22 09:48:28 -05:00
David Heinemeier Hansson 03e24b0ffa Not needed 2025-11-22 12:13:22 +01:00
Jason Zimdars 0cc20514c7 Merge pull request #1688 from basecamp/jz-11-21-25
JZ 11-21-25
2025-11-21 17:11:24 -06:00
Jason Zimdars 0482d3b5ba Update test 2025-11-21 17:08:04 -06:00
Jason Zimdars 805c505f8d Fussy padding tweaks on boosts 2025-11-21 16:48:40 -06:00
Jason Zimdars d3365e4ac2 Typo 2025-11-21 16:37:06 -06:00
Jason Zimdars 2141dfc9b8 Copy edits 2025-11-21 16:31:07 -06:00
Andy Smith 3399b00139 Ability to close search when input is empty 2025-11-21 16:08:52 -06:00
Andy Smith ec0681bbed Better focus and clearing when searching 2025-11-21 16:08:52 -06:00
Mike Dalessio ec8974640f User avatar responses have cache-control "public"
ref: https://app.fizzy.do/5986089/cards/3125
2025-11-21 16:08:52 -06:00
Mike Dalessio af0e2488d0 Improve avatar image handling
- redirect avatar image requests to the rails_blob_url, instead of
  streaming them through the web app
- use a thumbnail variant for avatar images
- only put avatar initials behind the stale? check (not the image
  redirect, which would result in browsers rendering broken images when
  an avatar is changed, until max-age expires)
2025-11-21 16:08:52 -06:00
Jason Zimdars a9bbd9d539 Special handling on mobile 2025-11-21 16:07:36 -06:00
Andy Smith 47e653eb62 Merge pull request #1691 from basecamp/search-ergonomics
Better focus and clearing when searching
2025-11-21 15:19:24 -06:00
Mike Dalessio c35a5eb28f Merge pull request #1690 from basecamp/flavorjones/more-avatars
User avatar responses have cache-control "public"
2025-11-21 16:17:54 -05:00
Andy Smith d61bff7321 Ability to close search when input is empty 2025-11-21 15:17:17 -06:00
Mike Dalessio 64bac96545 User avatar responses have cache-control "public"
ref: https://app.fizzy.do/5986089/cards/3125
2025-11-21 16:11:39 -05:00
Mike Dalessio 68f4ad15af Merge pull request #1689 from basecamp/flavorjones/avatar-improvements
Improve avatar image handling
2025-11-21 15:55:49 -05:00
Andy Smith 250935530f Better focus and clearing when searching 2025-11-21 14:32:10 -06:00
Jason Zimdars c8012ef4d4 Improve assignments picker when few/short names 2025-11-21 14:29:22 -06:00
Jason Zimdars 5aaaeab5ea Try the edit button on the bottom line 2025-11-21 14:17:41 -06:00
Mike Dalessio bcb43305b6 Improve avatar image handling
- redirect avatar image requests to the rails_blob_url, instead of
  streaming them through the web app
- use a thumbnail variant for avatar images
- only put avatar initials behind the stale? check (not the image
  redirect, which would result in browsers rendering broken images when
  an avatar is changed, until max-age expires)
2025-11-21 15:16:46 -05:00
Jason Zimdars 0747eadb81 For some reason 1pw wants to fill this field, avoid overflow 2025-11-21 14:11:44 -06:00
Jason Zimdars d179316662 Merge pull request #1650 from basecamp/column-nav-keyboard
Navigate columns with keyboard
2025-11-21 12:59:32 -06:00
Stanko Krtalić 6154a0da6a Merge pull request #1687 from basecamp/fix-stale-avatar-image
Disable stale while revalidate for own avatar
2025-11-21 19:28:52 +01:00
Stanko K.R. fe909d6dc5 Disable stale while revalidate for own avatar
Locally, having stale_while_revalidate works great, but in production when we are behind CloudFlare, this results in an old image being shown after you upload a new one

See: https://app.fizzy.do/5986089/cards/2978
2025-11-21 19:26:38 +01:00
Stanko Krtalić 08f13f13f3 Merge pull request #1685 from basecamp/fix-crash-on-very-long-card-titles
Fix crash on very long card titles
2025-11-21 18:20:00 +01:00
Stanko K.R. 2c1a0301c2 Fix crash on very long card titles 2025-11-21 18:17:49 +01:00
Stanko Krtalić 99f5e2b280 Merge pull request #1684 from basecamp/fix-call-to-nonexistant-blur-action
Fix call to non-existant blur action
2025-11-21 18:00:58 +01:00
Stanko K.R. 6f8364071c Fix call to non-existant blur action 2025-11-21 17:57:38 +01:00
Andy Smith 7fb46ee6b7 Merge pull request #1683 from basecamp/andy-nov-20
Andy nov 20
2025-11-21 10:02:02 -06:00
Mike Dalessio 7a057b81af Merge pull request #1682 from basecamp/flavorjones/active-storage-cleanup
Drop the "max previewable file size" limit
2025-11-21 10:56:54 -05:00
Mike Dalessio b2e3c7b1c7 Drop the "max previewable file size" limit
which was originally introduced to work around timing issues causing
us to try (and fail) to generate previews on sqlite read replicas.
2025-11-21 10:55:20 -05:00
Jason Zimdars 2c4d2df469 Merge pull request #1679 from basecamp/notifications
Cap the max number of unread notifications to 500
2025-11-21 09:34:26 -06:00
Jorge Manrubia 95b555869b not used 2025-11-21 16:31:06 +01:00
Jason Zimdars c0920f046f Move to bottom, use utility classes 2025-11-21 09:29:21 -06:00
Jason Zimdars 2382326a13 Merge pull request #1638 from basecamp/expand-activity-columns
Expand activity columns
2025-11-21 09:11:22 -06:00
Stanko Krtalić b5a28388e6 Merge pull request #1681 from basecamp/blur-comment-field-on-submit
Blur comment field after submission
2025-11-21 16:03:59 +01:00
Stanko K.R. ac2ed4851e Blur comment field after submission 2025-11-21 15:59:22 +01:00
Kevin McConnell 1f7495a5fe Merge pull request #1680 from basecamp/restore-automatic-migrations
Restore automatic migrations
2025-11-21 14:56:40 +00:00