Saul-Mirone
df6e17b82f
feat(editor): frame and image extensions ( #11849 )
...
Closes: BS-3196
Closes: BS-3197
2025-04-21 10:29:30 +00:00
Saul-Mirone
12bf866dc5
fix(editor): remove replaceRichTextWithSvgElement ( #11843 )
2025-04-21 10:04:05 +00:00
Saul-Mirone
92ac8e3cad
feat(editor): embed extension ( #11848 )
...
Closes: BS-3195
2025-04-21 09:22:12 +00:00
Saul-Mirone
15a5264352
feat(editor): divider and edgeless text extensions ( #11846 )
...
Closes: BS-3193
Closes: BS-3194
2025-04-21 09:22:12 +00:00
Saul-Mirone
652d42ba1e
feat(editor): scaffolding store and view manager in affine ( #11840 )
...
Closes: BS-3254
2025-04-21 09:22:11 +00:00
Saul-Mirone
5244ff9b98
feat(editor): data view and database extension ( #11837 )
...
Closes: BS-3191
Closes: BS-3192
2025-04-21 09:22:11 +00:00
fundon
e60d5483ad
refactor(editor): add attachments ( #11842 )
...
Closes: [BS-3256](https://linear.app/affine-design/issue/BS-3256/重构-add-attachments-方法 )
2025-04-21 09:07:02 +00:00
doufa
b036ff5a45
fix(web): export png split text error with comment out rich text replacement in export process ( #11834 )
...
Co-authored-by: Mirone <Saul-Mirone@outlook.com >
2025-04-21 14:50:03 +08:00
Saul-Mirone
93b7c288cb
feat(editor): callout and code extension ( #11827 )
...
Closes: BS-3243
Closes: BS-3190
2025-04-21 04:27:19 +00:00
Saul-Mirone
a6d0894ce1
feat(editor): bookmark and attachment extension ( #11824 )
...
Closes: BS-3188
Closes: BS-3189
2025-04-21 04:27:18 +00:00
L-Sun
6d7cd6dd99
fix(editor): banner of blookmark not shown in edgeless ( #11796 )
...
Close [BS-2651](https://app.graphite.dev/github/pr/toeverything/AFFiNE/11797/chore(editor)-add-feature-flag-to-embed-doc-with-alias )
### What Changes:
- Fixed banner of edgeless embed bookmark is not shown
- Add fallback bookmark creation with embed creation modal when there is not a `QuickSearchProvider` in blocksuite playground
- Add tests for embed blookmark and embed github block in edgeless
2025-04-21 03:33:18 +00:00
Saul-Mirone
c74b5dc214
fix(editor): convert note to linked doc from edgeless ( #11828 )
...
Closes: BS-3244
2025-04-21 03:18:14 +00:00
fundon
67832aab09
chore(editor): update file icons ( #11826 )
2025-04-21 09:18:29 +08:00
L-Sun
f16bcdbe2b
fix(editor): edgeless selected block is missing in the return of getSelectedBlockCommand ( #11813 )
2025-04-18 13:52:43 +00:00
L-Sun
5fcf34d848
refactor(editor): adjust parameters of duplicate block command ( #11812 )
2025-04-18 13:52:43 +00:00
fundon
c0ff567a2a
fix(editor): get block props ( #11807 )
...
Closes: [BS-3184](https://linear.app/affine-design/issue/BS-3184/duplicate-图片,一直在loading )
2025-04-18 10:59:31 +00:00
L-Sun
3264e65980
chore(editor): add feature flag to embed doc with alias ( #11797 )
2025-04-18 07:39:16 +00:00
fundon
9c02512d7c
fix(editor): chevron down icon on toolbar ( #11803 )
...
Uniform size: 16x16
2025-04-18 07:10:01 +00:00
pengx17
ebf1d5476d
feat(core): add summary to transcription block ( #11753 )
...
fix AF-2523
2025-04-17 06:33:04 +00:00
L-Sun
98899b4eea
feat(editor): affine to blocksuite doc dnd with prefered card view ( #11748 )
...
Close [BS-3070](https://linear.app/affine-design/issue/BS-3070/文档拖动进入edgeless,形成引用时,默认形成embeded的引用,但是记录上次选择 )
2025-04-17 04:06:50 +00:00
donteatfriedrice
022e5f2c93
fix(editor): update embed iframe block event tracker ( #11736 )
...
Close [BS-3151](https://linear.app/affine-design/issue/BS-3151/埋一下-reload-link-成功失败 )
2025-04-16 09:53:38 +00:00
donteatfriedrice
212c13f843
fix(editor): add code block clipboard extension ( #11731 )
...
Close [BS-3109](https://linear.app/affine-design/issue/BS-3109/code-block-不支援-markdown-語法 )
2025-04-16 08:32:00 +00:00
donteatfriedrice
bfec5dd594
fix(editor): markdown html and image import ( #11712 )
...
Close
[BS-3145](https://linear.app/affine-design/issue/BS-3145/markdown-adapter-html-标签导入成-code-block )
[BS-3154](https://linear.app/affine-design/issue/BS-3154/[bug]-使用-markdown-with-files-导入到-affine-图片丢失 )
2025-04-16 04:27:39 +00:00
Saul-Mirone
828215f45a
refactor(editor): remove unused modal widget ( #11713 )
2025-04-16 04:13:58 +00:00
Saul-Mirone
3ebac1d39d
refactor(editor): remove dead code ( #11709 )
2025-04-15 12:40:36 +00:00
Saul-Mirone
b5c9741f18
feat(editor): extract keyboard toolbar widget ( #11707 )
2025-04-15 12:06:50 +00:00
fundon
8ca675b2ec
fix(editor): improve pdf embed viewer UX ( #11641 )
...
Closes: [BS-3101](https://linear.app/affine-design/issue/BS-3101/pdf-embed-模式的选中框选-和点开看详情有比较大的问题 )
### What's Changed!
* Fixed disable pointer event in native pdf viewer by dragging
* Disable opening peek view with pdf viewer in readonly and sharing modes
2025-04-15 08:51:02 +00:00
L-Sun
6f35021f22
chore(editor): update github block ui ( #11690 )
...
Close [BS-2651](https://linear.app/affine-design/issue/BS-2651/github-embed-block的样式修复 )
2025-04-15 04:15:00 +00:00
donteatfriedrice
7aa87de5f7
fix(editor): markdown code preprocessor should handle link correctly ( #11671 )
...
Close [BS-3117](https://linear.app/affine-design/issue/BS-3117/代码粘贴后出现多余的-和-符号 )
2025-04-14 08:28:43 +00:00
L-Sun
e1cb8198f1
fix(editor): android bs keyboard provider error ( #11647 )
...
### What Changes
- fixed keyboard service can not be initialized since a anonymous `BSKeyboardWithActionService` class was provider to di
- fixed tool panel was not closed when focus on other pragraph by clicking
- optimized code structure of fallback `show` and `hide` of keyboard
2025-04-13 09:59:24 +00:00
L-Sun
076c5ba044
fix(editor): repeat trigger keys of at-menu was added ( #11631 )
...
Close [BS-2716](https://linear.app/affine-design/issue/BS-2716/移动端通过toolpanel唤起的at-menu,出现两个 )
2025-04-13 06:46:37 +00:00
L-Sun
26d2ed8afb
chore(editor): hide file and doc import entries for mobile ( #11648 )
...
Close [BS-2926](https://linear.app/affine-design/issue/BS-2926/【移动端-ios】-选择import,无反应 )
Close [BS-2927](https://linear.app/affine-design/issue/BS-2927/【移动端-ios】隐藏toolbar上附件入口 )
2025-04-13 05:32:15 +00:00
fundon
afdc40b510
feat(editor): add shortcut to highlighter tool ( #11604 )
...
Closes: [BS-3092](https://linear.app/affine-design/issue/BS-3092/highlighter-快捷键 )
### What's Changed!
* Added shortcut `⇧ P` to highlighter tool
[Screen Recording 2025-04-10 at 16.33.30.mov <span class="graphite__hidden">(uploaded via Graphite)</span> <img class="graphite__hidden" src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/8ypiIKZXudF5a0tIgIzf/38aadc08-ed18-4b48-9d91-b4876d14a2d3.mov " />](https://app.graphite.dev/media/video/8ypiIKZXudF5a0tIgIzf/38aadc08-ed18-4b48-9d91-b4876d14a2d3.mov )
2025-04-11 13:08:59 +00:00
L-Sun
aabb09b31f
fix(editor): ime input error at empty line ( #11636 )
...
Close [BS-3106](https://linear.app/affine-design/issue/BS-3106/mac-chrom在空行使用ime输入,文档卡住 )
2025-04-11 10:39:16 +00:00
doodlewind
e1e5e8fc14
feat(editor): add basic image support in turbo renderer ( #11620 )
...
This PR adds basic support for image block:

2025-04-11 10:16:07 +00:00
forehalo
2f5647ac77
fix(editor): use img tag for link preview icon and banner ( #11637 )
...
close AF-2377
2025-04-11 08:48:04 +00:00
donteatfriedrice
74ebec007d
fix(editor): surface-ref refFlavour should be affine:frame when reference to a frame ( #11632 )
2025-04-11 06:51:31 +00:00
Saul-Mirone
4f9a4e739a
feat(editor): extract linked doc widget package ( #11589 )
...
Close [BS-2738](https://github.com/toeverything/AFFiNE/pull/11589 )
2025-04-11 14:06:16 +08:00
doodlewind
a5ab66d6cd
feat(editor): add basic code support in turbo renderer ( #11619 )
...
This PR adds basic support for code block:
[Screen Recording 2025-04-10 at 8.13.26 PM.mov <span class="graphite__hidden">(uploaded via Graphite)</span> <img class="graphite__hidden" src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/lEGcysB4lFTEbCwZ8jMv/5d749979-f7f1-4e4d-ba5b-bc4ba29f8b83.mov " />](https://app.graphite.dev/media/video/lEGcysB4lFTEbCwZ8jMv/5d749979-f7f1-4e4d-ba5b-bc4ba29f8b83.mov )
2025-04-11 04:28:51 +00:00
doouding
714f2e79dc
fix: cannot exit editing mode when click frame body ( #11603 )
2025-04-11 03:23:27 +00:00
L-Sun
823bf40a57
fix(editor): fix overlay of tool is not shown or repeated when switching tool ( #11575 )
...
Close [BS-3029](https://linear.app/affine-design/issue/BS-3029/frame-里面的-shape-没办法进入文本编辑模式 )
Close [BS-3082](https://linear.app/affine-design/issue/BS-3082/按s切换至shape工具,在白板上点击会创建两个shape )
Close [BS-3091](https://linear.app/affine-design/issue/BS-3082/按s切换至shape工具,在白板上点击会创建两个shape )
## Fix Shape Tool Issues
This PR addresses several issues with the shape and mindmap tools functionality in the editor:
1. **Fix text editing after mode switching**: Resolves an issue where users couldn't edit text in shapes after switching editor modes. The fix ensures the edgeless block is properly retrieved when double-clicking on a shape.
2. **Improve tool switching behavior**: Fixes issues with tool overlays not showing or being repeated when switching between tools. This includes:
- Properly handling tool overlay visibility
- Ensuring only one tool is active at a time when using keyboard shortcuts
- Adding proper cleanup when switching tools
3. **Add comprehensive tests**: Adds new test cases to verify:
- Shape creation with keyboard shortcuts
- Shape text editing after mode switching
- Tool switching behavior with keyboard shortcuts
2025-04-10 13:39:22 +00:00
L-Sun
588659ef67
fix(editor): connector target position NaN ( #11606 )
...
Close [BS-3086](https://linear.app/affine-design/issue/BS-3086/frame里套frame,连一下connector,拖两下,白板损坏 )
### What Changes
- Fixed `bound.toRelative` may be return `NaN` when `bound.w === 0 || bound.h ===0`
- Remove type assertions from `connector-manager.ts` for more type safety
2025-04-10 12:33:24 +00:00
donteatfriedrice
d5aebc1421
fix(editor): enhance markdown latex preprocessing ( #11597 )
...
Close [BS-2440](https://linear.app/affine-design/issue/BS-2440/inline-latex-markdown-adapter-需要更精确的处理 )
2025-04-10 12:15:24 +00:00
doodlewind
dba8e00fb6
feat(editor): add basic note support in turbo renderer ( #11607 )
...
After landing layout tree refactoring, this PR adds basic note support in turbo renderer.
In this demo recording, the code and image block needs to be further supported.
[Screen Recording 2025-04-10 at 5.16.15 PM.mov <span class="graphite__hidden">(uploaded via Graphite)</span> <img class="graphite__hidden" src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/lEGcysB4lFTEbCwZ8jMv/2e416b41-5609-4e52-a90f-5b7bb77db682.mov " />](https://app.graphite.dev/media/video/lEGcysB4lFTEbCwZ8jMv/2e416b41-5609-4e52-a90f-5b7bb77db682.mov )
2025-04-10 09:52:33 +00:00
doodlewind
f85b35227b
feat(editor): replace flat layout cache with tree in turbo renderer ( #11319 )
...
### TL;DR
Refactored the BlockSuite turbo renderer to use a hierarchical tree structure for layouts instead of a flat list, improving rendering accuracy and performance.
### What changed?
- Redesigned the layout system to use a tree structure (`ViewportLayoutTree`) that better represents the document hierarchy
- Added `blockId` to all layout objects for better tracking and debugging
- Updated the layout query mechanism to work with models directly instead of components
- Enhanced error handling with more descriptive warnings and error messages
- Improved the painting process to traverse the layout tree recursively
- Fixed viewport coordinate calculations for more accurate rendering
- Updated the worker communication to support the new tree-based layout structure
### Why make this change?
The previous flat layout structure didn't properly represent the hierarchical nature of documents, leading to rendering issues with nested blocks. This tree-based approach:
1. Better represents the actual document structure
2. Improves rendering accuracy for nested elements
3. Makes debugging easier with more consistent block identification
4. Provides a more robust foundation for future rendering optimizations
5. Reduces the likelihood of rendering artifacts when scrolling or zooming
2025-04-10 08:49:23 +00:00
donteatfriedrice
0302bd43cb
fix(editor): should preserve indentation when pasting code with spaces into code block ( #11587 )
...
Close [BS-3087](https://linear.app/affine-design/issue/BS-3087/粘贴内容到-code-block-缩进会丢 )
2025-04-10 04:48:08 +00:00
fundon
bb79781dd8
fix(editor): should clear selection when switching doc mode ( #11545 )
...
Closes: [BS-3050](https://linear.app/affine-design/issue/BS-3050/切换模式时,清除选区 )
2025-04-10 03:10:50 +00:00
Saul-Mirone
be3024c0c1
chore(editor): remove unused inner modal widget ( #11552 )
2025-04-09 02:55:00 +00:00
Saul-Mirone
dd1cf14069
refactor(editor): cleanup duplicated code ( #11548 )
2025-04-08 16:35:25 +00:00
L-Sun
7d4bb5150e
chore(editor): improve bookmark UI&UX ( #11525 )
...
Close [BS-2804](https://linear.app/affine-design/issue/BS-2804/[ui-bug]-link-card-view-ui-布局错了,url-应该是-text-secondary-color )
Close [BS-3034](https://linear.app/affine-design/issue/BS-3034/link-card-view-链接需要-fix-在底部 )
### What Changes
- remove url selected color
- improve url click area by moving `@click` callback to inner small url container
- improve layout
2025-04-08 10:34:36 +00:00