aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files/src/components/FileEntry
Commit message (Collapse)AuthorAgeFilesLines
* chore(files): remove popover workaround after vue lib updateskjnldsv2025-04-021-6/+2
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): right click actions menu flickerskjnldsv2025-04-021-3/+18
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files_sharing): ensure share status action works also in grid viewFerdinand Thiessen2025-03-131-15/+21
| | | | | | | | | | | | Remove some hacks from files app about the *files_sharing* status action, in general not sure why this hack was there instead of being in the correct app - but it broke the grid view. So now the sharing information is also available in grid view. Moreover the icon is fixed in size to not overflow the actions menu. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* feat(files): allow to ignore warning to change file typeFerdinand Thiessen2025-02-251-6/+7
| | | | | | | | | | | | | * Missing pieces of https://github.com/nextcloud/server/issues/46528 * Add checkbox to not show this dialog again * Add user config as suggested by designers in files settings to reenable or diable this behavior. * Fix behavior of dialog: It says "keep .ext" but it does not keep the extension but cancels the operation. From the button label the user expects that the operation is continued but with the old extension. * Added more test coverage by adding component tests. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* refactor: Migrate nextcloud-vue usage to new import schemaFerdinand Thiessen2025-02-204-12/+12
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): support submenu in batch actions header tooskjnldsv2025-02-061-48/+9
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): rename actions submenu back entrybackport/50123/masterskjnldsv2025-01-101-1/+1
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): close submenu on main actions state changeskjnldsv2025-01-101-0/+7
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* feat(files): add selection keyboard shortcutsskjnldsv2024-12-171-1/+36
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* feat(files): add hotkey service and unify action handlingskjnldsv2024-12-171-54/+59
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): failsafe when executing actions methodsskjnldsv2024-12-111-10/+29
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): cancel renaming on enter if no file name changesskjnldsv2024-12-101-0/+4
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* refactor(files): Provide `useFileListWidth` composableFerdinand Thiessen2024-11-202-8/+7
| | | | | | | | Replace the mixin with a composable, this is better typed and works in both: Options- and Composition API. Also added component tests for it. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* refactor(files): Adjust `useNavigation` composable to enforce active viewFerdinand Thiessen2024-11-162-9/+10
| | | | | | | | | In some cases it is guaranteed that we have a proper active view, e.g. when the file list is loaded (so within FileEntry* components). This does not change anything but the Typescript types, so the `currentView` is typed as `View` instead of `View | null´. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Revert CSS causing the file name to have no bounding boxFerdinand Thiessen2024-11-111-3/+2
| | | | | | Instead add the direction only to the filename wrapper not the button. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* feat(systemtags): add cypress tests and fix a few logic issuesskjnldsv2024-10-291-0/+1
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): Ensure renaming state is correctly resetFerdinand Thiessen2024-10-151-58/+12
| | | | | | | | | | | | | Problem: Is a node is renamed and the new name is out of the current visible list of nodes the component will be recycled, this means the props will change, so when the `onRename` functions is about to reset the state the `this.source` will point to a different node. To fix this, but also to separate business logic from visual representation, the logic is moved into the renaming store and the component is only responsible for rendering. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Fix file previews for public sharesFerdinand Thiessen2024-09-061-7/+17
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Node loading information should be accessibleFerdinand Thiessen2024-08-311-1/+6
| | | | | | | The loading icon visually informs that the node is currently loading, but there is no non-visual information (accessible information). Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* chore(files): Fix remaining TypeScript errors in FileEntryPreviewFerdinand Thiessen2024-08-291-7/+9
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* feat: Use the blurhash in FilesLouis Chemineau2024-08-291-10/+54
| | | | Signed-off-by: Louis Chemineau <louis@chmn.me>
* feat: Add bidi support in core directoryMostafa Ahangarha2024-08-291-1/+2
| | | | Signed-off-by: Mostafa Ahangarha <ahangarha@riseup.net>
* fix: Access node owner by top level `owner` propertyFerdinand Thiessen2024-08-171-0/+1
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): show folder sharing overlay on received sharesskjnldsv2024-08-021-0/+2
| | | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
* feat: Navigate via folder treeChristopher Ng2024-08-011-0/+5
| | | | Signed-off-by: Christopher Ng <chrng8@gmail.com>
* refactor(files): Resort imports and fix doc commentFerdinand Thiessen2024-08-011-2/+6
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* refactor(files): Migrate logger util to TypescriptFerdinand Thiessen2024-08-013-4/+3
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Add missing directory variable to error messageFerdinand Thiessen2024-08-011-1/+3
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Provide file actions from list entry to make it reactiveFerdinand Thiessen2024-08-012-56/+39
| | | | | | | | This fixes non reactive default action text of the name component. Also use download action as default action so that only one place is needed to define how to download a file. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Correctly validate new node nameFerdinand Thiessen2024-07-261-3/+3
| | | | | | | | | | | * Resolves https://github.com/nextcloud/server/issues/45409 This includes two fixes: 1. The name in the "new node" dialog is correctly selected (e.g. `file.txt` only `file` is selected by default), to allow quick naming 2. `@nextcloud/files` functions for filename validation are used, this allows to use new Nextcloud 30 capabilities (e.g. reserved names) Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
* fix(files): Use `@nextcloud/files` filename validation to show more detailsFerdinand Thiessen2024-07-251-61/+29
| | | | | | | This will enable showing more details what exactly is wrong with the filename. Especially with the new capabilities introduced with Nextcloud 30. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Do not split filename into `base` and `extension` for foldersFerdinand Thiessen2024-07-251-4/+10
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): validate input when creating file/directoryMaksim Sukharev2024-07-241-7/+6
| | | | Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
* refactor(files): Fix nullish operator usage and add missing code commentFerdinand Thiessen2024-06-241-2/+1
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Properly handle files in failed stateFerdinand Thiessen2024-06-242-2/+3
| | | | | | | When files are loaded from API the `fileid` might be set to `-1` indicating an error on the API. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* refactor: Use composable for `currentView` and `views` to make it reactive ↵Ferdinand Thiessen2024-06-232-16/+25
| | | | | | when shared with other Vue apps Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix: Do not import from `axios` but only `@nextcloud/axios`Ferdinand Thiessen2024-06-201-2/+1
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): do not rely on unique fileidskjnldsv2024-06-121-8/+9
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): also trigger new tab on file name middle clickJohn Molakvoæ (skjnldsv)2024-06-121-2/+1
| | | | | Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
* refactor(files): Fix TypeScript issues in FileEntryActionsFerdinand Thiessen2024-06-081-5/+5
| | | | | | | | * We filter the array in `enabledSubmenuActions` so we can be sure the action does have a parent * Node attributes must be accessed using the `attributes` getter not the private `_attributes` property * Cast action ref to correct component interface to make TypeScript happy Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* chore: Add SPDX headerAndy Scherzinger2024-05-296-100/+19
| | | | Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
* feat(files): refresh preview on etag changeskjnldsv2024-05-231-1/+6
| | | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
* fix(files): Add missing properties and fix Typescript errors in `FileEntryName`Ferdinand Thiessen2024-05-021-21/+33
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): apply the renaming when leaving the input fieldRaphaël Jakse2024-05-021-1/+1
| | | | | | Refs: #42689 Signed-off-by: Raphaël Jakse <raphael.git@jakse.fr>
* fix(files): Use string array instead of string for forbidden charactersFerdinand Thiessen2024-04-291-7/+5
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Inherit some node attributes when creating new nodes to preserve ↵Ferdinand Thiessen2024-04-161-5/+3
| | | | | | shared state Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Right click menu positioningChristopher Ng2024-03-121-2/+3
| | | | Signed-off-by: Christopher Ng <chrng8@gmail.com>
* fix(files): Close submenu actions after click like top-level actionsChristopher Ng2024-03-081-1/+1
| | | | Signed-off-by: Christopher Ng <chrng8@gmail.com>
* fix(files): properly reset preview componentJohn Molakvoæ (skjnldsv)2024-03-071-4/+13
| | | | | Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
* feat(theming): Provide CSS variable for favorite color and adjust for dark modeFerdinand Thiessen2024-03-061-1/+1
| | | | | Co-authored-by: Simon L <szaimen@e.mail.de> Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>