From 88c7fb55d7b4fddc61e333040665782f55bf3d4c Mon Sep 17 00:00:00 2001 From: Jan Date: Thu, 21 Apr 2022 16:50:32 +0200 Subject: [PATCH] Implement file extensions toggle (#6793) * Implement file extensions toggle * Bump ods * Remove useless file * Change setting name * Update snapshots * Add mutation tests * Fix snapshots after OcButton has target prop Co-authored-by: Pascal Wengerter --- ...enhancement-add-show-file-extension-switch | 12 +++++++ .../src/components/AppBar/AppBar.vue | 12 +++++-- .../src/components/AppBar/CreateAndUpload.vue | 20 ++++++++--- .../src/components/AppBar/ViewOptions.vue | 20 +++++++++-- .../components/FilesList/ResourceTable.vue | 4 ++- .../src/components/SideBar/FileInfo.vue | 4 ++- .../src/mixins/actions/rename.js | 33 ++++++++++++++++--- packages/web-app-files/src/store/mutations.js | 6 ++++ packages/web-app-files/src/store/state.js | 3 +- .../unit/components/AppBar/AppBar.spec.js | 3 +- .../components/AppBar/ViewOptions.spec.js | 3 +- .../FilesList/ResourceTable.spec.js | 5 +++ .../tests/unit/store/mutations.spec.js | 9 +++++ .../SharedWithOthers.spec.js.snap | 8 ++--- .../tests/unit/views/views.setup.js | 1 + packages/web-runtime/package.json | 2 +- .../ApplicationsMenu.spec.js.snap | 2 +- .../__snapshots__/FeedbackLink.spec.js.snap | 2 +- yarn.lock | 10 +++--- 19 files changed, 128 insertions(+), 31 deletions(-) create mode 100644 changelog/unreleased/enhancement-add-show-file-extension-switch diff --git a/changelog/unreleased/enhancement-add-show-file-extension-switch b/changelog/unreleased/enhancement-add-show-file-extension-switch new file mode 100644 index 00000000000..8be0a6c570a --- /dev/null +++ b/changelog/unreleased/enhancement-add-show-file-extension-switch @@ -0,0 +1,12 @@ +Enhancement: Add show file extension toggle switch in file list settings + +We've added a toggle switch to the file list settings to turn off and on displaying file extension. + +If this setting is turned off, the file extension won't be shown anymore in: +* The name column displayed in the files list +* The right sidebar +* The rename modal +* The new file modal + +https://github.com/owncloud/web/pull/6793 +https://github.com/owncloud/web/issues/6730 diff --git a/packages/web-app-files/src/components/AppBar/AppBar.vue b/packages/web-app-files/src/components/AppBar/AppBar.vue index cfda1b1db8b..a2ee1b37439 100644 --- a/packages/web-app-files/src/components/AppBar/AppBar.vue +++ b/packages/web-app-files/src/components/AppBar/AppBar.vue @@ -77,7 +77,7 @@ export default { }, computed: { ...mapGetters('Files', ['files', 'selectedFiles']), - ...mapState('Files', ['areHiddenFilesShown']), + ...mapState('Files', ['areHiddenFilesShown', 'areFileExtensionsShown']), pageTitle() { const title = this.$route.meta.title @@ -116,10 +116,18 @@ export default { if (areHiddenFilesShownBoolean !== this.areHiddenFilesShown) { this.SET_HIDDEN_FILES_VISIBILITY(areHiddenFilesShownBoolean) } + + // Storage returns a string so we need to convert it into a boolean + const areFileExtensionsShown = window.localStorage.getItem('oc_fileExtensionsShown') || 'true' + const areFileExtensionsShownBoolean = areFileExtensionsShown === 'true' + + if (areFileExtensionsShownBoolean !== this.areFileExtensionsShown) { + this.SET_FILE_EXTENSIONS_VISIBILITY(areFileExtensionsShownBoolean) + } }, methods: { - ...mapMutations('Files', ['SET_HIDDEN_FILES_VISIBILITY']) + ...mapMutations('Files', ['SET_HIDDEN_FILES_VISIBILITY', 'SET_FILE_EXTENSIONS_VISIBILITY']) } } diff --git a/packages/web-app-files/src/components/AppBar/CreateAndUpload.vue b/packages/web-app-files/src/components/AppBar/CreateAndUpload.vue index 5b6fcfcdc9e..579396c4543 100644 --- a/packages/web-app-files/src/components/AppBar/CreateAndUpload.vue +++ b/packages/web-app-files/src/components/AppBar/CreateAndUpload.vue @@ -123,7 +123,7 @@ diff --git a/packages/web-app-files/src/components/FilesList/ResourceTable.vue b/packages/web-app-files/src/components/FilesList/ResourceTable.vue index 3e546abe6df..c5679358a05 100644 --- a/packages/web-app-files/src/components/FilesList/ResourceTable.vue +++ b/packages/web-app-files/src/components/FilesList/ResourceTable.vue @@ -52,6 +52,7 @@ :is-path-displayed="arePathsDisplayed" :parent-folder-name-default="defaultParentFolderName" :is-thumbnail-displayed="areThumbnailsDisplayed" + :is-extension-displayed="areFileExtensionsShown" :is-resource-clickable="isResourceClickable(item.id)" :folder-link="folderLink(item)" :parent-folder-link="parentFolderLink(item)" @@ -165,7 +166,7 @@