nitin
|
524a1d78d2
|
Refactor drag selection: Replace external library with custom implementation and add auto-scroll (#12134)
Closes #12076
Closes #11764
Replaced the `@air/react-drag-to-select` library with a custom
implementation to get better control over the selection behavior and add
auto-scroll functionality.
**What changed:**
- Removed external drag selection dependency
- Built custom drag selection from scratch using pointer events --
@charlesBochet
- Added auto-scroll when dragging near container edges
- Fixed boundary detection so selection stays within intended areas
- Added proper `data-select-disable` support for checkboxes and other
non-selectable elements
The new implementation gives us full control over the selection logic
and eliminates the external dependency while adding the auto-scroll
feature that was **not** requested 😂
**Auto Scroll**
https://github.com/user-attachments/assets/3509966d-5b6e-4f6c-a77a-f9a2bf26049f
related to #12076
https://github.com/user-attachments/assets/2837f80e-728c-4739-a0e2-b8d7bc83a21a
**Also fixed:**
- Record board column height not extending to the bottom (styling issue
I found while working on this)
before:
<img width="1512" alt="Screenshot 2025-05-19 at 23 58 54"
src="https://github.com/user-attachments/assets/602b310f-7ef6-44f6-99e9-da5ff59b31d3"
/>
after:
<img width="1512" alt="Screenshot 2025-05-19 at 23 56 40"
src="https://github.com/user-attachments/assets/1d0ecb5c-49e0-4f03-be3b-154a6f16a7a4"
/>
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
|
2025-05-26 11:58:22 +02:00 |
|