Skip to content

Commit f8794e2

Browse files
committed
feat: 新增工具栏全局开关设置
1 parent d7808da commit f8794e2

File tree

5 files changed

+20
-8
lines changed

5 files changed

+20
-8
lines changed

src/layouts/components/AppSetting/index.vue

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -193,11 +193,17 @@ function handleCopy() {
193193
</div>
194194
<div>
195195
<FaDivider>工具栏</FaDivider>
196+
<div class="setting-item">
197+
<div class="label">
198+
是否启用
199+
</div>
200+
<FaSwitch v-model="settingsStore.settings.toolbar.enable" />
201+
</div>
196202
<div v-if="settingsStore.mode === 'pc'" class="setting-item">
197203
<div class="label">
198204
面包屑导航
199205
</div>
200-
<FaSwitch v-model="settingsStore.settings.toolbar.breadcrumb" />
206+
<FaSwitch v-model="settingsStore.settings.toolbar.breadcrumb" :disabled="!settingsStore.settings.toolbar.enable" />
201207
</div>
202208
<div class="setting-item">
203209
<div class="label">
@@ -206,13 +212,13 @@ function handleCopy() {
206212
<FaIcon name="i-ri:question-line" />
207213
</FaTooltip>
208214
</div>
209-
<FaSwitch v-model="settingsStore.settings.toolbar.navSearch" />
215+
<FaSwitch v-model="settingsStore.settings.toolbar.navSearch" :disabled="!settingsStore.settings.toolbar.enable" />
210216
</div>
211217
<div v-if="settingsStore.mode === 'pc'" class="setting-item">
212218
<div class="label">
213219
全屏
214220
</div>
215-
<FaSwitch v-model="settingsStore.settings.toolbar.fullscreen" />
221+
<FaSwitch v-model="settingsStore.settings.toolbar.fullscreen" :disabled="!settingsStore.settings.toolbar.enable" />
216222
</div>
217223
<div class="setting-item">
218224
<div class="label">
@@ -221,7 +227,7 @@ function handleCopy() {
221227
<FaIcon name="i-ri:question-line" />
222228
</FaTooltip>
223229
</div>
224-
<FaSwitch v-model="settingsStore.settings.toolbar.pageReload" />
230+
<FaSwitch v-model="settingsStore.settings.toolbar.pageReload" :disabled="!settingsStore.settings.toolbar.enable" />
225231
</div>
226232
<div class="setting-item">
227233
<div class="label">
@@ -230,7 +236,7 @@ function handleCopy() {
230236
<FaIcon name="i-ri:question-line" />
231237
</FaTooltip>
232238
</div>
233-
<FaSwitch v-model="settingsStore.settings.toolbar.colorScheme" />
239+
<FaSwitch v-model="settingsStore.settings.toolbar.colorScheme" :disabled="!settingsStore.settings.toolbar.enable" />
234240
</div>
235241
</div>
236242
<div>
@@ -239,7 +245,7 @@ function handleCopy() {
239245
<div class="label">
240246
是否启用快捷键
241247
</div>
242-
<FaSwitch v-model="settingsStore.settings.mainPage.enableHotkeys" />
248+
<FaSwitch v-model="settingsStore.settings.mainPage.enableHotkeys" :disabled="!settingsStore.settings.toolbar.enable" />
243249
</div>
244250
</div>
245251
<div>

src/layouts/components/Topbar/index.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ defineOptions({
1010
const settingsStore = useSettingsStore()
1111
1212
const enableToolbar = computed(() => {
13-
return Object.keys(settingsStore.settings.toolbar).some((key) => {
13+
return settingsStore.settings.toolbar.enable && Object.keys(settingsStore.settings.toolbar).some((key) => {
1414
if (settingsStore.settings.app.routeBaseOn === 'filesystem' && key === 'breadcrumb') {
1515
return false
1616
}

src/layouts/index.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ const topbarActualHeight = computed(() => {
5858
if (settingsStore.settings.tabbar.enable) {
5959
actualHeight += Number.parseInt(getComputedStyle(document.documentElement).getPropertyValue('--g-tabbar-height'))
6060
}
61-
if (Object.keys(settingsStore.settings.toolbar).some((key) => {
61+
if (settingsStore.settings.toolbar.enable && Object.keys(settingsStore.settings.toolbar).some((key) => {
6262
if (settingsStore.settings.app.routeBaseOn === 'filesystem' && key === 'breadcrumb') {
6363
return false
6464
}

src/settings.default.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ const globalSettingsDefault: RecursiveRequired<Settings.all> = {
3939
enableHotkeys: false,
4040
},
4141
toolbar: {
42+
enable: true,
4243
breadcrumb: true,
4344
navSearch: true,
4445
fullscreen: false,

src/types/global.d.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,11 @@ declare namespace Settings {
148148
enableHotkeys?: boolean
149149
}
150150
interface toolbar {
151+
/**
152+
* 是否开启工具栏
153+
* @默认值 `true`
154+
*/
155+
enable?: boolean
151156
/**
152157
* 是否开启面包屑导航
153158
* @默认值 `true`

0 commit comments

Comments
 (0)