Commit graph

15849 commits

Author SHA1 Message Date
Hannah von Reth
6818b8e303
Speedup test build by compile the fake server just once 2020-12-15 10:59:27 +01:00
Hannah von Reth
1b4ccea083
Owncloud - virtual files smaller <1KB - problems with syncing
The issue was caused by gziped responses not providing a
content lenght header.

Fixes: #8248
2020-12-15 10:59:27 +01:00
Hannah von Reth
96eaef6dba
Pause sync when remove all dialog is displayed
Fixes: #8263
2020-12-15 10:59:27 +01:00
Hannah von Reth
c253b51249
Use enum instead of int 2020-12-15 10:59:27 +01:00
Hannah von Reth
befc373ea6
Fix test on systems where C:\ is not writeable 2020-12-15 10:59:27 +01:00
Hannah von Reth
dc42ebb793
Don't recurse the whole tree looking for a git dir, use PROJECT_SOURCE_DIR 2020-12-15 10:59:26 +01:00
Hannah von Reth
0eb8b01f0a
Fix usePlaceholders migration 2020-12-15 10:59:26 +01:00
Hannah von Reth
58bc9e837c
Remove junk files 2020-12-15 10:59:26 +01:00
Hannah von Reth
a083a37126
Fix vfs experimental text 2020-12-15 10:59:26 +01:00
Hannah von Reth
b2934a68bc
Fix folder permission check on NTFS
Fixes: #8187
2020-12-15 10:59:26 +01:00
Hannah von Reth
8dbdaed5c3
Fix condition 2020-12-15 10:59:26 +01:00
Hannah von Reth
e4a0222954
Append .exe to crashreporter path so it is better located 2020-12-15 10:59:25 +01:00
Hannah von Reth
440b31986a
Ensure the callback is triggered 2020-12-15 10:59:25 +01:00
Hannah von Reth
f6faba48e2
Don`t block main thread when displaying all files removed dialog
Fixes: #8170
2020-12-15 10:59:25 +01:00
Hannah von Reth
b4cb3ecb5a
Don't use exec() on dialogs 2020-12-15 10:59:25 +01:00
Hannah von Reth
4878042e61
Update libcrashreporter-qt 2020-12-15 10:59:25 +01:00
Hannah von Reth
7c65d38ba4
Draw active progressbar
Pass a widget to the progressbar in the folder delegate to draw the correct active state
2020-12-15 10:59:25 +01:00
Kevin Ottens
201dbd54db
Remove the plugin loader mechanism for VFS backends
We will have all the code in public anyway so it can just be compiled
in. Thus no need to go through the plugin loading dance. Replaced the
loading with factory functions. Kept mostly the same structure
otherwise.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:24 +01:00
Kevin Ottens
7e5f81ea81
Allow to control availability of folders in the settings dialog
It felt odd to be able to control the encryption status in the settings
dialog but not the availability. Also availability was controllable on
the root, so let's make it widely available.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:24 +01:00
Kevin Ottens
70c2dc70a1
Resurrect the display of subfolders for VFS sync folders
This got removed from the settings since in that case selective sync
isn't supported. Unfortunately that's also necessary to display them to
allow encrypting folders via the context menu.

So we display the subfolders again but in the case of VFS we disable the
ability to (un)check them. They just have an icon, a name and a context
menu.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:24 +01:00
Kevin Ottens
9f0e0b0f6a
Update the FolderStatusModel when a folder encryption ends
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:24 +01:00
Kevin Ottens
596bfab6e1
Set the account state after E2EE is setup in the GUI
Otherwise we would not display the E2EE message if the account was
connected before the creation of the settings dialog. This was likely
caused by the delayed creation of the settings dialog.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:24 +01:00
Kevin Ottens
f45e84f2ee
Remove empty action in the settings toolbar
This was causing an unwanted line in the middle of the bar.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:24 +01:00
Kevin Ottens
d63097475c
Fix typo and style
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:23 +01:00
Kevin Ottens
1acb2679dd
Get rid of now unused GetFolderEncryptStatusJob
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:23 +01:00
Kevin Ottens
36b8e7c2a4
Remove the encryption flag check from encrypted propagation code
If we use those encrypted propagation code paths, we already know from
the discovery phase (and thus the journal db) that the folders are
encrypted so no need to check again.

This will remove another expensive round trip with the server.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:23 +01:00
Kevin Ottens
b2533e6451
Remove encrypt status job fetching from ClientSideEncryption
This is now unused.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:23 +01:00
Kevin Ottens
d22046d679
No need to fetch encryption data separately before discovery
This step isn't necessary anymore, no one looks at ClientSideEncryption
for that information anyway.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:23 +01:00
Kevin Ottens
580b36fe20
Remove unused methods on ClientSideEncryption
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:23 +01:00
Kevin Ottens
ce5edfdf4d
Stop using e2e()->isFolderEncrypted() in the folder wizard
We used the same approach than for the FolderStatusModel by getting the
is-encrypted property straight from the LSCOL job.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:23 +01:00
Kevin Ottens
4fde05b8b6
FolderStatusModel now uses the LSCOL job result for encryption status
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:22 +01:00
Kevin Ottens
8e5a8d9fb9
FolderStatusModel LSCOL job now gets the is-encrypted property
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:22 +01:00
Kevin Ottens
7a4a359704
Stop using e2e()->isFolderEncrypted() in the jobs
Thanks to the new discovery algorithm, we got all the freshest E2EE
information straight from the database so reuse it instead of going
through an in memory copy.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:22 +01:00
Kevin Ottens
37a51872e1
Set the encrypted flag in the database when EncryptFolderJob succeeds
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:22 +01:00
Kevin Ottens
b667bdda14
Change EncryptFolderJob path convention
It had a different path convention than all the other jobs, most likely
for legacy reasons because of the tight coupling it had to the settings
dialog.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:22 +01:00
Kevin Ottens
ee8e0fa332
Have the folder token inside the EncryptFolderJob
No need to look for a token on the outside we can just work properly by
keeping all the state encapsulated in the job.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:22 +01:00
Kevin Ottens
af00ef1cca
Don't use getFileRecordByE2eMangledName in jobs anymore
Thanks to the new discovery algorithm we got both mangled and original
file names in the item so no need to go through the database for
nothing.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:21 +01:00
Kevin Ottens
66f24241d8
Repair E2EE deletions
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:21 +01:00
Kevin Ottens
567f678fd5
Make sure the encrypted flag gets all the way to the journal db
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:21 +01:00
Kevin Ottens
961794669e
Repair E2EE uploads
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:21 +01:00
Kevin Ottens
1d07af07a5
Start hooking up E2EE to the new discovery algorithm
Now we pull the encrypted metadata during the discovery which is a
better approach than before. This shall remove the need for some of the
deep propfinds we have been using so far. It already simplifies the code
a bit for the download scenario.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:21 +01:00
Kevin Ottens
2cf76bbcbf
Repair the Windows Build
We now enforce the use of QStringLiteral and friends in some places,
but that feel through the cracks for some of the Windows specific code.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:21 +01:00
Hannah von Reth
dd3e70b667
VirtualFiles: Ensure the target location supports vfs
Fixes: #8131
2020-12-15 10:59:20 +01:00
Hannah von Reth
8796f25994
Log error code as hex 2020-12-15 10:59:20 +01:00
Hannah von Reth
44175aca94
Fix: Log chunked messages 2020-12-15 10:59:20 +01:00
Hannah von Reth
60011e8003
Remove vfs warning in the delegate, indicate them in the description instead
Fixes: #8139
2020-12-15 10:59:20 +01:00
Hannah von Reth
93152761a1
Use verbose function names instead of direct member access 2020-12-15 10:59:20 +01:00
Hannah von Reth
356192fb1d
Don't show 404 errors when manually creating folder sync pair.
Fixes: #7724
2020-12-15 10:59:20 +01:00
Hannah von Reth
1619cd5dcc
Use winvfs by default when adding folder sync connection
Fixes: #8083
2020-12-15 10:59:19 +01:00
Hannah von Reth
8460526df9
Clear cookies on logout 2020-12-15 10:59:19 +01:00