Commit Graph

9 Commits

Author SHA1 Message Date
EYHN
92f4f0c2d9 feat(core): guard service (#9816) 2025-02-09 23:26:38 +00:00
pengx17
0ed9258f51 fix(core): some dnd perf issues (#9661)
1. page list item are bound two draggables. adding `draggable` prop to WorkbenchLink to mitigate the issue.
2. DndService may not resolve datatransfer when dragging.
2025-01-15 15:04:01 +00:00
pengx17
a4841bbfa3 feat(core): drop doc onto split view (#9487)
fix AF-2068, AF-2069, AF-1175, AF-2061, AF-2079, AF-2034, AF-2080, AF-1960, AF-2081

1. replace `dnd-kit` with `@atlaskit/pragmatic-drag-and-drop`
2. allow creating split views by drag & drop the following
   a. WorkbenchLinks (route links), like journals, trash, all docs
   b. doc refs
   c. tags/collection
3. style adjustments to split view
4. remove split view's feature flag and make it GA for electron

https://github.com/user-attachments/assets/6a3e4a25-faa2-4215-8eb0-983f44db6e8c
2025-01-08 05:05:33 +00:00
pengx17
7b0387541c fix(core): redudant drop target register (#9177)
fix the following issue.
root cause is that options.element is being reused when cleaning up, but if its value comes from a ref, it might be null at that point.

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/1739c4e0-9ba8-4e27-8944-c6022644b40d.png)
2024-12-16 10:23:31 +00:00
pengx17
dc7d128252 feat(core): allow bs snapshot dragging targets (#9093)
fix AF-1924, AF-1848, AF-1928, AF-1931

dnd between affine & editor

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/T2klNLEk0wxLh4NRDzhk/dff3ceb1-dc82-4222-9b55-13be80b28b2f.mp4">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/T2klNLEk0wxLh4NRDzhk/dff3ceb1-dc82-4222-9b55-13be80b28b2f.mp4">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/dff3ceb1-dc82-4222-9b55-13be80b28b2f.mp4">20241210-1217-49.8960381.mp4</video>
2024-12-11 08:12:01 +00:00
pengx17
814b4c9cb0 fix(core): canDrop check for external (#9058) 2024-12-09 10:25:38 +00:00
pengx17
fafacdb265 feat(core): dnd support external types (#9033)
fix AF-1847

two issues:
1. original `dropTargetForExternal` only works if dragging target is from another window context. patched the library to bypass this issue
2. `dataTransfer`'s content is only available on `drop` event. This means we cannot have `canDrop` checks for external elements (like blocksuite links).
2024-12-06 21:46:08 +08:00
EYHN
54da85ec62 feat(core): init organize (#7456) 2024-07-26 04:35:32 +00:00
EYHN
7103b2e594 feat(component): new dnd api (#7467) 2024-07-15 04:00:42 +00:00