L-Sun
8ac687628c
chore(editor): at menu stays open when left right arrow keys are pressed ( #10806 )
...
Close [BS-2644](https://linear.app/affine-design/issue/BS-2644/menu-support )
2025-03-13 06:14:35 +00:00
L-Sun
c378a8a3ad
fix(editor): horizontal scroll bar missing in code block ( #10742 )
2025-03-12 01:14:45 +00:00
L-Sun
027d3a51dc
chore(editor): keep root slash menu open when pressing left arrow left ( #10730 )
...
Close [BS-2643](https://linear.app/affine-design/issue/BS-2643/slash-menu-左键不关闭根菜单 )
2025-03-10 13:36:37 +00:00
L-Sun
c45abb013a
fix(editor): error rotation of highlight element in frame ( #10737 )
...
This PR fixed frame rotation by converting degrees to radians
2025-03-10 12:59:11 +00:00
L-Sun
c13d4c575f
chore(editor): update slash menu tooltips ( #10746 )
...
Close [BS-2676](https://linear.app/affine-design/issue/BS-2676/loom入口增加简介 ) [BS-2767](https://linear.app/affine-design/issue/BS-2767/table的tooltip需要更新,现在用的是database的 )
2025-03-10 12:38:59 +00:00
L-Sun
6b0639facd
fix(editor): repeated instantiation of frame preview editor ( #10729 )
...
Close [BS-2774](https://linear.app/affine-design/issue/BS-2774/frame-preview-会重新创建editor )
2025-03-10 04:41:20 +00:00
L-Sun
05a6845962
refactor(editor): data view slash menu config extension ( #10684 )
2025-03-07 15:22:41 +00:00
L-Sun
46466e2c3a
refactor(editor): code block slash menu config extension ( #10683 )
2025-03-07 15:22:41 +00:00
L-Sun
63bf2b80c1
refactor(editor): linked doc slash menu config extension ( #10682 )
2025-03-07 14:42:56 +00:00
L-Sun
83b05aca4d
refactor(editor): surface-ref slash menu config extension ( #10681 )
2025-03-07 09:05:04 +00:00
L-Sun
d37868d97a
refactor(editor): ai slash menu config extension ( #10680 )
2025-03-07 09:05:03 +00:00
L-Sun
8d9746e0cc
refactor(editor): embed slash menu config extension ( #10679 )
2025-03-07 08:21:19 +00:00
L-Sun
37a13032ed
refactor(editor): note slash menu config extension ( #10678 )
2025-03-07 08:21:18 +00:00
L-Sun
4be80d87ff
refactor(editor): latex slash menu config extension ( #10677 )
2025-03-07 08:21:18 +00:00
L-Sun
ea20751b9b
refactor(editor): attachment slash menu config extension ( #10676 )
2025-03-07 05:48:41 +00:00
L-Sun
34e777e043
refactor(editor): bookmark slash menu config extension ( #10675 )
2025-03-07 05:48:40 +00:00
L-Sun
4e80ecd591
refactor(editor): image slash menu config extension ( #10674 )
2025-03-07 05:48:40 +00:00
L-Sun
66ad87c84a
refactor(editor): table slash menu config extension ( #10673 )
2025-03-07 05:48:39 +00:00
L-Sun
0a234fa263
refactor(editor): callout slash menu config extension ( #10672 )
2025-03-07 04:24:09 +00:00
L-Sun
98d44d5be5
refactor(editor): move focus block commands to blocksuite/shared ( #10671 )
2025-03-07 03:07:49 +00:00
L-Sun
43ce609cba
refactor(editor): database slash menu config extension ( #10670 )
2025-03-07 02:50:27 +00:00
L-Sun
490a191a11
refactor(editor): replace icons with blocksuite/icons ( #10655 )
2025-03-07 02:50:26 +00:00
L-Sun
750c8a44dc
refactor(editor): add slash menu config extension entry ( #10641 )
...
Close [BS-2744](https://linear.app/affine-design/issue/BS-2744/slash-menu%E6%8F%92%E4%BB%B6%E5%8C%96%EF%BC%9Aaction%E6%B3%A8%E5%86%8C%E5%85%A5%E5%8F%A3 )
This PR mainly focus on providing an entry point for configuring the SlashMenu feature. Therefore, it strives to retain the original code to ensure that the modifications are simple and easy to review. Subsequent PRs will focus on moving different configurations into separate blocks.
### How to use?
Here is the type definition for the slash menu configuration. An important change is the new field `group`, which indicates the sorting and grouping of the menu item. See the comments for details.
```ts
// types.ts
export type SlashMenuContext = {
std: BlockStdScope;
model: BlockModel;
};
export type SlashMenuItemBase = {
name: string;
description?: string;
icon?: TemplateResult;
/**
* This field defines sorting and grouping of menu items like VSCode.
* The first number indicates the group index, the second number indicates the item index in the group.
* The group name is the string between `_` and `@`.
* You can find an example figure in https://code.visualstudio.com/api/references/contribution-points#menu-example
*/
group?: `${number}_${string}@${number}`;
/**
* The condition to show the menu item.
*/
when?: (ctx: SlashMenuContext) => boolean;
};
export type SlashMenuActionItem = SlashMenuItemBase & {
action: (ctx: SlashMenuContext) => void;
tooltip?: SlashMenuTooltip;
/**
* The alias of the menu item for search.
*/
searchAlias?: string[];
};
export type SlashMenuSubMenu = SlashMenuItemBase & {
subMenu: SlashMenuItem[];
};
export type SlashMenuItem = SlashMenuActionItem | SlashMenuSubMenu;
export type SlashMenuConfig = {
/**
* The items in the slash menu. It can be generated dynamically with the context.
*/
items: SlashMenuItem[] | ((ctx: SlashMenuContext) => SlashMenuItem[]);
/**
* Slash menu will not be triggered when the condition is true.
*/
disableWhen?: (ctx: SlashMenuContext) => boolean;
};
// extensions.ts
/**
* The extension to add a slash menu items or configure.
*/
export function SlashMenuConfigExtension(ext: {
id: string;
config: SlashMenuConfig;
}): ExtensionType {
return {
setup: di => {
di.addImpl(SlashMenuConfigIdentifier(ext.id), ext.config);
},
};
}
```
Here is an example, `XXXSlashMenuConfig` adds a `Delete` action to the slash menu, which is assigned to the 8th group named `Actions` at position 0.
```ts
import { SlashMenuConfigExtension, type SlashMenuConfig } from '@blocksuite/affine-widget-slash-menu';
const XXXSlashMenuConfig = SlashMenuConfigExtension({
id: 'XXX',
config: {
items: [
{
name: 'Delete',
description: 'Remove a block.',
searchAlias: ['remove'],
icon: DeleteIcon,
group: '8_Actions@0',
action: ({ std, model }) => {
std.host.doc.deleteBlock(model);
},
},
],
},
});
```
2025-03-06 16:12:06 +00:00
L-Sun
62d8c0c7cb
refactor(editor): adjust folder structure for slash menu extension ( #10588 )
...
Close [BS-2743](https://linear.app/affine-design/issue/BS-2743/slash-menu插件化:调整文件夹结构 )
This PR move slash menu from `affine-root-block` to `widget-affine-slash-menu`, and make it as a `WidgetViewExtension`
2025-03-06 16:12:06 +00:00
L-Sun
797e63f86f
chore(editor): remove unexpected bottom padding of code block ( #10660 )
...
Close [BS-2765](https://linear.app/affine-design/issue/BS-2765/代码块在字数超出宽度时,下巴变大 )
https://github.com/user-attachments/assets/1dc53528-6d36-4b2a-861c-9ca06381c681
2025-03-06 09:26:00 +00:00
L-Sun
37fbfbcf3e
fix(editor): zindex of frame child not updated ( #10580 )
...
Close [BS-2689](https://linear.app/affine-design/issue/BS-2689/[bug]-%E5%BD%93%E5%B1%82%E7%BA%A7%E4%BD%8E%E4%BA%8E-frame-%E7%9A%84yuan%E7%B4%A0%E8%A2%AB%E6%8B%96%E5%85%A5-frame-%E6%97%B6%E5%B1%82%E7%BA%A7%E5%BA%94%E8%AF%A5%E8%A2%AB%E8%87%AA%E5%8A%A8%E6%8B%89%E9%AB%98%E5%B5%8C%E5%85%A5-frame )
2025-03-03 10:51:27 +00:00
L-Sun
2cd83be621
fix(editor): code block toolbar float offset ( #10579 )
...
Close [BS-2736](https://linear.app/affine-design/issue/BS-2736/代码块工具栏偏移太大 ), [BS-1974](https://linear.app/affine-design/issue/BS-1974/code-block-浮标歪 )
## Before
https://github.com/user-attachments/assets/f4ec4d7d-8c18-43ea-9464-c18e8b8dce60
https://github.com/user-attachments/assets/76f89ce6-bd89-49d6-a987-e9e5d5f9842a
### After
https://github.com/user-attachments/assets/dac919b9-d19c-4fb3-99bf-be02a460ad8c
https://github.com/user-attachments/assets/e5329f84-f1cf-4776-a789-8d12bea17ece
2025-03-03 09:56:13 +00:00
L-Sun
61541a2d15
fix(editor): patch android backspace key binding with beforeInput ( #10523 )
...
Close [BS-1869](https://linear.app/affine-design/issue/BS-1869/[bug]-android-chrome-%E8%BE%93%E5%85%A5%E9%94%99%E8%AF%AF )
## Problem
On Android devices, keyboard events do not properly capture key information, causing the backspace key and other keyboard functionalities to malfunction. This is due to the specific behavior of Android platform, as discussed in:
- https://stackoverflow.com/a/68188679
- https://stackoverflow.com/a/66724830
## Solution
1. Added special handling for Android platform in `KeyboardControl` class by using `beforeInput` event instead of `keyDown` event
2. Implemented `androidBindKeymapPatch` function to handle special key events on Android platform
3. Updated event handling logic in related components, including:
- CodeBlock
- ListKeymap
- ParagraphKeymap
- PageKeyboardManager
## Changes
- Added `androidBindKeymapPatch` function for handling key events on Android platform
- Modified `KeyboardControl.bindHotkey` method to add `beforeInput` event handling for Android
- Unified event object access using `ctx.get('defaultState').event` instead of `keyboardState.raw`
- Updated key event handling logic in multiple components
## Before
https://github.com/user-attachments/assets/e8602de4-d584-4adf-816f-369f38312022
## After
https://github.com/user-attachments/assets/f9e1680e-28ff-4d52-bdab-7683cdcb6f82
2025-02-28 13:03:00 +00:00
L-Sun
d476d3b1df
fix(editor): android keyboard can not be opened ( #10502 )
...
Close [BS-2674](https://linear.app/affine-design/issue/BS-2674/[android]-%E6%96%87%E6%9C%AC%E7%BC%96%E8%BE%91%E5%8C%BA%E5%9F%9F%E7%82%B9%E5%87%BB%E5%90%8E%E6%97%A0%E6%B3%95%E6%BF%80%E6%B4%BB%E9%94%AE%E7%9B%98 ) [BS-2609](https://linear.app/affine-design/issue/BS-2609/[android]-%E8%BE%93%E5%85%A5%E7%9A%84-toolbar-%E6%B2%A1%E6%9C%89%E4%BA%86 )
2025-02-28 08:23:26 +00:00
L-Sun
90b37ce65c
fix(core): editor blur unexpectedly when clicking blank area ( #10501 )
...
### Before
https://github.com/user-attachments/assets/3c4b20e1-6d89-4dc7-a51f-04b6e9a89486
### After
https://github.com/user-attachments/assets/86b93403-597e-4dbb-ab65-90908342c230
2025-02-28 07:05:06 +00:00
L-Sun
27fc4afc35
chore(core): remove capacitor from frontend/core ( #10500 )
2025-02-28 07:05:05 +00:00
L-Sun
b995b4f965
chore(editor): update page block telemetry ( #10487 )
...
Close [BS-2711](https://linear.app/affine-design/issue/BS-2711/page-block埋点更新 )
2025-02-27 09:58:58 +00:00
L-Sun
2732b96d00
fix(editor): overflow of embed github card in edgeless note ( #10442 )
...
This PR fixes the overflow of the `embed-github-card` inside edgeless notes.
https://github.com/user-attachments/assets/21775d0f-e4c8-4fcc-86d8-aafb27033358
2025-02-26 09:33:57 +00:00
L-Sun
72b751943c
fix(editor): using click event instead of pointerDown event for page block ( #10351 )
...
Close [BS-2647](https://linear.app/affine-design/issue/BS-2647/ios返回手势会误触发focus导致弹起键盘 )
### What Changes:
- Using `click` event instead of `pointerDown` event to handle selection logic in page block, because gestures on mobile devices can trigger the `pointerDown` event, causing the cursor to update and unexpectedly bring up the virtual keyboard.
2025-02-21 13:19:51 +00:00
L-Sun
f79324b6a1
chore(editor): update shadow of ask-ai-panel ( #10336 )
...
Close [PD-2343](https://linear.app/affine-design/issue/PD-2343/[ui]-ai-面板-shadow-改为-overlaypanelshadow )
2025-02-21 06:12:05 +00:00
L-Sun
4fee2a9c4b
chore(editor): update some widget styles ( #10311 )
2025-02-20 15:39:48 +08:00
L-Sun
61ee5531f4
fix(core): incorrect root config identifier ( #10285 )
2025-02-19 08:20:22 +00:00
L-Sun
4e546c78ef
chore(core): remove template doc feature flag ( #10252 )
2025-02-18 09:25:06 +00:00
L-Sun
e639f08b71
chore(editor): remove page block feature flag ( #10251 )
2025-02-18 09:25:05 +00:00
L-Sun
85e413f8c8
chore(editor): add telemetry track to display mode of note ( #10192 )
...
Close [BS-2468](https://linear.app/affine-design/issue/BS-2468/analytics-for-page-block-polish )
2025-02-17 03:23:55 +00:00
L-Sun
35aec95022
chore(editor): adjust margin of edgeless page block title ( #10188 )
...


2025-02-14 11:44:00 +00:00
L-Sun
9d08f446cc
refactor(editor): remove redundant edgeless icons ( #10169 )
...
Continue [BS-2240](https://linear.app/affine-design/issue/BS-2240/%E6%B8%85%E7%90%86%E9%87%8D%E5%A4%8D%E7%9A%84icon )
This PR removes `icons/edgeless.ts` and refactor with `@blocksuite/icons` for reducing redundant icons
2025-02-14 05:03:26 +00:00
L-Sun
3ada4bee0d
chore(editor): adjust min width of edgeless note ( #10153 )
...
Close [BS-2499](https://linear.app/affine-design/issue/BS-2499/所有notes最小宽度调整为218px )
### What changes
- adjusted min width of edgeless note
- placeholder show ellipsis in min edgeless note
- refactored somes button of `change-note-button.ts` with `isPageBlock`
2025-02-13 12:40:14 +00:00
L-Sun
a7de6edfef
fix(editor): overflow of dragging preview of note card in ToC ( #10160 )
...
Close [BS-2503](https://linear.app/affine-design/issue/BS-2503/长note拖拽时会带着右侧边栏标题一起移动 )
2025-02-13 09:55:11 +00:00
L-Sun
dbf1d0038a
fix(edtiro): hide toc drag indicator on edgeless note ( #10135 )
...
Close [BS-2497](https://linear.app/affine-design/issue/BS-2497/隐藏edgeless-only的toc的dnd-indicator )
2025-02-13 04:18:12 +00:00
L-Sun
011c18de8b
fix(editor): hide collpased content during dragging note ( #10133 )
...
Close [BS-2531](https://linear.app/affine-design/issue/BS-2531/%E6%8B%96%E5%8A%A8%E6%8A%98%E5%8F%A0%E7%9A%84note%E6%97%B6%EF%BC%8C%E4%B8%8D%E6%98%BE%E7%A4%BA%E9%9A%90%E8%97%8F%E5%86%85%E5%AE%B9 ), [BS-2536](https://linear.app/affine-design/issue/BS-2536/page-block%E9%A1%B6%E9%83%A8toolbar )
2025-02-13 04:18:11 +00:00
L-Sun
9a17422d36
fix(editor): wrong position of remote selection and at menu in edgeless ( #10137 )
...
Close [BS-2552](https://linear.app/affine-design/issue/BS-2552/menu-loading-时滚动,定位错误 ), [BS-2490](https://linear.app/affine-design/issue/BS-2490/note-block-的menu的输入阴影错位 ), [BS-2300](https://linear.app/affine-design/issue/BS-2300/at-menu的输入阴影在暗黑模式看不见 )
### What Changes
- fix the position of remote selection mask and @ menu input mask in edgeless
- fix the position of @ menu is no updated during edgeless viewport change
- update @ menu mask color in dark mode
### Before
https://github.com/user-attachments/assets/f44f618e-a791-497a-9f53-74824fe48dea
### After
https://github.com/user-attachments/assets/5d87b999-deae-4435-9b8b-4cdf55393395
2025-02-13 01:56:01 +00:00
L-Sun
54d194afe7
fix(editor): set edgeless note style will override collapse state ( #10098 )
...
Close [BS-2489](https://linear.app/affine-design/issue/BS-2489/%E6%94%B9%E5%8F%98note-style%E4%BC%9A%E9%87%8D%E7%BD%AEcollapse%E7%8A%B6%E6%80%81 )
2025-02-11 14:29:25 +00:00
L-Sun
0b3c7a578e
fix(editor): collapsed page block visibility ( #10097 )
...
This PR fixed that doc title is not hidden when page block is collapsed
2025-02-11 14:29:24 +00:00
L-Sun
42bdae16fb
fix(editor): only render emoji in page block header ( #10096 )
2025-02-11 14:29:23 +00:00
L-Sun
401ce70153
refactor(core): remove the unused compareDate field from DocDisplayIconOptions ( #10095 )
2025-02-11 13:26:43 +00:00
L-Sun
a5f36eb1d8
refactor(editor): configurable page block title ( #10063 )
...
### What changes
- make page block title rendering configurable so that a journal title can be rendered by AFFiNE side.
- move page block render logic to a seperate component
2025-02-10 18:17:28 +00:00
L-Sun
23364b59a0
fix(editor): wrap doc title by default ( #10052 )
...
Close [AF-2195](https://linear.app/affine-design/issue/AF-2195/editor-的-title-overflow-时没有换行 )
2025-02-10 11:30:14 +00:00
L-Sun
9f56a21d8a
feat(editor): add animation for switching to edgeless mode firstly ( #10021 )
...
Close [BS-2327](https://linear.app/affine-design/issue/BS-2327/page-block-%E5%9C%A8-edgeless-%E5%88%87%E6%8D%A2%E7%BC%A9%E6%94%BE%E5%8A%A8%E7%94%BB )
### What Changes:
- Add a zoom animation when switching to edgeless mode firstly
- Move viewport record from `sessionStorage` to `localStorage`
https://github.com/user-attachments/assets/dac11aab-76bd-44b1-8c0e-4a8a10919841
2025-02-10 07:41:10 +00:00
L-Sun
459972fe6c
fix(editor): add missing zod schema for edgeless frame ( #10024 )
...
Related to https://github.com/toeverything/AFFiNE/pull/9970#discussion_r1944971309
### What changes:
- Add missing zod shcema for edgeless basic props
- Change `applyLastProps` to generic function for better return type inference of
- Fix: add `ZodIntersection` case to `makeDeepOptional`
2025-02-07 12:49:59 +00:00
L-Sun
891d9df0b1
feat(editor): show doc title in page block ( #9975 )
...
Close [BS-2392](https://linear.app/affine-design/issue/BS-2392/page-block-需要显示文章title )
### What Changes
- Add `<doc-title>` to edgeless page block (a.k.a the first page visible note block)
- Refactors:
- Move `<doc-title>` to `@blocksuite/affine-component`, but you can aslo import it from `@blocksuite/preset`
- Extract `<edgeless-note-mask>` and `<edgeless-note-background>` from `<affine-edgeless-note>` to a seperate file
- Rewrite styles of `<affine-edgeless-note>` with `@vanilla-extract/css`
https://github.com/user-attachments/assets/a0c03239-803e-4bfa-b30e-33b919213b12
2025-02-06 21:18:28 +00:00
L-Sun
f309f8f3e1
fix(ios): incorrect return of getBlob binding in ios ( #9995 )
2025-02-06 17:03:51 +00:00
L-Sun
829980bace
refactor(editor): toc dragging with std.dnd ( #9883 )
...
Close [BS-2458](https://linear.app/affine-design/issue/BS-2458/toc-dnd重构 )
### What Changes
- Refactor toc note card dnd with `std.dnd`
- Extract note display mode change to command `changeNoteDisplayMode`
- It will reorder notes when the display mode changed from `EdgelessOnly` to page mode visible (a.k.a `DocOnly` or `Both`)
2025-01-24 13:27:17 +00:00
L-Sun
351816b343
fix(editor): prevent errors when moving a block to its own position ( #9887 )
2025-01-24 12:55:55 +00:00
L-Sun
3f4311ff1c
chore(editor): add RTL experiement flag for editor ( #9882 )
2025-01-24 08:23:24 +00:00
L-Sun
79fe687b1a
fix(editor): render title in page block header using DocDisplayMetaService ( #9878 )
...
https://github.com/user-attachments/assets/24490a58-ef66-404a-b9cd-1e94d84c6f58
2025-01-23 12:51:55 +00:00
L-Sun
d6cfbec5c9
chore(editor): update notification message of change display mode of doc ( #9874 )
2025-01-23 10:40:24 +00:00
L-Sun
02bcecde72
refactor(editor): simplify TOC implementation with signal and context ( #9873 )
...
### What Changes
1. Used `@preact/signal` and `@lit/context` to simplify repetitive passing of properties of TOC components,
2. Fixed TOC invalid when editor changed, such as click new page button.
2025-01-23 17:01:04 +08:00
L-Sun
1b0758f111
refactor(editor): remove hard code icons from presets ( #9857 )
...
Related [BS-2240](https://linear.app/affine-design/issue/BS-2240/清理重复的icon )
2025-01-23 08:34:54 +00:00
L-Sun
4839f0f369
refactor(editor): shadowless TOC with valilla extract css ( #9856 )
...
Close [BS-2474](https://linear.app/affine-design/issue/BS-2474/使用shadowlesselement重构toc )
This PR refactor TOC with `ShadowlessElement` and `@valilla-extract/css`
2025-01-22 16:24:31 +00:00
L-Sun
29995e498a
feat(editor): add start-with-ai button for empty doc ( #9836 )
...
Close [BS-2391](https://linear.app/affine-design/issue/BS-2391/bs-ai-toolbar-空状态下添加-actions-列表 )
https://github.com/user-attachments/assets/cbded517-2d3d-4a75-b144-644e2b03f68a
2025-01-21 16:00:49 +00:00
L-Sun
16d4430ec9
test(editor): move tests of toc to affine ( #9833 )
2025-01-21 13:34:59 +00:00
L-Sun
7400cf225f
refactor(editor): highlight selected cards of TOC based on signal ( #9807 )
...
Close [BS-2314](https://linear.app/affine-design/issue/BS-2314/添加打开toc时,将note-block-高亮 ), [BS-1868](https://linear.app/affine-design/issue/BS-1868/toc-里面-note之间顺序可拖动性,在page和edgeless里面是不同的,这个是设计的行为么 ?)
This PR refactor the highlight logic of note cards of TOC panel:
- notes block selected in edgeless note
- notes block covered by text or block selection in page mode
- note cards selected in TOC for dragging
Other changes:
- remove not used codes
- add tests for highlight note cards
2025-01-21 07:50:57 +00:00
L-Sun
d2bde09ef6
fix(core): avoid multiple append right sidebar tab lit component ( #9806 )
...
This PR fixed that the TOC panel and frame panel will be connect and disconnect repeatly on the same instance. Similar issue: https://github.com/toeverything/AFFiNE/pull/9019#discussion_r1872635745
2025-01-21 02:32:35 +00:00
L-Sun
6ba802fb17
feat(editor): append note to page button ( #9762 )
...
Close [BS-2310](https://linear.app/affine-design/issue/BS-2310/note-display-in-page-%E7%9A%84%E8%A1%8C%E4%B8%BA ), [BS-2312](https://linear.app/affine-design/issue/BS-2312/edgeless-note-%E7%9A%84-element-toolbar-%E6%B7%BB%E5%8A%A0display-in-page%E6%8C%89%E9%92%AE ) and [BS-2313](https://linear.app/affine-design/issue/BS-2313/添加display-in-page的toast提示,以及打开toc的按钮 )
2025-01-19 08:35:02 +00:00
L-Sun
ad814a0f4f
feat(editor): add sidebar service ( #9761 )
2025-01-17 23:42:50 +08:00
L-Sun
d8727c2001
fix(editor): close embed edit modal on editor unmount ( #9765 )
...
Close [BS-2436](https://linear.app/affine-design/issue/BS-2436/should-close-embed-card-edit-modal-after-editor-unmount )
### What Changes:
- fix(editor): close embed edit modal on editor unmount
- test(editor): add test to embed edit modal when switching mode
2025-01-17 11:53:09 +00:00
L-Sun
c2149f218b
refactor(editor): enable toc dragging in page mode ( #9736 )
...
Related [BS-2322](https://linear.app/affine-design/issue/BS-2322/toc-排序坏掉部分的修复 )
2025-01-16 17:53:28 +00:00
L-Sun
969ac30874
fix(editor): reactive heading icon ( #9729 )
...
Close [BS-2407](https://linear.app/affine-design/issue/BS-2407/[bug]-edgeless-里选中-title-后更改,hint-没有改变 )
2025-01-16 08:32:15 +00:00
L-Sun
f7cbd21dd9
chore(debug): add vscode debug launch setting ( #9725 )
...
This PR allows vscode to add breakpoints to the editor's code.
2025-01-16 06:17:41 +00:00
L-Sun
9df338274d
chore(core): update tooltip of mode switcher ( #9711 )
...
Close [BS-2325](https://linear.app/affine-design/issue/BS-2325/tooltips-显示 )
https://github.com/user-attachments/assets/bd4c6045-8de1-4e72-87ab-2d1d3262e6b7
2025-01-15 12:22:37 +00:00
L-Sun
94c9717a35
feat(editor): edgeless page block toolbar ( #9707 )
...
Close [BS-2315](https://linear.app/affine-design/issue/BS-2315/page-block-header )
### What Changes
- Add header toolbar to page block (the first note in canvas)
- Add e2e tests
- Add some edgeless e2e test utils. **The package `@blocksuite/affine` was added to `"@affine-test/kit"`**
2025-01-15 12:04:44 +00:00
L-Sun
a0cba55a5b
feat(mobile): mobile toc menu ( #9582 )
...
Close [BS-1787](https://linear.app/affine-design/issue/BS-1787/toc-移动端适配 )
2025-01-08 08:03:11 +00:00
L-Sun
440239809c
refactor(editor): refactor page note empty checker ( #9570 )
...
Close [BS-2320](https://linear.app/affine-design/issue/BS-2320/内容为空的状态判断 )
2025-01-07 11:24:40 +00:00
L-Sun
6e0468c70a
chore(editor): revert padding and layout of code block toolbar ( #9562 )
...
Close [BS-1767](https://linear.app/affine-design/issue/BS-1767/code-block调整边距 )
This PR reverts padding and layout of code block toolbar.

2025-01-07 04:53:04 +00:00
L-Sun
ded17abf7e
fix(editor): add childElementIds to ai generated frame ( #9537 )
...
Close [BS-1354](https://linear.app/affine-design/issue/BS-1354/更新-ai-slide-template-到新的-frame )
This PR add `childElementIds` to frame block in ai presentation templates
2025-01-07 04:19:09 +00:00
L-Sun
b51de2ac4c
fix(editor): add index checking to selected elements array ( #9453 )
...
Close https://toeverything.sentry.io/issues/6187666983/?alert_rule_id=15031714&alert_type=issue¬ification_uuid=fe3f4b9d-1e86-420e-a715-c3ca0fa932e4&project=4506307500179456&referrer=slack
2024-12-31 08:05:13 +00:00
L-Sun
4c11537bef
feat(mobile): auto show text keyboard subtoolbar when selecting text ( #9256 )
...
Close [BS-1924](https://linear.app/affine-design/issue/BS-1924/文本选中后-切换toolbar )
https://github.com/user-attachments/assets/2361dfb9-82ae-4be3-808c-6ea33a70c84d
2024-12-24 04:11:00 +00:00
L-Sun
8e1ceec4f9
chore(editor): hide title of locked group ( #9261 )
...
Close [BS-2188](https://linear.app/affine-design/issue/BS-2188/[improvement]-多个yuan素-lock-后不渲染标签 )
2024-12-23 12:39:07 +00:00
L-Sun
f770daec0a
chore: update commit scope enum ( #9262 )
2024-12-23 12:39:05 +00:00
L-Sun
067469aa98
fix(component): prevent auto focus in mobile modal ( #9247 )
...
Continue [BS-2169](https://linear.app/affine-design/issue/BS-2169/新的-menu-不支持移动端 )
2024-12-23 09:56:58 +00:00
L-Sun
ba355d098d
chore: add vscode tasks.json to gitignore ( #9255 )
2024-12-23 09:42:02 +00:00
L-Sun
e378f591cb
fix(mobile): add missing mobile date selector and remove focus style from date picker in mobile ( #9215 )
...
Close [BS-2169](https://linear.app/affine-design/issue/BS-2169/新的-menu-不支持移动端 )
### What changes
- add missing date-selector for mobile
- remove focus style of date picker for mobile

2024-12-20 03:39:49 +00:00
L-Sun
720f6c6a58
chore(mobile): set doc readonly in edgeless mode ( #9068 )
...
Close [BS-1984](https://linear.app/affine-design/issue/BS-1984/edgeless-禁用编辑后,白板上,image-block-chat-block-可以移动 ), [BS-1918](https://linear.app/affine-design/issue/BS-1918/edgeless-移动端只读模式下,应当是单指移动,双指缩放 ), [BS-2035](https://linear.app/affine-design/issue/BS-2035/切换-edgeless-view-变为只读 )
2024-12-10 01:39:30 +00:00
L-Sun
b1c8fca25e
refactor(mobile): use bs mobile spec patch ( #9046 )
...
Close [BS-2068](https://linear.app/affine-design/issue/BS-2068/移动端-placeholder,去除-space-with-ai )
2024-12-06 09:07:20 +00:00
L-Sun
f7d20880af
test(core): add tests for card view with edgeless mode link ( #8887 )
...
Close [BS-1881](https://linear.app/affine-design/issue/BS-1881/page内的edgeless-embed-缩放和坐标定位不太对 ), [BS-1907](https://linear.app/affine-design/issue/BS-1907/mode=edgeless的cardview转成embed,丢失了mode信息 ), related PR https://github.com/toeverything/blocksuite/pull/8785 , https://github.com/toeverything/blocksuite/pull/8790
This PR adds a test for the fit-to-content feature of the viewport for the embed doc block in edgeless mode.
2024-12-04 08:59:33 +00:00
L-Sun
a8938ab403
chore(mobile): disable reference popup on mobile ( #8743 )
...
This PR disable reference node popup on mobile. Close [BS-1730](https://linear.app/affine-design/issue/BS-1730/%E7%A6%81%E7%94%A8-block-yuan%E7%B4%A0%E7%9A%84-toolbar )
2024-11-14 04:47:31 +00:00
L-Sun
81fc9e1aa1
fix(mobile): typo of identifier when override config ( #8773 )
...
Fixed a typo in the mobile patches where the wrong identifier was being used to override `affine:page` configs.
2024-11-12 02:24:14 +00:00
L-Sun
1284f33a4b
chore(mobile): disable some toolbar widgets for mobile ( #8742 )
...
This PR disable some toolbar widgets on mobile. Close [BS-1730](https://linear.app/affine-design/issue/BS-1730/%E7%A6%81%E7%94%A8-block-yuan%E7%B4%A0%E7%9A%84-toolbar )
2024-11-11 03:55:28 +00:00
L-Sun
5f40fbc69c
feat(mobile): mobile at menu ( #8727 )
...
Close [BS-1608](https://linear.app/affine-design/issue/BS-1608/mobile-menu ), related PR: https://github.com/toeverything/blocksuite/pull/8681
2024-11-08 11:06:12 +00:00
L-Sun
1973cea035
fix(mobile): incorrect height of keyboard toolbar in ios ( #8653 )
...
### What Changes:
- Fix keyboard height calculation with the `KeyboardToolBarConfig.useScreenHeight = true`. More detials in: https://github.com/toeverything/blocksuite/pull/8645
- Add safe bottom padding for shrinked keyboard toolbar
- Add `VirtualKeyboard` polyfill. Close [AF-1573](https://linear.app/affine-design/issue/AF-1573/virtualkeyboard-polyfill-with-capacitor )
- Since the `@capacitor/keyboard` dose not implement the `Keyboard.show()` method, this polyfill is not enabled now.
2024-11-01 05:48:30 +00:00
L-Sun
50bae9c3e6
feat(mobile): enable mobile keyboard toolbar ( #8633 )
2024-10-30 08:07:58 +00:00
L-Sun
8696043757
test(core): update outline viewer test in shared page ( #8445 )
...
Close [BS-1573](https://linear.app/affine-design/issue/BS-1537/share-page-中-toc-不应该有-[open-in-sidebar]-选项 ), Related PR: https://github.com/toeverything/blocksuite/pull/8493
2024-10-10 04:29:55 +00:00
L-Sun
9c8e8d74b6
chore(core): update full width layout padding of peekview ( #8446 )
...
Close [BS-1378](https://linear.app/affine-design/issue/BS-1378/center-peek-全宽布局padding错误 ), related to [AF-1052]( https://linear.app/affine-design/issue/AF-1052/embed-view-候选区域-full-screen-时显示异常,需要修改-padding )
2024-10-08 05:32:04 +00:00
L-Sun
afb21f734e
fix(core): fix position of toc in peekview ( #8441 )
...
Close [BS-1536](https://linear.app/affine-design/issue/BS-1536/peekview中的toc没有fixed )
2024-10-08 02:44:33 +00:00