Commit Graph

390 Commits

Author SHA1 Message Date
Matthieu Gallien
749773f260 add missing logs and checks for database errors
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-28 23:09:41 +02:00
alex-z
f70d1c1079
Support Windows .lnk files with VFS Cf API.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2024-07-10 10:29:21 +02:00
Matthieu Gallien
df7527c310 produce Appimage packages from github actions
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-05-16 11:56:22 +02:00
Claudio Cambra
afbd2ebc02 Remove all use of MacExtras
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-05-13 11:07:33 +02:00
Matthieu Gallien
aae9e84438 fix compilation issues after rebase
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-04-26 09:05:12 +02:00
Matthieu Gallien
e3456847d8 last step
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-04-26 09:05:12 +02:00
Claudio Cambra
4cad9ebdac Fix type of decpoint
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-04-26 09:05:12 +02:00
Matthieu Gallien
1f0279e1c1 remove usage of QStringRef due to it being missing in Qt6
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-04-26 09:05:12 +02:00
Matthieu Gallien
1522d01d5b if a virtual file change but bothing changed: set it as in sync
some software (at least outlook native software) may fiddle with CfApi
placeholder metadta and set a .msg file to be out of sync state when
opening it

in that case, we will let the sync engine go over it and decide what to
do

it is then possible in that case that we would just put it back in "in
sync" state

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-04-23 18:04:35 +02:00
Matthieu Gallien
55034f7e43
properly compute if a folder is top level or child extern mounted
asks new permission to server to be able to know if a folder is a top
level mounted folder

should allow detecting the top level folders from external storages or
group folders

should also make the client reliably detect that it is handling a child
folder inside a group folder and be allowed to rename such folders

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-03-27 14:29:01 +01:00
Matthieu Gallien
608a435d38
context menu: do not recursively check pin and availability states
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-03-27 11:59:30 +01:00
alex-z
c5dd2e89a1 E2EE. Fix root metadata fetching path for non-root remote sync folder. Refactoring. Stabilizing paths.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2024-03-20 00:54:27 +01:00
Matthieu Gallien
4844f326c1 newly created folders will be read-only when needed
Close #6296

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-03-12 23:30:02 +01:00
alex-z
c0e0b53ee5 Bugfix. E2EE V2. Fix incorrect root e2ee folder path search in local db.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2024-02-28 15:37:50 +01:00
alex-z
b2aca219fc Do not upload modified PDF file while it is open in Kofax PowerPDF on Windows. Prevents signature verification failure.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2024-02-14 08:25:21 +01:00
alex-z
af612525c4 End-to-End Encryption V2. Implemented sharing between users. Automatic migration from 1.0 to 2.0(only for flat folders). Improved secure filedrop.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2024-01-29 16:13:25 +01:00
Camila Ayres
2089fb168b
Remove if TOKEN_AUTH_ONLY because the build will fail without it in all cases.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-01-22 11:35:58 +01:00
Erik Verbruggen
07063c9c9d
macOS: Fix restart-after-quit
Instead of using a dictionary for the value of KeepAlive, setting it to
@NO will keep launchd from relaunching the client.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-01-22 11:28:00 +01:00
Erik Verbruggen
31559faa35
Creaate LaunchAgents directory if it doesn't exist
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-01-22 11:28:00 +01:00
Erik Verbruggen
74c7487314
Mac: do not restart after crash
When the crash is due to a library load failure while starting, having
this turned on would result in an endless loop of crash-restarts.

Fixes: #9800

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-01-22 11:27:59 +01:00
Erik Verbruggen
1f046ccd5e
macOS: Do case-insensitive compare in auto-launch code
Case-sensitive compares will give problems when a launchd plist file
exists, but the executable gets upated, and the name only has a
different case (e.g.: owncloud -> ownCloud).

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-01-22 11:27:59 +01:00
Erik Verbruggen
76cf707934
macOS: Modernise Utility::setupFavLink
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-01-22 11:27:59 +01:00
Erik Verbruggen
fb13eb7203
macOS: Simplify Utility::hasDarkSystray()
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-01-22 11:27:59 +01:00
Erik Verbruggen
a616fbf189
Mac: Move launch-on-login to use launchd
Previously, deprecated API was used to tell macOS to launch the GUI when
the user logs in. This has now been moved to launchd, which uses the
contents of the file
~/Library/LaunchAgents/com.owncloud.desktopclient.plist to determine
what to do. This comes with the added benefit that wel now tell launchd
to relaunch the client when it crashes.

Fixes: #9037
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-01-22 11:27:59 +01:00
Erik Verbruggen
8da94b6509
Turn utility_* into stand-alone files
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-01-22 11:27:59 +01:00
Hannah von Reth
3762e410f8
Log if setting up launch on start fails on mac
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-01-22 11:27:59 +01:00
Camila
8f628f808c Modernize Utility::octetsToString function.
- Add {} to single line if.
- Use const and auto.
- Use constexpr.
- Rename variables for readability.

Signed-off-by: Camila <hello@camila.codes>
2024-01-19 10:15:38 +01:00
Camila
a06b88c1b4 Utility: Fix the storage string to display terabytes.
Signed-off-by: Camila <hello@camila.codes>
2024-01-19 10:15:38 +01:00
alex-z
4b0e1b57eb Prevent issues when changing the enum.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-12-11 18:03:57 +01:00
alex-z
5e78b83ca7 Send status report. Improved logic and database columns.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-12-11 18:03:57 +01:00
alex-z
ff8db2674a Client status reporting feature. First iteration.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-12-11 18:03:57 +01:00
Matthieu Gallien
b77fc9d4ff
avoid modifying a placeholder (virtual files) when not needed
acoid modifying some metadata of the placeholder when this placeholder
has just been uploaded to the server (will avoid truncating the
timestamps)

Close #6190

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-12-06 10:13:49 +01:00
Matthieu Gallien
369296d6ed
fix include order from most specific to less specific
shoudl ensure that included headers are self sufficient

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-12-06 10:08:16 +01:00
alkl58
9c6839969c Check path validity on Windows will validate NTFS permissions for network drives.
Signed-off-by: Alkl58 <alkl58@protonmail.com>
2023-11-13 12:00:52 +01:00
alex-z
dd178f032c Fix crash. Remove unnecessary dependency injection causing crash.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-11-09 13:24:10 +01:00
alex-z
727cd797ff Show more informative error message when VFS hydration fails. Display a popup and put an error into activity list. More detailed logs.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-10-20 14:54:42 +02:00
Claudio Cambra
105834c82b Add utility method to remove leading slashes from paths
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-10-16 10:11:00 +02:00
alex-z
fde7933585 Optimize CaseConflictRecords search in local DB during the sync.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-25 10:37:10 +02:00
Dimitri Papadopoulos
8a73a9a6f5 Fix new typos found by codespell
Signed-off-by: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com>
2023-09-17 10:41:38 +02:00
Claudio Cambra
a0c528a190 Replace comments about relevancy of chunk to propagat v1 with variable name change
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
7cb8640352 Clarify use of ProgressInfo _chunk
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
9811d35a96 Return bool from FileSystem::setFileReadOnlyWeak depending on whether permission change was actually made or not
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-07 16:25:19 +08:00
Claudio Cambra
21656cce17
Replace all manual isntancesof adding trailing slash with use of utility method
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:42 +08:00
Claudio Cambra
3b208bf838
Move trailingSlashPath convenience function into Utility class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:42 +08:00
Claudio Cambra
82f6fd5c27
Remove use of old foreach in SyncJournalDb::setSelectiveSyncList
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:42 +08:00
Claudio Cambra
1b73011f59
Constify SyncJournalDb::findPathInSelectiveSyncList
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:41 +08:00
Claudio Cambra
017dca2328
Move findPathInList from discoveryphase to common syncjournaldb
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:39 +08:00
Claudio Cambra
d3eefee25a
Replace custom moveToTrash solution with Qt QFile::moveToTrash
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-21 00:07:59 +08:00
Dries Mys
76376aa052 Set VFS PinState to Excluded for ignored files.
Setting PinState to Excluded ensures the syncing icon is not shown for ignored items.
If the PinState is not set to Excluded, also all parent directories are shown as being synced, which is very inconvenient for the end user as it seems that some folder are never fully synced by Nextcloud which isn't the case.
As long as .lnk files are not converted to placeholder files, also set them to Excluded to hide the syncing icon.

Closes #5524
Closes #5594

Co-authored-by: Matthieu Gallien <matthieu_gallien@yahoo.fr>
Signed-off-by: Dries Mys <dries.mys@my-dreams.be>
2023-07-20 13:44:55 +02:00
Matthieu Gallien
8cd1a30c40 fix bulk upload of empty files
force an empty body when we bulk upload empty files

force a "valid" checksum to be computed for empty files as bulk upload
server side expects a checksum even for empty files

Close #5824

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-07-10 10:38:39 +02:00