mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-23 13:29:02 +08:00
@@ -18,7 +18,6 @@ import { useI18n } from '@affine/i18n';
|
||||
import {
|
||||
DeleteIcon,
|
||||
DeletePermanentlyIcon,
|
||||
DualLinkIcon,
|
||||
DuplicateIcon,
|
||||
EditIcon,
|
||||
FavoritedIcon,
|
||||
@@ -27,6 +26,7 @@ import {
|
||||
FilterMinusIcon,
|
||||
InformationIcon,
|
||||
MoreVerticalIcon,
|
||||
OpenInNewIcon,
|
||||
PlusIcon,
|
||||
ResetIcon,
|
||||
SplitViewIcon,
|
||||
@@ -39,7 +39,6 @@ import {
|
||||
WorkspaceService,
|
||||
} from '@toeverything/infra';
|
||||
import { useCallback, useState } from 'react';
|
||||
import { Link } from 'react-router-dom';
|
||||
|
||||
import type { CollectionService } from '../../modules/collection';
|
||||
import { InfoModal } from '../affine/page-properties';
|
||||
@@ -49,7 +48,7 @@ import * as styles from './list.css';
|
||||
import { DisablePublicSharing, MoveToTrash } from './operation-menu-items';
|
||||
import { CreateOrEditTag } from './tags/create-tag';
|
||||
import type { TagMeta } from './types';
|
||||
import { ColWrapper, stopPropagationWithoutPrevent } from './utils';
|
||||
import { ColWrapper } from './utils';
|
||||
import { useEditCollection, useEditCollectionName } from './view';
|
||||
|
||||
const tooltipSideTop = { side: 'top' as const };
|
||||
@@ -100,6 +99,10 @@ export const PageOperationCell = ({
|
||||
workbench.openDoc(page.id, { at: 'tail' });
|
||||
}, [page.id, workbench]);
|
||||
|
||||
const onOpenInNewTab = useCallback(() => {
|
||||
workbench.openDoc(page.id, { at: 'new-tab' });
|
||||
}, [page.id, workbench]);
|
||||
|
||||
const onToggleFavoritePage = useCallback(() => {
|
||||
const status = favAdapter.isFavorite(page.id, 'doc');
|
||||
favAdapter.toggle(page.id, 'doc');
|
||||
@@ -173,6 +176,17 @@ export const PageOperationCell = ({
|
||||
</MenuItem>
|
||||
) : null}
|
||||
|
||||
<MenuItem
|
||||
onClick={onOpenInNewTab}
|
||||
preFix={
|
||||
<MenuIcon>
|
||||
<OpenInNewIcon />
|
||||
</MenuIcon>
|
||||
}
|
||||
>
|
||||
{t['com.affine.workbench.tab.page-menu-open']()}
|
||||
</MenuItem>
|
||||
|
||||
{environment.isDesktop && appSettings.enableMultiView ? (
|
||||
<MenuItem
|
||||
onClick={onOpenInSplitView}
|
||||
@@ -186,27 +200,6 @@ export const PageOperationCell = ({
|
||||
</MenuItem>
|
||||
) : null}
|
||||
|
||||
{!environment.isDesktop && (
|
||||
<Link
|
||||
className={styles.clearLinkStyle}
|
||||
onClick={stopPropagationWithoutPrevent}
|
||||
to={`/workspace/${currentWorkspace.id}/${page.id}`}
|
||||
target={'_blank'}
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<MenuItem
|
||||
style={{ marginBottom: 4 }}
|
||||
preFix={
|
||||
<MenuIcon>
|
||||
<DualLinkIcon />
|
||||
</MenuIcon>
|
||||
}
|
||||
>
|
||||
{t['com.affine.openPageOperation.newTab']()}
|
||||
</MenuItem>
|
||||
</Link>
|
||||
)}
|
||||
|
||||
<MenuItem
|
||||
preFix={
|
||||
<MenuIcon>
|
||||
|
||||
@@ -12,6 +12,7 @@ import {
|
||||
FavoritedIcon,
|
||||
FavoriteIcon,
|
||||
FilterIcon,
|
||||
OpenInNewIcon,
|
||||
PlusIcon,
|
||||
SplitViewIcon,
|
||||
} from '@blocksuite/icons/rc';
|
||||
@@ -79,6 +80,10 @@ export const CollectionOperations = ({
|
||||
workbench.openCollection(collection.id, { at: 'tail' });
|
||||
}, [collection.id, workbench]);
|
||||
|
||||
const openCollectionNewTab = useCallback(() => {
|
||||
workbench.openCollection(collection.id, { at: 'new-tab' });
|
||||
}, [collection.id, workbench]);
|
||||
|
||||
const favAdapter = useService(CompatibleFavoriteItemsAdapter);
|
||||
|
||||
const onToggleFavoritePage = useCallback(() => {
|
||||
@@ -153,6 +158,15 @@ export const CollectionOperations = ({
|
||||
: t['com.affine.favoritePageOperation.add'](),
|
||||
click: onToggleFavoritePage,
|
||||
},
|
||||
{
|
||||
icon: (
|
||||
<MenuIcon>
|
||||
<OpenInNewIcon />
|
||||
</MenuIcon>
|
||||
),
|
||||
name: t['com.affine.workbench.tab.page-menu-open'](),
|
||||
click: openCollectionNewTab,
|
||||
},
|
||||
...(appSettings.enableMultiView
|
||||
? [
|
||||
{
|
||||
@@ -189,6 +203,7 @@ export const CollectionOperations = ({
|
||||
onAddDocToCollection,
|
||||
favorite,
|
||||
onToggleFavoritePage,
|
||||
openCollectionNewTab,
|
||||
appSettings.enableMultiView,
|
||||
openCollectionSplitView,
|
||||
service,
|
||||
|
||||
Reference in New Issue
Block a user