diff --git a/apps/venus/src/app/common/Footer.tsx b/apps/venus/src/app/common/Footer.tsx
index d13ae5bb25..d8cc674223 100644
--- a/apps/venus/src/app/common/Footer.tsx
+++ b/apps/venus/src/app/common/Footer.tsx
@@ -2,7 +2,7 @@
/* eslint-disable @typescript-eslint/naming-convention */
import { useTranslation } from 'react-i18next';
-import { Box, Button, Grid, Typography } from '@mui/joy';
+import { Box, Button, Grid, styled, Typography } from '@mui/joy';
import GitHubIcon from '@mui/icons-material/GitHub';
import RedditIcon from '@mui/icons-material/Reddit';
@@ -361,7 +361,14 @@ export const AFFiNEFooter = ({
>
#OpenSource
- company
+ software, built with
+
+ BlockSuite
+
@@ -383,3 +390,13 @@ export const AFFiNEFooter = ({
>
);
};
+
+const StyledLink = styled('a')({
+ fontWeight: '900',
+ color: '#000',
+ textDecoration: 'none',
+
+ '&:hover': {
+ textDecoration: 'underline',
+ },
+});
diff --git a/libs/components/common/src/lib/text/EditableText.tsx b/libs/components/common/src/lib/text/EditableText.tsx
index 87c111544a..ba7ffad621 100644
--- a/libs/components/common/src/lib/text/EditableText.tsx
+++ b/libs/components/common/src/lib/text/EditableText.tsx
@@ -551,9 +551,9 @@ export const Text = forwardRef((props, ref) => {
}
}
// markdown interception
- if (supportMarkdown && !!handleMarkdown(e)) {
- const start_selection = utils.current.getStartSelection();
- utils.current.setSelection(start_selection);
+ if (supportMarkdown && handleMarkdown(e)) {
+ const endOfMarkdown = utils.current.getEndSelection();
+ utils.current.setSelection(endOfMarkdown);
e.preventDefault();
return true;
}
diff --git a/libs/components/editor-core/src/editor/commands/block-commands.ts b/libs/components/editor-core/src/editor/commands/block-commands.ts
index f156bd627a..bb6ba6eadf 100644
--- a/libs/components/editor-core/src/editor/commands/block-commands.ts
+++ b/libs/components/editor-core/src/editor/commands/block-commands.ts
@@ -46,12 +46,14 @@ export class BlockCommands {
*
* remove block by block id
* @param {string} blockId
+ * @param onDelete Delete Block's LeftMenuDraggable
* @memberof BlockCommands
*/
- public async removeBlock(blockId: string) {
+ public async removeBlock(blockId: string, onDelete?: () => void) {
const block = await this._editor.getBlockById(blockId);
if (block) {
- block.remove();
+ onDelete();
+ await block.remove();
}
}
diff --git a/libs/components/editor-plugins/src/menu/left-menu/LeftMenu.tsx b/libs/components/editor-plugins/src/menu/left-menu/LeftMenu.tsx
index 731b6ea42e..c951d7600f 100644
--- a/libs/components/editor-plugins/src/menu/left-menu/LeftMenu.tsx
+++ b/libs/components/editor-plugins/src/menu/left-menu/LeftMenu.tsx
@@ -18,17 +18,21 @@ interface LeftMenuProps {
editor?: Virgo;
hooks: PluginHooks;
blockId: string;
+ onDelete: () => void;
}
export function LeftMenu(props: LeftMenuProps) {
- const { editor, anchorEl, hooks, blockId, onClose } = props;
+ const { editor, anchorEl, hooks, blockId, onClose, onDelete } = props;
const { t } = useTranslation();
const menu: CascaderItemProps[] = useMemo(
() => [
{
title: t('Delete'),
- callback: () => {
- editor.commands.blockCommands.removeBlock(blockId);
+ callback: async () => {
+ await editor.commands.blockCommands.removeBlock(
+ blockId,
+ onDelete
+ );
},
shortcut: 'Del',
icon: ,
diff --git a/libs/components/editor-plugins/src/menu/left-menu/LeftMenuDraggable.tsx b/libs/components/editor-plugins/src/menu/left-menu/LeftMenuDraggable.tsx
index 71e11e4679..4701c6c312 100644
--- a/libs/components/editor-plugins/src/menu/left-menu/LeftMenuDraggable.tsx
+++ b/libs/components/editor-plugins/src/menu/left-menu/LeftMenuDraggable.tsx
@@ -165,6 +165,10 @@ export const LeftMenuDraggable = (props: LeftMenuProps) => {
setAnchorEl(currentTarget);
};
+ const onDelete = useCallback(() => {
+ setBlock(undefined);
+ }, []);
+
const onClose = useCallback(() => setAnchorEl(undefined), [setAnchorEl]);
useEffect(() => {
@@ -241,6 +245,7 @@ export const LeftMenuDraggable = (props: LeftMenuProps) => {
editor={props.editor}
hooks={props.hooks}
onClose={onClose}
+ onDelete={onDelete}
blockId={block.block.id}
>