Merge pull request #302 from toeverything/refactor/variable

refactor: change activatable to editable in BaseVeiw
This commit is contained in:
Qi 2022-08-22 22:26:03 +08:00 committed by GitHub
commit 6f1833ded3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 23 additions and 23 deletions

View File

@ -16,7 +16,7 @@ import { ComponentType } from 'react';
export class CodeBlock extends BaseView {
type = Protocol.Block.Type.code;
public override selectable = true;
public override activatable = false;
public override editable = false;
// View = CodeView;
View = CodeView;
override async onCreate(block: AsyncBlock): Promise<AsyncBlock> {

View File

@ -8,7 +8,7 @@ import { EmbedLinkView } from './EmbedLinkView';
export class EmbedLinkBlock extends BaseView {
public override selectable = true;
public override activatable = false;
public override editable = false;
type = Protocol.Block.Type.embedLink;
View = EmbedLinkView;

View File

@ -8,7 +8,7 @@ import { FigmaView } from './FigmaView';
export class FigmaBlock extends BaseView {
public override selectable = true;
public override activatable = false;
public override editable = false;
type = Protocol.Block.Type.figma;
View = FigmaView;

View File

@ -12,7 +12,7 @@ import { FileView } from './FileView';
export class FileBlock extends BaseView {
public override selectable = true;
public override activatable = false;
public override editable = false;
type = Protocol.Block.Type.file;
View = FileView;

View File

@ -6,7 +6,7 @@ import { GridItemRender } from './GridItemRender';
export class GridItemBlock extends BaseView {
public override selectable = false;
public override activatable = false;
public override editable = false;
public override allowPendant = false;
public override layoutOnly = true;

View File

@ -7,7 +7,7 @@ export { GRID_PROPERTY_KEY, removePercent } from './Grid';
export class GridBlock extends BaseView {
public override selectable = false;
public override activatable = false;
public override editable = false;
public override allowPendant = false;
public override layoutOnly = true;

View File

@ -9,7 +9,7 @@ import { GroupView } from './GroupView';
export class Group extends BaseView {
public override selectable = true;
public override activatable = false;
public override editable = false;
public override allowPendant = false;
type = Protocol.Block.Type.group;

View File

@ -8,7 +8,7 @@ import { ImageView } from './ImageView';
export class ImageBlock extends BaseView {
public override selectable = true;
public override activatable = false;
public override editable = false;
type = Protocol.Block.Type.image;
View = ImageView;

View File

@ -8,7 +8,7 @@ import { YoutubeView } from './YoutubeView';
export class YoutubeBlock extends BaseView {
public override selectable = true;
public override activatable = false;
public override editable = false;
type = Protocol.Block.Type.youtube;
View = YoutubeView;

View File

@ -408,13 +408,13 @@ export class SelectionManager implements VirgoSelection {
/**
*
* get previous activatable blockNode
* get previous editable blockNode
* @private
* @param {AsyncBlock} node
* @return {*} {(Promise<AsyncBlock | null>)}
* @memberof SelectionManager
*/
private async _getPreviousActivatableBlockNode(
private async _getPreviousEditableBlockNode(
node: AsyncBlock
): Promise<AsyncBlock | null> {
const preNode = await node.physicallyPerviousSibling();
@ -422,8 +422,8 @@ export class SelectionManager implements VirgoSelection {
if (!preNode) {
return null;
}
const { activatable, selectable } = this._editor.getView(preNode.type);
if (activatable) {
const { editable, selectable } = this._editor.getView(preNode.type);
if (editable) {
this.setSelectedNodesIds([]);
return preNode;
}
@ -432,18 +432,18 @@ export class SelectionManager implements VirgoSelection {
(document.activeElement as HTMLInputElement)?.blur();
return null;
}
return this._getPreviousActivatableBlockNode(preNode);
return this._getPreviousEditableBlockNode(preNode);
}
/**
*
* get next activatable blockNode
* get next editable blockNode
* @private
* @param {AsyncBlock} node
* @return {*} {(Promise<AsyncBlock | null>)}
* @memberof SelectionManager
*/
private async _getNextActivatableBlockNode(
private async _getNextEditableBlockNode(
node: AsyncBlock,
ignoreSelf = true
): Promise<AsyncBlock | null> {
@ -482,8 +482,8 @@ export class SelectionManager implements VirgoSelection {
}
}
const { activatable, selectable } = this._editor.getView(nextNode.type);
if (activatable) {
const { editable, selectable } = this._editor.getView(nextNode.type);
if (editable) {
this.setSelectedNodesIds([]);
return nextNode;
}
@ -492,7 +492,7 @@ export class SelectionManager implements VirgoSelection {
(document.activeElement as HTMLInputElement)?.blur();
return null;
}
return this._getNextActivatableBlockNode(nextNode);
return this._getNextEditableBlockNode(nextNode);
}
/**
@ -513,7 +513,7 @@ export class SelectionManager implements VirgoSelection {
return;
}
}
preNode = await this._getPreviousActivatableBlockNode(node);
preNode = await this._getPreviousEditableBlockNode(node);
if (preNode) {
this.activeNodeByNodeId(preNode.id, position);
}
@ -622,7 +622,7 @@ export class SelectionManager implements VirgoSelection {
}
}
nextNode = await this._getNextActivatableBlockNode(node);
nextNode = await this._getNextEditableBlockNode(node);
if (nextNode) {
this.activeNodeByNodeId(nextNode.id, position);
}

View File

@ -36,10 +36,10 @@ export abstract class BaseView {
abstract type: string;
/**
* activatable means can be focused
* editable means can be focused
* @memberof BaseView
*/
public activatable = true;
public editable = true;
public selectable = true;