Commit graph

911 commits

Author SHA1 Message Date
skjnldsv
221d8b641a fix(files): new folder icon color
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-17 09:50:40 +02:00
skjnldsv
d1f0cee6ed fix(files): drag ghost image
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-16 16:43:46 +02:00
skjnldsv
6ef7700ec9 feat(files): reduce row height
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-16 16:43:46 +02:00
skjnldsv
aef96319f0 fix(files): remove unecessary sorting code snippet
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-15 16:12:05 +02:00
skjnldsv
7a8783d12a feat(files): show destructive actions as important
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-15 14:12:05 +02:00
skjnldsv
f89660e709 feat(files): add delete confirmation option
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-14 10:20:44 +02:00
Hamza
a4a6869d78 fix: adapt rename action tests to check for parent permissions
Signed-off-by: Hamza <hamzamahjoubi221@gmail.com>
2025-07-11 14:33:07 +02:00
skjnldsv
4c19c815ca fix(files): allow renaming if parent allow creating
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-11 14:33:07 +02:00
Hamza
56eff9d09d fix: hide rename action is trashbin
Signed-off-by: Hamza <hamzamahjoubi221@gmail.com>
2025-07-11 14:33:07 +02:00
skjnldsv
cf543bf8b4 fix(files): thead flex height
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-09 19:30:31 +02:00
kramo
2f6bf3578a fix(files): Remove redundant setting
This setting is already present in the main view,
where it is much more visible, it is also the only one that is documented.
Having it in both places is redundant and unnecessary clutter.

Signed-off-by: kramo <git@kramo.page>
2025-07-09 14:18:26 +00:00
skjnldsv
2fdd132325 fix(files): ensure proper headers lifecycle
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-08 23:06:39 +02:00
skjnldsv
8f3019cf86 fix(files): VirtualList rendering for scrolling calculations
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-08 09:23:37 +02:00
skjnldsv
2d45420722 fix(files): wait for nodes to be fetched before checking for opendetails or openfile
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-08 09:13:51 +02:00
Ferdinand Thiessen
33a69bf985 fix(files): use the configured default view for redirect
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-08 09:13:50 +02:00
skjnldsv
92f034ecd5 fix(files): make sure the FilesList is always mounted
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-08 09:13:50 +02:00
Ferdinand Thiessen
18777affe2
feat(files): sort local files first - used when filtering + local search
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-07 10:52:21 +02:00
Ferdinand Thiessen
3978e056cf
feat(files): search locally in the background while filtering by name
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-07 10:52:21 +02:00
Ferdinand Thiessen
1567d622dc
refactor(files): remove "local search"
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-07 10:52:21 +02:00
Ferdinand Thiessen
693bf9a475
fix(files): gracefully handle files:node:updated when not in store
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-07 10:52:21 +02:00
Ferdinand Thiessen
31bfd980c3
refactor(files): add active folder to active store and refactor
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-07 10:52:20 +02:00
Ferdinand Thiessen
275c4404d4
feat(files): allow to configure default view
This allows to configure which view should be the default ("start view")
in the files app, currently either "all files" or "personal files".
But it might be extended to the new home view in the future.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-04 18:03:10 +02:00
Ferdinand Thiessen
69275cbda5
feat(files): add "search everywhere" button within the filters row
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-04 14:47:21 +02:00
Côme Chilliet
fed1451604
chore: Adapt cypress component test to contain total space
Mocked server initial state was incomplete

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-03 17:45:09 +02:00
Côme Chilliet
e1e47305f4
fix: Correctly show free space if lower than quota in Files navigation
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-03 17:44:40 +02:00
Ferdinand Thiessen
0a794f4054 chore: update @nextcloud/files and use now public API
Remove the hack which was needed until the view.hidden attribute was
public API.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-03 16:58:51 +02:00
Maksim Sukharev
d439e2adb1 fix(files): provide boundaries for FileListTableHeaderActions element
- default boundaries element is 'content-vue', which includes sidebar

Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
2025-07-03 11:15:11 +02:00
Ferdinand Thiessen
81ce4280e9
fix(files): do not redirect router when navigating between views
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
c2d5b4eaf2
test: add e2e tests for files search
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
7cac057747
fix(files): reload file list on search update
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
32dfd34099
feat(files): add search scope toggle and logic
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
2c65bd2f4b
feat(files): allow hidden views
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
b2d0b4adeb
feat(files): add search view
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
2521622709
refactor(files): adjust filename filter to use events
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
c9997f1e0b
feat(files): add search store to handle all search related state
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
d5a4eb8139
fix(files): also use open-in-files for the search view
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
2c3774892e
feat(files): add getDirectoryByPath to files store
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
28b2710ef0
fix(files): log aborted navigation as debug level
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
905788e2b2 refactor(files): remove custom page title handling
This conflicts with what `NcAppContent` is already doing.
So we should just remove it.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-06-18 23:50:13 +02:00
Ferdinand Thiessen
3796c96e47
fix(files): add plural form for selected nodes
Reported at Transifex:
> This string needs pluralization feature, because in some languages translation of "selected" differs between singular and plural.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-06-18 18:16:16 +02:00
Elizabeth Danzberger
eb39df39e2 fix: do not extract fields for blank template
Signed-off-by: Elizabeth Danzberger <lizzy7128@tutanota.de>
2025-06-17 09:58:18 +00:00
Julien Veyssier
01de909a61
fix(files): use the correct theming instance name from capabilities to set the page title
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-06-05 10:17:05 +02:00
skjnldsv
5974649724 fix(files): highlight previous folder on history up
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-06-03 15:38:25 +00:00
Ferdinand Thiessen
d6bd0870cf
test: adjust unit tests for updated library
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-06-01 18:35:05 +02:00
Ferdinand Thiessen
88a11a5bd4 fix(files): do nothing if view local dialog was just closed
We try to open a file in the Nextcloud client.
If this fails a dialog is shown with 3 options:

1. Retry: If it fails no further dialog is shown.
2. Open online: The viewer is used to open the file.
3. Close the dialog and nothing happens (abort).

This correctly implements 3 and also adds some comments + order file in
reading order (using `function` instead of arrow functions allows this
easily).

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-29 01:23:59 +02:00
Elizabeth Danzberger
5c7216f3fd
feat: only load template fields when requested
Signed-off-by: Elizabeth Danzberger <lizzy7128@tutanota.de>
2025-05-19 17:51:25 -04:00
John Molakvoæ (skjnldsv)
20e69bc1b0 feat(files): show readable mime if available
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2025-05-15 15:07:08 +00:00
John Molakvoæ
7fc0318475 chore(files): adjust renaming action comment
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2025-05-14 17:51:12 +00:00
John Molakvoæ (skjnldsv)
c7a50c708d fix(files): refresh Node data on extension change
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2025-05-14 17:51:12 +00:00
John Molakvoæ (skjnldsv)
a4ab5a3cdf feat(files): allow showing file type (mime) column
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2025-05-14 17:51:12 +00:00
John Molakvoæ (skjnldsv)
37d4bdce00 fix(files): do not even try to fetch a preview if èhas-preview` is false
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2025-05-14 14:22:01 +02:00
skjnldsv
c446274bf0 fix(files): middle click & ctrl new tab
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-05-07 10:29:36 +02:00
Ferdinand Thiessen
df69eb56d1
Merge pull request #52269 from nextcloud/fix/files-summary
fix(files): make sure to always have proper plural forms
2025-04-30 19:11:47 +02:00
Ferdinand Thiessen
04f7d4a100 fix(files): make sure to always have proper plural forms
counted words should always be translated using `n`.
We can still simply concat the segments with punctation, this always
works regardless of the language used (even with RTL / LTR languages).

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-30 17:54:54 +02:00
Louis Chemineau
eab2d9e3a9 fix: Forward attributes to the sidebar
Needed for Photos' sidebar tab

Signed-off-by: Louis Chemineau <louis@chmn.me>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-04-30 15:27:39 +00:00
Ferdinand Thiessen
05fecce17d
fix(files): share mtime for file entry components
Also restructure the mtime opacity calculation to work as expected also
for old files.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-23 20:22:28 +02:00
John Molakvoæ (skjnldsv)
12327fea1e fix(files): prevent dragging preview when drag-drop
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2025-04-22 15:26:18 +00:00
Ferdinand Thiessen
11594df799
refactor(files): use new hide-download WebDAV property for download action
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-16 20:38:20 +02:00
skjnldsv
9c5e464111 fix(files): show hidden files and folders count in summary
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-04-02 17:40:50 +00:00
skjnldsv
1bfe473007 chore(files): remove popover workaround after vue lib update
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-04-02 17:44:41 +02:00
skjnldsv
ab0a6f0e00 fix(files): right click actions menu flicker
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-04-02 14:39:45 +00:00
Fabian Zwemke
9fd0d263ff fix(files): Properly encode URLs when preparing ZIP download
Signed-off-by: Fabian Zwemke <fabian@zwemke.de>
2025-03-26 21:35:19 +01:00
skjnldsv
baeff57232 feat(files): hide "Personal files" and "Shared with others" views if user has no quota
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-03-25 22:02:15 +01:00
Ferdinand Thiessen
35d4e562eb
fix(files): Ensure actions never overflow filename
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-24 11:41:37 +01:00
Ferdinand Thiessen
0a08768a37
Merge pull request #51400 from nextcloud/chore/tests-hot-key
test: speed up hotkey tests by 2.4s
2025-03-17 21:55:50 +01:00
Ferdinand Thiessen
884effa7c5
fix(files_sharing): ensure share status action works also in grid view
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>
2025-03-13 18:28:32 +01:00
Caitlin Jordan
ee013b4789 fix(files): correctly handle plural translation forms
Co-authored-by: Caitlin Jordan <jordan.cait17@gmail.com>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-12 09:02:55 +01:00
Ferdinand Thiessen
8fbfa84a54
test: speed up hotkey tests by 2.4s
That is about 2500% as we needed to always wait for the timeout of
500ms. As the event was already handled - compared to now where we only
wait for one tick which is about 20ms.

Also the tests did not work as expected - for shift and meta key they
did not report the failing tests.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-11 18:11:12 +01:00
Ferdinand Thiessen
7b5cd60614
fix(files): also enable delete action if trashbin is disabled
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-11 15:05:44 +01:00
Ferdinand Thiessen
9a71e1b8c2
fix(files): also show file list headers on empty views
It is needed, e.g. for the note-to-recipient, that the headers
are also shown when there is no content (yet).

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-05 11:15:16 +01:00
Ferdinand Thiessen
4eb2c45c33
fix(files_sharing): ensure downloaded file has the correct filename
Single file shares use the share token as source name, so we need to use
the displayname. To do so we need to set the download attribute to the
displayname of the file to download.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-05 08:31:25 +01:00
Kate
2582a55300
Merge pull request #51146 from nextcloud/fix/files-trash-download
fix(files_trashbin): disable bulk download for trashbin
2025-03-03 16:50:34 +01:00
Ferdinand Thiessen
8b36b915fe
fix(files_trashbin): disable bulk download for trashbin
The backend does not allow bulk download within the trashbin,
so we need to disable this also on the frontend.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-28 18:13:24 +01:00
Valdnet
288287935a fix(l10n): use do not instead of don't
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2025-02-28 16:43:14 +01:00
Ferdinand Thiessen
f7f41b6cb4
refactor: use eventbus for updated filters
prevent filters not applied if `filtersChanged` was set before file list
mounted.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-28 10:43:26 +01:00
Ferdinand Thiessen
a673547397
fix(files): Ensure the filter instance is mounted
`reset` could be called before the filters are mounted,
in this case it is valid to update the presets, but we must not try to
access the vue instance (as it does not exist yet).

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-28 10:43:26 +01:00
Varun Patil
dbef6977db fix(files): exception when share-attributes is undefined
Signed-off-by: Varun Patil <varunpatil@ucla.edu>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-02-27 11:10:40 +00:00
Joas Schilling
095ab4419e
fix(l10n): Improve english source strings
- No leading/trailing whitespace
- Use asci single quote

Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-02-26 09:54:32 +01:00
Valdnet
5c9134124b
fix(l10n): Spelling standardization
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2025-02-25 18:40:06 +01:00
Ferdinand Thiessen
e712104e58
feat(files): allow to ignore warning to change file type
* 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>
2025-02-25 02:16:56 +01:00
Jérôme Herbinet
e3d8edb7fc
fix: rename 'edit locally' to 'open locally'
Replace "Edit" by "Open"

Signed-off-by: Jérôme Herbinet <33763786+Jerome-Herbinet@users.noreply.github.com>
2025-02-21 16:42:00 +01:00
skjnldsv
4a96441437 fix(files): handle failed node properly
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-21 10:49:43 +01:00
Ferdinand Thiessen
b06f5ba4c4
refactor: Migrate nextcloud-vue usage to new import schema
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-20 02:28:13 +01:00
skjnldsv
99579f0bbc fix(files): do not show extension warning for folders renaming
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-19 15:35:50 +01:00
skjnldsv
c87a6ba811 fix(files): attach sidebar to main content for vue debug
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-18 16:01:24 +01:00
skjnldsv
4f795e144c fix(files): properly show file not found error
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-18 10:53:23 +01:00
skjnldsv
2e50a39265 fix(files): properly forward open params from short urls
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-18 10:53:23 +01:00
Julien Veyssier
d8c24b1520
fix(transferownership): allow searching by email, display user.shareWithDisplayNameUnique in item subline, adjust style
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-02-17 11:31:25 +01:00
Elizabeth Danzberger
7db90efe3b
fix(template-filler): Hide template fields with unknown labels
Signed-off-by: Elizabeth Danzberger <lizzy7128@tutanota.de>
2025-02-13 09:24:00 +01:00
Ferdinand Thiessen
fc9108b11a
fix(files): only send config update requests if user is logged in
Since we use the files app also for public shares it is not guaranteed
that there is a user logged in, in that case the update for user / view
config will fail.
So ensure there is a user or do not send a request.

Also refactor both stores to setup styles to fix (remove) initialization hack,
which causes Typescript issues.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-08 14:28:42 +01:00
skjnldsv
73e4a13a1c
chore(files): add actions cypress tests
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-07 10:07:00 +01:00
skjnldsv
e10947a548
fix(files): support submenu in batch actions header too
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-06 15:25:37 +01:00
Ferdinand Thiessen
dbc5c10bc4
fix(files): Do not download files with openfile query flag
Instead of downloading files, if there is no other default action,
we should just open the details tab.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-06 02:17:25 +01:00
Ferdinand Thiessen
d9996b92dc
fix(files): Correctly scroll selected file into view
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-05 18:40:00 +01:00
skjnldsv
85ba80b8ce fix(files): properly update store on files conversions success
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-04 16:38:34 +01:00
Christopher Ng
a447b21805 fix(files): Fix casing
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-02-04 12:22:16 +01:00
Christopher Ng
ad9b07d85e chore(files): Change "filename" to "file name"
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-02-04 12:22:16 +01:00
nfebe
8863b85420 fix: Use searchFrom property for client side plugins
The client-side plugin `in-folder` uses the `files` provider, this makes it
overlap with the main files provider itself.

This change follows eecda06f1a after it was discovered
that some apps/providers like `dav` use providers from another app like `contacts`

Signed-off-by: nfebe <fenn25.fn@gmail.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-01-30 17:35:00 +00:00
provokateurin
4aede1b43d
fix(files): Allow opening the same file repeatedly
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-01-30 13:53:53 +01:00
Christopher Ng
7a8d069907 perf(files): Check node type property instead of instance
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-01-29 15:32:10 -08:00