diff --git a/app/appearance/langs/en_US.json b/app/appearance/langs/en_US.json index f08b8ec49..b5be04e4d 100644 --- a/app/appearance/langs/en_US.json +++ b/app/appearance/langs/en_US.json @@ -1,4 +1,5 @@ { + "loadMore": "Load more", "tempUnlock": "Temporarily unlock", "cancelTempUnlock": "Cancel temporary unlock", "addFilter": "Add filter", diff --git a/app/appearance/langs/es_ES.json b/app/appearance/langs/es_ES.json index 3bc0e906e..c0204cf73 100644 --- a/app/appearance/langs/es_ES.json +++ b/app/appearance/langs/es_ES.json @@ -1,4 +1,5 @@ { + "loadMore": "Cargar más", "tempUnlock": "Desbloquear temporalmente", "cancelTempUnlock": "Cancelar desbloqueo temporal", "addFilter": "Agregar filtro", diff --git a/app/appearance/langs/fr_FR.json b/app/appearance/langs/fr_FR.json index abf03aedd..a07d13987 100644 --- a/app/appearance/langs/fr_FR.json +++ b/app/appearance/langs/fr_FR.json @@ -1,4 +1,5 @@ { + "loadMore": "Charger plus", "tempUnlock": "Déverrouiller temporairement", "cancelTempUnlock": "Annuler le déverrouillage temporaire", "addFilter": "Ajouter un filtre", diff --git a/app/appearance/langs/zh_CHT.json b/app/appearance/langs/zh_CHT.json index d6a9cf3da..fdddcb6f2 100644 --- a/app/appearance/langs/zh_CHT.json +++ b/app/appearance/langs/zh_CHT.json @@ -1,4 +1,5 @@ { + "loadMore": "載入更多", "tempUnlock": "暫時解鎖", "cancelTempUnlock": "取消暫時解鎖", "addFilter": "新增篩選條件", diff --git a/app/appearance/langs/zh_CN.json b/app/appearance/langs/zh_CN.json index 8d7ce494c..0ed80965e 100644 --- a/app/appearance/langs/zh_CN.json +++ b/app/appearance/langs/zh_CN.json @@ -1,4 +1,5 @@ { + "loadMore": "加载更多", "tempUnlock": "临时解锁", "cancelTempUnlock": "取消临时解锁", "addFilter": "添加筛选条件", diff --git a/app/src/protyle/render/av/action.ts b/app/src/protyle/render/av/action.ts index a97fd46a9..d8b72bfb5 100644 --- a/app/src/protyle/render/av/action.ts +++ b/app/src/protyle/render/av/action.ts @@ -77,6 +77,23 @@ export const avClick = (protyle: IProtyle, event: MouseEvent & { target: HTMLEle event.preventDefault(); event.stopPropagation(); return true; + } else if (type === "av-add-more") { + const avID = blockElement.getAttribute("data-av-id"); + const srcIDs = [Lute.NewNodeID()]; + transaction(protyle, [{ + action: "insertAttrViewBlock", + avID, + srcIDs, + isDetached: true, + }], [{ + action: "removeAttrViewBlock", + srcIDs, + avID, + }]); + insertAttrViewBlockAnimation(blockElement, 1, undefined, avID); + event.preventDefault(); + event.stopPropagation(); + return true; } else if (type === "av-more") { openMenuPanel({protyle, blockElement, type: "config"}); event.preventDefault(); diff --git a/app/src/protyle/render/av/render.ts b/app/src/protyle/render/av/render.ts index 321fec171..52ec9ef3f 100644 --- a/app/src/protyle/render/av/render.ts +++ b/app/src/protyle/render/av/render.ts @@ -239,6 +239,10 @@ ${cell.color ? `color:${cell.color};` : ""}">${text}`;
+ + + + ${response.data.isMirror ? ` ` : ""} @@ -252,6 +256,10 @@ ${cell.color ? `color:${cell.color};` : ""}">${text}`;