Compare commits

..

No commits in common. "bf9da854c7d99e9f910ed63b4f1db9c9ca594e66" and "2053491782949b7b904dcfe974126e3a37bf4007" have entirely different histories.

6 changed files with 61 additions and 80 deletions

View File

@ -8,37 +8,37 @@
>
<a-menu-item key="finder">
<template #icon>
<StarOutlined style="font-size: 16px" />
<StarOutlined style="font-size: 18px;" />
</template>
{{ $t('feature.market.explore') }}
</a-menu-item>
<a-menu-item key="worker">
<template #icon>
<SendOutlined style="transform: rotate(-45deg); font-size: 16px" />
<SendOutlined style="transform: rotate(-45deg); font-size: 18px;" />
</template>
{{ $t('feature.market.efficiency') }}
</a-menu-item>
<a-menu-item key="tools">
<template #icon>
<SearchOutlined style="font-size: 16px" />
<SearchOutlined style="font-size: 18px;" />
</template>
{{ $t('feature.market.searchTool') }}
</a-menu-item>
<a-menu-item key="image">
<template #icon>
<FileImageOutlined style="font-size: 16px" />
<FileImageOutlined style="font-size: 18px;" />
</template>
{{ $t('feature.market.imageTool') }}
</a-menu-item>
<a-menu-item key="devPlugin">
<template #icon>
<CodeOutlined style="font-size: 16px" />
<CodeOutlined style="font-size: 18px;" />
</template>
{{ $t('feature.market.developTool') }}
</a-menu-item>
<a-menu-item key="system">
<template #icon>
<DatabaseOutlined style="font-size: 16px" />
<DatabaseOutlined style="font-size: 18px;" />
</template>
{{ $t('feature.market.systemTool') }}
</a-menu-item>
@ -72,21 +72,7 @@
</a-sub-menu>
</a-menu>
</div>
<div
:class="
[
'finder',
'result',
'devPlugin',
'image',
'tools',
'worker',
'system',
].includes(active[0])
? 'container'
: 'more'
"
>
<div :class="['finder', 'result', 'devPlugin', 'image', 'tools', 'worker', 'system'].includes(active[0]) ? 'container' : 'more'">
<keep-alive>
<router-view />
</keep-alive>
@ -117,14 +103,14 @@ const active = computed(() => store.state.active);
const { perf } = localConfig.getConfig();
const changeMenu = (key: any) => {
store.commit('commonUpdate', { active: [key] });
store.commit('commonUpdate', {active: [key]})
router.push(key);
};
window.rubick.onPluginEnter(({ code }: { code: string }) => {
code = code === '已安装插件' ? 'installed' : code;
changeMenu(code);
store.commit('commonUpdate', { active: [code] });
store.commit('commonUpdate', {active: [code]})
});
window.rubick.setSubInput((e: any) => {
@ -143,7 +129,7 @@ window.rubick.setSubInput((e: any) => {
store.commit('setSearchValue', e.text);
router.push('result');
} else {
store.commit('commonUpdate', { active: ['finder'] });
store.commit('commonUpdate', {active: ['finder']})
router.push('finder');
}
}
@ -158,16 +144,13 @@ init();
background: var(--color-body-bg2) !important;
height: 100%;
border-right: none;
.ant-menu-item,
.ant-menu-submenu,
.ant-menu-submenu-arrow {
.ant-menu-item, .ant-menu-submenu, .ant-menu-submenu-arrow {
color: var(--color-text-content);
&:active {
background: none;
}
}
.ant-menu-item-selected,
.ant-menu-submenu-selected {
.ant-menu-item-selected, .ant-menu-submenu-selected {
background-color: var(--color-list-hover);
color: var(--ant-primary-color);
.ant-menu-submenu-arrow {
@ -220,12 +203,9 @@ init();
background: var(--color-body-bg2);
}
.left-menu {
padding: 16px;
padding: 24px 16px;
position: relative;
height: 100vh;
:deep(.ant-menu) {
width: 100%;
}
:deep(.ant-menu-item) {
padding-left: 12px !important;
display: flex;
@ -239,14 +219,7 @@ init();
}
:deep(.user-info) {
position: absolute;
bottom: 16px;
width: calc(100% - 32px);
.ant-menu-submenu-title {
padding: 0 32px 0 8px;
.ant-menu-title-content {
margin-left: 8px;
}
}
bottom: 32px;
}
:deep(.ant-avatar) {
background: transparent;

View File

@ -1,6 +1,6 @@
{
"name": "rubick",
"version": "4.2.5",
"version": "4.2.4",
"author": "muwoo <2424880409@qq.com>",
"private": true,
"scripts": {

View File

@ -175,29 +175,31 @@ export default () => {
const removeView = (window: BrowserWindow) => {
if (!view) return;
window.removeBrowserView(view);
if (!view.inDetach) {
window.setBrowserView(null);
view.webContents?.destroy();
}
// window.setSize(800, 60);
executeHooks('PluginOut', null);
setTimeout(() => {
window.removeBrowserView(view);
if (!view.inDetach) {
window.setBrowserView(null);
view.webContents?.destroy();
}
window.webContents?.executeJavaScript(`window.initRubick()`);
view = undefined;
}, 0);
window.webContents?.executeJavaScript(`window.initRubick()`);
view = undefined;
};
const getView = () => view;
const executeHooks = (hook, data) => {
if (!view) return;
const evalJs = `if(window.rubick && window.rubick.hooks && typeof window.rubick.hooks.on${hook} === 'function' ) {
setTimeout(() => {
if (!view) return;
const evalJs = `if(window.rubick && window.rubick.hooks && typeof window.rubick.hooks.on${hook} === 'function' ) {
try {
window.rubick.hooks.on${hook}(${data ? JSON.stringify(data) : ''});
} catch(e) {}
}
`;
view.webContents?.executeJavaScript(evalJs);
view.webContents?.executeJavaScript(evalJs);
}, 300);
};
return {

View File

@ -128,8 +128,8 @@ class API extends DBInstance {
}
public removePlugin(e, window) {
runnerInstance.removeView(window);
this.currentPlugin = null;
runnerInstance.removeView(window);
}
public openPluginDevTools() {
@ -211,10 +211,11 @@ class API extends DBInstance {
if (!Notification.isSupported()) return;
'string' != typeof body && (body = String(body));
const plugin = this.currentPlugin;
if (!plugin) return;
const notify = new Notification({
title: plugin ? plugin.pluginName : null,
title: plugin.pluginName,
body,
icon: plugin ? plugin.logo : null,
icon: plugin.logo,
});
notify.show();
}

View File

@ -1,5 +1,8 @@
<template>
<div id="components-layout" @mousedown="onMouseDown">
<div
id="components-layout"
@mousedown="onMouseDown"
>
<Search
:currentPlugin="currentPlugin"
@changeCurrent="changeIndex"
@ -91,9 +94,7 @@ watch(
window.rubick.setExpendHeight(
getWindowHeight(
options.value,
pluginLoading.value || !config.value.perf.common.history
? []
: pluginHistory.value
(pluginLoading.value || !config.value.perf.common.history) ? [] : pluginHistory.value
)
);
},
@ -103,15 +104,26 @@ watch(
);
const changeIndex = (index) => {
const len = options.value.length || pluginHistory.value.length;
if (!len) return;
if (currentSelect.value + index > len - 1) {
currentSelect.value = 0;
} else if (currentSelect.value + index < 0) {
currentSelect.value = len - 1;
} else {
if (!options.value.length) {
if (!pluginHistory.value.length) return;
if (
currentSelect.value + index > pluginHistory.value.length - 1 ||
currentSelect.value + index < 0
) {
currentSelect.value = 0;
return;
}
currentSelect.value = currentSelect.value + index;
return;
}
if (
currentSelect.value + index > options.value.length - 1 ||
currentSelect.value + index < 0
) {
currentSelect.value = 0;
return;
}
currentSelect.value = currentSelect.value + index;
};
const openMenu = (ext) => {
@ -149,9 +161,7 @@ const choosePlugin = (plugin) => {
});
if (hasRemove) {
const result = window.rubick.db.get(PLUGIN_HISTORY) || {};
const history = result.data.filter(
(item) => item.originName !== currentChoose.originName
);
const history = result.data.filter(item => item.originName !== currentChoose.originName);
setPluginHistory(history);
return message.warning('插件已被卸载!');
}

View File

@ -25,8 +25,6 @@
ref="mainInput"
class="main-input"
@input="(e) => changeValue(e)"
@keydown.left="(e) => keydownEvent(e, 'left')"
@keydown.right="(e) => keydownEvent(e, 'right')"
@keydown.down="(e) => keydownEvent(e, 'down')"
@keydown.tab="(e) => keydownEvent(e, 'down')"
@keydown.up="(e) => keydownEvent(e, 'up')"
@ -43,7 +41,10 @@
>
<template #suffix>
<div class="suffix-tool">
<MoreOutlined @click="showSeparate()" class="icon-more" />
<MoreOutlined
@click="showSeparate()"
class="icon-more"
/>
</div>
</template>
</a-input>
@ -119,12 +120,6 @@ const keydownEvent = (e, key: string) => {
case 'down':
emit('changeCurrent', 1);
break;
case 'left':
emit('changeCurrent', -1);
break;
case 'right':
emit('changeCurrent', 1);
break;
case 'enter':
if (runPluginDisable) return;
emit('choosePlugin');