diff --git a/app/appearance/langs/en_US.json b/app/appearance/langs/en_US.json index 91f325427..2269e4ac8 100644 --- a/app/appearance/langs/en_US.json +++ b/app/appearance/langs/en_US.json @@ -1,4 +1,5 @@ { + "commandEmpty": "No command yet, click to go to the market to download more plugins", "commandPanel": "Command Palette", "cloudRegionNorthAmerica": "LiuYun (Data Center in North America)", "cloudRegionChina": "LianDi (Data Center in Mainland China)", diff --git a/app/appearance/langs/es_ES.json b/app/appearance/langs/es_ES.json index 46c2fbbbf..0df06a469 100644 --- a/app/appearance/langs/es_ES.json +++ b/app/appearance/langs/es_ES.json @@ -1,4 +1,5 @@ { + "commandEmpty": "Sin comando todavía, haga clic para ir al mercado para descargar más complementos", "commandPanel": "Paleta de comandos", "cloudRegionNorthAmerica": "LiuYun (Centro de datos en América del Norte)", "cloudRegionChina": "LianDi (Centro de datos en China continental)", diff --git a/app/appearance/langs/fr_FR.json b/app/appearance/langs/fr_FR.json index e5cf66603..df388addf 100644 --- a/app/appearance/langs/fr_FR.json +++ b/app/appearance/langs/fr_FR.json @@ -1,4 +1,5 @@ { + "commandEmpty": "Aucune commande pour le moment, cliquez pour aller sur le marché pour télécharger plus de plugins", "commandPanel": "Palette de commandes", "cloudRegionNorthAmerica": "LiuYun (centre de données en Amérique du Nord)", "cloudRegionChina": "LianDi (centre de données en Chine continentale)", diff --git a/app/appearance/langs/zh_CHT.json b/app/appearance/langs/zh_CHT.json index c130e2671..ee21c297d 100644 --- a/app/appearance/langs/zh_CHT.json +++ b/app/appearance/langs/zh_CHT.json @@ -1,4 +1,5 @@ { + "commandEmpty": "暫無命令,點擊前往集市下載更多插件", "commandPanel": "命令面板", "cloudRegionNorthAmerica": "流雲(北美數據中心)", "cloudRegionChina": "鏈滴(中國大陸數據中心)", diff --git a/app/appearance/langs/zh_CN.json b/app/appearance/langs/zh_CN.json index 4791c516f..aa96919ea 100644 --- a/app/appearance/langs/zh_CN.json +++ b/app/appearance/langs/zh_CN.json @@ -1,4 +1,5 @@ { + "commandEmpty": "暂无命令,点击前往集市下载更多插件", "commandPanel": "命令面板", "cloudRegionNorthAmerica": "流云(北美数据中心)", "cloudRegionChina": "链滴(中国大陆数据中心)", diff --git a/app/src/layout/topBar.ts b/app/src/layout/topBar.ts index 873286da4..7e3d12beb 100644 --- a/app/src/layout/topBar.ts +++ b/app/src/layout/topBar.ts @@ -304,6 +304,21 @@ export const setZoom = (type: "zoomIn" | "zoomOut" | "restore") => { const openPlugin = (app: App, target: Element) => { const menu = new Menu("topBarPlugin"); + menu.addItem({ + icon: "iconSettings", + label: window.siyuan.languages.config, + click() { + openSetting(app).element.querySelector('.b3-tab-bar [data-name="bazaar"]').dispatchEvent(new CustomEvent("click")); + } + }); + menu.addItem({ + icon: "iconLayoutBottom", + label: window.siyuan.languages.commandPanel, + click() { + commandPanel(app); + } + }); + menu.addSeparator(); let hasPlugin = false; app.plugins.forEach((plugin) => { // @ts-ignore @@ -366,25 +381,9 @@ const openPlugin = (app: App, target: Element) => { }); } }); - - if (hasPlugin) { - menu.addSeparator(); + if (!hasPlugin) { + window.siyuan.menus.menu.element.querySelector(".b3-menu__separator").remove() } - menu.addItem({ - icon: "iconSettings", - label: window.siyuan.languages.config, - click() { - const dialogSetting = openSetting(app); - dialogSetting.element.querySelector('.b3-tab-bar [data-name="bazaar"]').dispatchEvent(new CustomEvent("click")); - } - }); - menu.addItem({ - icon: "iconLayoutBottom", - label: window.siyuan.languages.commandPanel, - click() { - commandPanel(); - } - }); let rect = target.getBoundingClientRect(); if (rect.width === 0) { rect = document.querySelector("#barMore").getBoundingClientRect(); diff --git a/app/src/plugin/commandPanel.ts b/app/src/plugin/commandPanel.ts index 2ddfda4be..967018a9c 100644 --- a/app/src/plugin/commandPanel.ts +++ b/app/src/plugin/commandPanel.ts @@ -1,8 +1,87 @@ import {Dialog} from "../dialog"; +import {App} from "../index"; +import {upDownHint} from "../util/upDownHint"; +import {openSetting} from "../config"; -export const commandPanel = () => { - const panel = new Dialog({ - title: window.siyuan.languages.commandPanel, - content:`
` +export const commandPanel = (app: App) => { + const dialog = new Dialog({ + width: "80vw", + height: "70vh", + content: `