Kevin Ottens [Mon, 10 Aug 2020 09:26:52 +0000 (11:26 +0200)]
Move the private key salt handling in its own function
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Mon, 10 Aug 2020 09:19:20 +0000 (11:19 +0200)]
Ignore the salt part of the key during decryption
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Mon, 10 Aug 2020 09:08:15 +0000 (11:08 +0200)]
Restore the symmetry between *StringSymmetric functions
If we receive data without base64 encoding for encryption, it makes
sense to get it without base64 encoding out of decryption.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Mon, 10 Aug 2020 09:01:49 +0000 (11:01 +0200)]
Add unit tests for the encryption helpers
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Nextcloud bot [Sun, 9 Aug 2020 03:29:44 +0000 (03:29 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Sat, 8 Aug 2020 03:31:51 +0000 (03:31 +0000)]
[tx-robot] updated from transifex
Kevin Ottens [Thu, 6 Aug 2020 12:28:09 +0000 (14:28 +0200)]
Master is now what will become 3.1
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Nextcloud bot [Fri, 7 Aug 2020 03:32:17 +0000 (03:32 +0000)]
[tx-robot] updated from transifex
Kevin Ottens [Thu, 6 Aug 2020 12:25:00 +0000 (14:25 +0200)]
Merge pull request #2248 from nextcloud/bump_version_to_3.0
There won't be a 2.7, this is called 3.0 instead
Kevin Ottens [Thu, 6 Aug 2020 11:40:00 +0000 (13:40 +0200)]
There won't be a 2.7, this is called 3.0 instead
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Nextcloud bot [Thu, 6 Aug 2020 03:31:10 +0000 (03:31 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Wed, 5 Aug 2020 08:58:21 +0000 (08:58 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Wed, 5 Aug 2020 08:53:47 +0000 (08:53 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Wed, 5 Aug 2020 03:31:20 +0000 (03:31 +0000)]
[tx-robot] updated from transifex
Kevin Ottens [Tue, 4 Aug 2020 16:54:55 +0000 (18:54 +0200)]
Merge pull request #2245 from nextcloud/fix-issue-2243
Fix #2243
Camila [Mon, 3 Aug 2020 17:48:33 +0000 (19:48 +0200)]
Remove extra check for talk app on server in AccountState.
- Remove repeated hard coded "spreed" string.
Signed-off-by: Camila <hello@camila.codes>
Camila [Mon, 3 Aug 2020 17:00:45 +0000 (19:00 +0200)]
Fix #2243: use server url instead of hard coded string.
Signed-off-by: Camila <hello@camila.codes>
Kevin Ottens [Mon, 3 Aug 2020 15:09:08 +0000 (17:09 +0200)]
Make sure we always have a CLSID when Explorer integration is used
We update properly the CLSID of folders to integrate them with the
Explorer pane when they are added or removed from the GUI. That said,
there might be cases of users adding folders to sync straight from the
GUI. In such a case the CLSID might be missing on config load so now we
assign one on the fly when that happens.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Nextcloud bot [Tue, 4 Aug 2020 03:30:42 +0000 (03:30 +0000)]
[tx-robot] updated from transifex
Michael Schuster [Fri, 31 Jul 2020 21:51:28 +0000 (23:51 +0200)]
Windows: Enable CFG and SafeSEH linker security flags
See:
https://docs.microsoft.com/en-us/windows/win32/secbp/control-flow-guard
https://docs.microsoft.com/en-us/cpp/build/reference/safeseh-image-has-safe-exception-handlers
Signed-off-by: Michael Schuster <michael@schuster.ms>
Michael Schuster [Fri, 31 Jul 2020 22:17:25 +0000 (00:17 +0200)]
Always show Settings in the context menu (amends #2164)
The context menu should allow access to the Settings even when no accounts are configured.
Users may specify proxy / startup / update and other settings at any time.
This slipped through in #2164.
Signed-off-by: Michael Schuster <michael@schuster.ms>
Nextcloud bot [Mon, 3 Aug 2020 03:31:51 +0000 (03:31 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Sun, 2 Aug 2020 03:30:48 +0000 (03:30 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Sat, 1 Aug 2020 03:30:21 +0000 (03:30 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Fri, 31 Jul 2020 03:31:56 +0000 (03:31 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Thu, 30 Jul 2020 03:31:15 +0000 (03:31 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Wed, 29 Jul 2020 03:32:53 +0000 (03:32 +0000)]
[tx-robot] updated from transifex
Kevin Ottens [Tue, 28 Jul 2020 10:06:03 +0000 (12:06 +0200)]
Merge pull request #2227 from nextcloud/support_png_for_branded_clients_systray
Support png for branded clients systray
Kevin Ottens [Mon, 27 Jul 2020 15:34:42 +0000 (17:34 +0200)]
Use PNGs for branded clients
For branded clients try to load a png of the right size, for unbranded
clients use the SVGs. If something fails at load time skip it.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Thu, 23 Jul 2020 17:06:09 +0000 (19:06 +0200)]
Move the svg rendering part in a lambda
This simplifies the loop body a bit, opening the door to what's next.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Thu, 23 Jul 2020 17:04:26 +0000 (19:04 +0200)]
Extract the svg renderer from the loop
No need to recreate it each time for nothing.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Thu, 23 Jul 2020 16:48:59 +0000 (18:48 +0200)]
Branded clients have more size variety for their icons
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Thu, 23 Jul 2020 16:43:57 +0000 (18:43 +0200)]
Switch to for range loop
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Thu, 23 Jul 2020 15:55:38 +0000 (17:55 +0200)]
Let Theme tell us if we're branded or not
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Camila [Mon, 27 Jul 2020 15:27:23 +0000 (17:27 +0200)]
Add OpacityMask to fix mouse hover on round corner.
- Fix for #2173.
- Removed the workaround for the left round corner which was also
fixed with the OpacityMask.
Signed-off-by: Camila <hello@camila.codes>
Nextcloud bot [Tue, 28 Jul 2020 03:30:52 +0000 (03:30 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Sun, 26 Jul 2020 03:28:55 +0000 (03:28 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Sat, 25 Jul 2020 03:29:52 +0000 (03:29 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Fri, 24 Jul 2020 03:31:38 +0000 (03:31 +0000)]
[tx-robot] updated from transifex
Stephan Beyer [Mon, 6 Jul 2020 21:17:33 +0000 (23:17 +0200)]
Let context menu open wizard if there are no accounts
The context menu offers to open the main dialog and the settings
even if no accounts are configured. In this case, the main dialog
is useless and the settings are probably confusing. Hence, this
commit replaces these actions in the context menu by an action
to open the wizard (which also opens on left click, so this is
the most natural thing to do).
Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
Nextcloud bot [Thu, 23 Jul 2020 03:32:46 +0000 (03:32 +0000)]
[tx-robot] updated from transifex
Michael Schuster [Wed, 22 Jul 2020 13:21:48 +0000 (15:21 +0200)]
Merge pull request #2224 from nextcloud/qt-5.12.9-update
Update CI for Qt 5.12.9
Michael Schuster [Wed, 22 Jul 2020 01:28:06 +0000 (03:28 +0200)]
Update CI for Qt 5.12.9
Also remove the jq package installation from the AppImage build script because
the package is included in the new Docker image (see nextcloud/docker-ci#231).
Signed-off-by: Michael Schuster <michael@schuster.ms>
Nextcloud bot [Wed, 22 Jul 2020 03:31:25 +0000 (03:31 +0000)]
[tx-robot] updated from transifex
Kevin Ottens [Tue, 21 Jul 2020 11:12:39 +0000 (13:12 +0200)]
Merge pull request #2209 from nextcloud/fix-pause-sync-states
Fix pause sync states
Dominique Fuchs [Tue, 21 Jul 2020 10:44:45 +0000 (12:44 +0200)]
sigh, too
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Dominique Fuchs [Tue, 21 Jul 2020 09:44:52 +0000 (11:44 +0200)]
Get a const auto for the FolderMap to iterate over
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Dominique Fuchs [Mon, 20 Jul 2020 17:55:57 +0000 (19:55 +0200)]
Replaced Qt foreach by C++11 ranged for loop
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Dominique Fuchs [Fri, 17 Jul 2020 13:18:03 +0000 (15:18 +0200)]
Properly set syncPause state on Systray creation when account init is done
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Dominique Fuchs [Fri, 17 Jul 2020 12:56:02 +0000 (14:56 +0200)]
Fixed copy/paste bug, resulting in a wrong signal ::pauseSync used instead of ::resumeSync
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Michael Schuster [Mon, 20 Jul 2020 14:53:32 +0000 (16:53 +0200)]
Fix Windows installer graphics files for 2.7
For some reason the exported bitmaps in #2211 were not properly saved in the right
format for display by the NSIS installer system.
Signed-off-by: Michael Schuster <michael@schuster.ms>
Nextcloud bot [Tue, 21 Jul 2020 03:31:14 +0000 (03:31 +0000)]
[tx-robot] updated from transifex
Michael Schuster [Mon, 20 Jul 2020 23:20:19 +0000 (01:20 +0200)]
Drone Upload: Fix if condition for master, in addition to #2213
Don't try to comment on master (old condition was from a previous version of the script).
Signed-off-by: Michael Schuster <michael@schuster.ms>
Michael Schuster [Mon, 20 Jul 2020 16:28:44 +0000 (18:28 +0200)]
Merge pull request #2213 from nextcloud/enh/ci-upload
Drone: Upload AppImage to GitHub using nextcloud-desktop-bot
Michael Schuster [Sun, 19 Jul 2020 05:51:24 +0000 (07:51 +0200)]
Drone: Upload AppImage to GitHub using nextcloud-desktop-bot
Uploading AppImage's to transfer.sh often fail and cause the CI to wait for
the 15 minutes timeout.
This new approach uses a bot user to create releases in a dedicated ci-builds
repository. Each PR (or master) will get a dedicated release with the AppImage
supplied as a release asset. Older assets will be deleted prior uploading the
recent build.
The bot will then (in case of a PR) create a comment in the PR, containing the
download link.
Home of the CI releases: https://github.com/nextcloud-desktop-bot/ci-builds/releases
Inspired by: https://github.com/nextcloud/android/blob/master/scripts/uploadArtifact.sh
Signed-off-by: Michael Schuster <michael@schuster.ms>
Dominique Fuchs [Fri, 17 Jul 2020 12:07:13 +0000 (14:07 +0200)]
Add -no-strip cmd line arg to macdeployqt if when building with Debug profile
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Nextcloud bot [Mon, 20 Jul 2020 03:30:19 +0000 (03:30 +0000)]
[tx-robot] updated from transifex
Michael Schuster [Mon, 20 Jul 2020 00:12:57 +0000 (02:12 +0200)]
Merge pull request #2215 from jneplokh/pr/ownCloud-reference-fix
Change ownCloud reference to Nextcloud
Jacob Neplokh [Sun, 19 Jul 2020 18:36:34 +0000 (11:36 -0700)]
Change ownCloud reference to Nextcloud
Signed-off-by: Jacob Neplokh <me@jacobneplokh.com>
Nextcloud bot [Sun, 19 Jul 2020 03:31:58 +0000 (03:31 +0000)]
[tx-robot] updated from transifex
Michael Schuster [Sat, 18 Jul 2020 12:41:40 +0000 (14:41 +0200)]
Merge pull request #2211 from nextcloud/logo-2.7
Logo update for 2.7
Michael Schuster [Sat, 18 Jul 2020 02:42:28 +0000 (04:42 +0200)]
Update Windows installer graphics with 2.7 logo
Signed-off-by: Michael Schuster <michael@schuster.ms>
Michael Schuster [Sat, 18 Jul 2020 01:42:29 +0000 (03:42 +0200)]
Update logo for 2.7
Based on: https://github.com/nextcloud/promo/blob/
c876a02584705835adb91e2b932b5b63bce2c59b/nextcloud-icon.svg
Signed-off-by: Michael Schuster <michael@schuster.ms>
Nextcloud bot [Sat, 18 Jul 2020 03:30:12 +0000 (03:30 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Fri, 17 Jul 2020 03:31:27 +0000 (03:31 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Thu, 16 Jul 2020 03:41:39 +0000 (03:41 +0000)]
[tx-robot] updated from transifex
Kevin Ottens [Wed, 15 Jul 2020 13:26:45 +0000 (15:26 +0200)]
Update our E2E API requirement
Now that we adjusted our protocol to follow the slightly updated server
API, let's make sure we don't try to talk to a server with an older API.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 15 Jul 2020 15:24:11 +0000 (17:24 +0200)]
Merge pull request #2201 from nextcloud/disable_parallelism_for_e2e_remote_mkdir_jobs
Disable parallelism for e2e remote mkdir jobs
Kevin Ottens [Wed, 15 Jul 2020 11:05:54 +0000 (13:05 +0200)]
Disable parallelism if we think the parent is e2e
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 15 Jul 2020 11:05:11 +0000 (13:05 +0200)]
Allow to override the parallelism
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 15 Jul 2020 11:03:55 +0000 (13:03 +0200)]
Move PropagateRemoteMkdir ctor to the cpp file
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 15 Jul 2020 09:23:11 +0000 (11:23 +0200)]
Make sure the tray icon point is in screen coordinates
Previously we were using QCursor::pos() in the Linux case, which is a
fair heuristic except it will always be relative to the primary screen
and not the current screen. This explains why we had to adjust with the
virtual geometry.
In the Windows and Mac case we got the position out of QSystemTrayIcon
and that one was already relative to the current screen.
So now we use QCursor::pos(currentScreen()) which ensures we give the
coordinates relatively to the current screen also in the Linux case.
Since all platforms are now having that point in the same coordinate
system we don't need to mess around with the virtual geometry to
compensate.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Nextcloud bot [Wed, 15 Jul 2020 03:57:54 +0000 (03:57 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Tue, 14 Jul 2020 03:29:35 +0000 (03:29 +0000)]
[tx-robot] updated from transifex
Kevin Ottens [Mon, 13 Jul 2020 16:04:28 +0000 (18:04 +0200)]
Merge pull request #2188 from nextcloud/upgrade-syncjournaldb-to27
Move existing syncjournal db files from client ver <2.7
Dominique Fuchs [Mon, 13 Jul 2020 12:02:49 +0000 (14:02 +0200)]
Fix typo, use compound assignment op
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Dominique Fuchs [Sun, 12 Jul 2020 08:13:14 +0000 (10:13 +0200)]
Only attempt to move if file exist
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Dominique Fuchs [Sat, 11 Jul 2020 22:08:46 +0000 (00:08 +0200)]
Move existing syncjournal db files from client ver <2.7
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Nextcloud bot [Sun, 12 Jul 2020 03:29:20 +0000 (03:29 +0000)]
[tx-robot] updated from transifex
István Váradi [Sat, 11 Jul 2020 13:18:08 +0000 (15:18 +0200)]
Fetch tags for Debian build
Signed-off-by: István Váradi <ivaradi@varadiistvan.hu>
Nextcloud bot [Sat, 11 Jul 2020 03:29:57 +0000 (03:29 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Fri, 10 Jul 2020 03:33:30 +0000 (03:33 +0000)]
[tx-robot] updated from transifex
Nextcloud bot [Thu, 9 Jul 2020 23:51:47 +0000 (23:51 +0000)]
[tx-robot] updated from transifex
Michael Schuster [Thu, 9 Jul 2020 21:36:13 +0000 (23:36 +0200)]
Merge pull request #2183 from nextcloud/fix-delete-base-folders-instr
Prevent empty FileMap in local csync to be processed if folder not empty
Dominique Fuchs [Thu, 9 Jul 2020 19:47:34 +0000 (21:47 +0200)]
Merge branch 'fix-delete-base-folders-instr' of https://github.com/Nextcloud/desktop into fix-delete-base-folders-instr
Dominique Fuchs [Thu, 9 Jul 2020 19:47:19 +0000 (21:47 +0200)]
Remove debug variable
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Dominique Fuchs [Thu, 9 Jul 2020 19:38:11 +0000 (21:38 +0200)]
Merge branch 'master' into fix-delete-base-folders-instr
Dominique Fuchs [Thu, 9 Jul 2020 19:23:24 +0000 (21:23 +0200)]
Prevent empty FileMap in local csync to be processed if folder not empty
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Kevin Ottens [Thu, 9 Jul 2020 10:56:19 +0000 (12:56 +0200)]
Properly register folder as encrypted during sync
Turns out that when we added a new e2e folder during sync, we were
passing the wrong path to the e2e object. We have several path
convention in the sync code, just happened to be the wrong one.
I still long for the day when we'll use the type system to deal with
paths. All those strings are error-prone.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Thu, 9 Jul 2020 10:17:42 +0000 (12:17 +0200)]
Recover from missing metadata on uploads
Other clients seem to allow creating empty encrypted folders with no
metadata associated to them, so let's get ready to handle it. In case of
a 404 to get the metadata, we create an empty metadata payload and pass
it further down.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Thu, 9 Jul 2020 07:54:39 +0000 (09:54 +0200)]
Change the separator in the private key
It used to be a base64 encoded '|', now it is still a '|' but not
encoded, let's adjust accordingly.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 8 Jul 2020 15:09:53 +0000 (17:09 +0200)]
Prevent parallelism when deleting encrypted files
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 8 Jul 2020 14:48:06 +0000 (16:48 +0200)]
Unlock the folder only after we actually deleted the file
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 8 Jul 2020 14:22:57 +0000 (16:22 +0200)]
Allow to specify the e2e-token on DeleteJob
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 8 Jul 2020 14:18:08 +0000 (16:18 +0200)]
Stop unlocking from within PropagateRemoteDeleteEncrypted
We need to finish deleting the file before we can actually unlock. Also
the token will be necessary for the delete to succeed.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 8 Jul 2020 13:35:39 +0000 (15:35 +0200)]
Compare the unencrypted filename with the originalName
Otherwise obviously we'd never find the files in the metadata.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 8 Jul 2020 13:35:02 +0000 (15:35 +0200)]
Use the encrypted path for collection listing
If we use the local path we'll get a 404.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 8 Jul 2020 13:16:53 +0000 (15:16 +0200)]
Pass e2e-token to PropagateUpload subjobs
The headers() method is used to pass extra headers to the PUT jobs for
instance, definitely needed for uploads now.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 8 Jul 2020 13:16:27 +0000 (15:16 +0200)]
Pass the e2e-token for encrypted MKCOL
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Kevin Ottens [Wed, 8 Jul 2020 13:14:18 +0000 (15:14 +0200)]
Allow to pass extraHeaders to a path based MkColJob
We could specify the extra headers with a URL but not a simple path.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>