From b476659ac888618fdb01c1316db073237c9222d3 Mon Sep 17 00:00:00 2001 From: "John Molakvoæ (skjnldsv)" Date: Wed, 29 Jan 2020 16:31:47 +0100 Subject: Fix legacy tabs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ (skjnldsv) --- apps/files/src/components/LegacyTab.vue | 11 ++++++----- apps/files/src/models/Tab.js | 12 ++++++------ apps/files/src/services/Sidebar.js | 6 +++--- apps/files/src/views/Sidebar.vue | 1 + 4 files changed, 16 insertions(+), 14 deletions(-) (limited to 'apps/files/src') diff --git a/apps/files/src/components/LegacyTab.vue b/apps/files/src/components/LegacyTab.vue index 32c644ed806..eaa72a99bbb 100644 --- a/apps/files/src/components/LegacyTab.vue +++ b/apps/files/src/components/LegacyTab.vue @@ -21,7 +21,9 @@ --> @@ -38,7 +40,7 @@ export default { type: Object, required: true, }, - name: { + id: { type: String, required: true, }, @@ -52,9 +54,8 @@ export default { icon() { return this.component.getIcon() }, - id() { - // copied from AppSidebarTab - return this.name.toLowerCase().replace(/ /g, '-') + name() { + return this.component.getLabel() }, order() { return this.component.order diff --git a/apps/files/src/models/Tab.js b/apps/files/src/models/Tab.js index 2a045551c54..fd1ea9888d9 100644 --- a/apps/files/src/models/Tab.js +++ b/apps/files/src/models/Tab.js @@ -24,23 +24,23 @@ export default class Tab { #component #legacy - #name + #id #enabled /** * Create a new tab instance * - * @param {string} name the name of this tab + * @param {string} id the unique id of this tab * @param {Object} component the vue component * @param {Function} [enabled] function that returns if the tab should be shown or not * @param {boolean} [legacy] is this a legacy tab */ - constructor(name, component, enabled = () => true, legacy) { + constructor(id, component, enabled = () => true, legacy) { if (typeof enabled !== 'function') { throw new Error('The enabled argument should be a function') } - this.#name = name + this.#id = id this.#component = component this.#enabled = enabled this.#legacy = legacy === true @@ -51,8 +51,8 @@ export default class Tab { } - get name() { - return this.#name + get id() { + return this.#id } get component() { diff --git a/apps/files/src/services/Sidebar.js b/apps/files/src/services/Sidebar.js index 42243b9de82..560db8862ec 100644 --- a/apps/files/src/services/Sidebar.js +++ b/apps/files/src/services/Sidebar.js @@ -56,17 +56,17 @@ export default class Sidebar { * @returns {Boolean} */ registerTab(tab) { - const hasDuplicate = this.#state.tabs.findIndex(check => check.name === tab.name) > -1 + const hasDuplicate = this.#state.tabs.findIndex(check => check.id === tab.id) > -1 if (!hasDuplicate) { this.#state.tabs.push(tab) return true } - console.error(`An tab with the same name ${tab.name} already exists`, tab) + console.error(`An tab with the same id ${tab.id} already exists`, tab) return false } registerSecondaryView(view) { - const hasDuplicate = this.#state.views.findIndex(check => check.name === view.name) > -1 + const hasDuplicate = this.#state.views.findIndex(check => check.id === view.id) > -1 if (!hasDuplicate) { this.#state.views.push(view) return true diff --git a/apps/files/src/views/Sidebar.vue b/apps/files/src/views/Sidebar.vue index c55e1671178..00e4367e92f 100644 --- a/apps/files/src/views/Sidebar.vue +++ b/apps/files/src/views/Sidebar.vue @@ -62,6 +62,7 @@