Commit Graph

435 Commits

Author SHA1 Message Date
Jason Zimdars ed19e6d494 Remove top orientation (it doesn't work well), make right and left classes exclusive
In certain cases (board picker) both classes would be applied making a
mess
2025-11-24 15:49:42 -06:00
Jason Zimdars 9cc63c6dce This is too fancy, remove it 2025-11-24 15:48:08 -06:00
Andy Smith d61bff7321 Ability to close search when input is empty 2025-11-21 15:17:17 -06:00
Andy Smith 250935530f Better focus and clearing when searching 2025-11-21 14:32:10 -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 K.R. ac2ed4851e Blur comment field after submission 2025-11-21 15:59:22 +01:00
Jorge Manrubia 6daccc88ae Deselect column/card selection when clicking outside 2025-11-21 12:53:13 +01:00
Jorge Manrubia 6af9ab9b6d Make selection work when toggling columns 2025-11-21 12:28:37 +01:00
Stanko K.R. 7c15be02f8 Skip navigation when opening a new tab 2025-11-21 11:48:29 +01:00
Jorge Manrubia a4cc568a71 Merge branch 'main' into column-nav-keyboard
Resolved conflict in app/views/boards/show/_columns.html.erb by combining:
- hide-scrollbar class from main
- navigable-list controller from column-nav-keyboard

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-21 10:54:45 +01:00
Jorge Manrubia 85b9e3dfd4 Make the notifications tray reload on broadcasted refreshes
We can't use the normal refresh: :morph because everything is contained in a turbo permanent section
so that the trays persist across regular navigation.
2025-11-21 09:41:03 +01:00
Jorge Manrubia 7c0fb3c79b Fix: activate only when the option is set 2025-11-20 14:13:59 +01:00
Jorge Manrubia ccfc1b6058 Support containing actionable items to focused items in the navigable list 2025-11-20 14:03:00 +01:00
Jorge Manrubia eb51edac1c Rename properties 2025-11-20 13:56:27 +01:00
Jorge Manrubia cc4f696a00 Remove trace 2025-11-20 13:46:57 +01:00
Jorge Manrubia c472825a55 Move comment 2025-11-20 13:42:33 +01:00
Jorge Manrubia 20a0e2be9b Extract method 2025-11-20 13:42:25 +01:00
Jorge Manrubia 3247841c2d Expanding columns and selection working 2025-11-20 13:00:59 +01:00
Jorge Manrubia 0726da2708 Things more or less working 2025-11-20 11:29:09 +01:00
Jorge Manrubia 3bfab09795 Add keyboard navigation support for board columns
- Add horizontal/vertical navigation configuration options to navigable_list controller
- Support nested navigation (columns contain lists of cards)
- Disable horizontal navigation within individual columns
- Enable horizontal navigation at the column level
- Refactor selection logic into reusable methods

This allows users to navigate between columns with left/right arrow keys
and between cards within a column using up/down arrow keys.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-20 09:34:08 +01:00
Jorge Manrubia 09f18a2087 Navigate columns with the keyboard 2025-11-20 09:21:42 +01:00
David Heinemeier Hansson 66d397fa80 Eager load lazy frames inside dialogs on hover 2025-11-19 08:28:18 +01:00
Jorge Manrubia 38bb47a883 Merge pull request #1621 from basecamp/selection-no-one
Fix: Filter by "no one" assigned
2025-11-18 10:21:01 +01:00
Jorge Manrubia 4deb310497 Fix: Filter by "no one" assigned
This also adds support to make some selection items exclusive in the combo boxes.
2025-11-18 10:13:13 +01:00
Jorge Manrubia 6269f3c47e Reload notifications tray when the window regain the focus
https://app.fizzy.do/5986089/cards/2743

It includes a debounce interval to avoid too many of these.
2025-11-18 08:49:19 +01:00
Mike Dalessio 6a3135b67a Introduce a simple stimulus controller for the magic link form
which avoids the double-submit problem from:

- https://app.fizzy.do/5986089/cards/2980
- https://app.fizzy.do/5986089/cards/2771
2025-11-17 14:48:20 -05:00
Kevin McConnell f378f7c122 Use non-numeric user ID in JS 2025-11-17 17:00:58 +00:00
Jorge Manrubia 3b60e68ceb Merge branch 'main' into unique-notifications 2025-11-13 09:38:01 +01:00
Andy Smith 3615c07f7f Clear filters when dialog closes 2025-11-12 15:29:27 -06:00
Andy Smith 44b0f5f5bc Make the dialog sizing property optional 2025-11-12 11:44:31 -06:00
Jason Zimdars 4080b742ca Merge branch 'main' into unique-notifications 2025-11-12 10:06:47 -06:00
Jorge Manrubia 0f664a8ce1 Add create cards with keyboard
CTRL+ENTER to create
CTRL+SHIFT+ENTER to create and add another
2025-11-11 12:38:23 +01:00
Andy Smith e033f71dee Cleanup 2025-11-10 14:44:14 -06:00
Andy Smith e2ac6c1d7e Keep selected item in view 2025-11-10 14:42:42 -06:00
David Heinemeier Hansson 07ec3f49fd Save three requests per card view
Trade off is potentially a tiny delay on opening when reassigning, but
that seems worth it.
2025-11-07 17:40:20 +01:00
Andy Smith 7aba1db93a Add dialog manager for one-at-a-time filters 2025-11-06 16:46:50 -06:00
Andy Smith 8280be59c5 Merge branch 'main' into sticky-column-headers-using-fixed
* main:
  Order of concerns
  Redirect to root to avoid changing the path by default
  Make sure that only admins or card creators can delete cards
  Make sure only admins or collection creators can toggle the individual access settings
  Make sure only admins or collection creators can toggle the all access setting
  Update seeds from "Collection" to "Board"
  Rename concern
  Fix: constant name
  Rename script I did not mean to commit
  Support old public collection urls
  Support old collection urls
  Support old events in the timeline
  Invalidate HTTP cache
  Support current events after renaming
  Replace collection with board in the code, tests green
  Baseline replacing collection with board across code
2025-11-05 12:40:19 -06:00
Jorge Manrubia d9b546128a Merge branch 'main' into unique-notifications 2025-11-05 19:07:16 +01:00
Andy Smith 3e7cd204db Add title to Maybe column 2025-11-05 11:14:30 -06:00
Andy Smith 623d2468ef Add intersection observer to only show when title isn't visible 2025-11-05 10:42:31 -06:00
Jorge Manrubia 39ec6cf062 Replace collection with board in the code, tests green 2025-11-05 13:41:12 +01:00
Jorge Manrubia 03a345609e Baseline replacing collection with board across code 2025-11-05 13:31:54 +01:00
Jorge Manrubia b76ff27b96 Keep the last search in place
https://app.box-car.com/5986089/cards/2703
2025-11-03 09:25:46 +01:00
Jorge Manrubia 8400bb0a82 Optimize: only do one loop to group the cards on the initial grouping
There can be many unread notifications. We want to keep the complexity lineal.
2025-11-01 17:49:48 +01:00
Jorge Manrubia 8947624524 Optimize: group on the initial rendering of the tray once, and then start grouping dynamically
Performance optimization to save loops
2025-11-01 17:31:48 +01:00
Jorge Manrubia b21f6e1a6e Group notifications for the same card as they show up 2025-11-01 17:31:48 +01:00
Stanko K.R. 8e298dd81a Mark the form as busy and disable submits on auto-submit 2025-10-31 16:26:08 +01:00
Stanko K.R. dd583206ee Allow changes to the Account name 2025-10-31 16:26:08 +01:00
Jorge Manrubia 1a78de6f71 Fixes for refresh stream subscriptions
This will make the system listen for changes via the filtered
collections, when any, or via all the collections otherwise.
2025-10-31 12:25:05 +01:00
Jason Zimdars 8c4d3fd700 Don't try to orient these
We need to figure out how to handle the assignment popup when it's close
to the bottom of the screen but this isn't doing it
2025-10-30 17:11:22 -05:00