nextcloud-desktop.git
5 years agoMove KeychainChunk class from gui to libsync
Michael Schuster [Wed, 24 Jun 2020 23:08:59 +0000 (01:08 +0200)]
Move KeychainChunk class from gui to libsync

Signed-off-by: Michael Schuster <michael@schuster.ms>
5 years agoMove QKeychain::NoBackendAvailable error handling to KeychainChunk class
Michael Schuster [Wed, 24 Jun 2020 22:30:41 +0000 (00:30 +0200)]
Move QKeychain::NoBackendAvailable error handling to KeychainChunk class

Originally this was in the WebFlowCredentials class. Since we've abstracted everything
from there already, let's also move this in case some other code may use
KeychainChunk::ReadJob prior to WebFlowCredentials.

Signed-off-by: Michael Schuster <michael@schuster.ms>
5 years agoFix the hover for the other menu items
Kevin Ottens [Mon, 6 Jul 2020 11:55:14 +0000 (13:55 +0200)]
Fix the hover for the other menu items

Ultimately we would avoid the code duplication by creating our own
proper QQC2 style instead of directly tuning everything. That's a battle
for another time (more elements would need to be adjusted for that, I
don't want to dilute this branch too much).

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoFix hover cutoff in apps menu
Dominique Fuchs [Wed, 17 Jun 2020 17:39:12 +0000 (19:39 +0200)]
Fix hover cutoff in apps menu

Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
5 years agoforgot some indent
asemmar [Thu, 2 Jul 2020 22:04:03 +0000 (00:04 +0200)]
forgot some indent

Signed-off-by: asemmar <anis.semmar@itron.com>
5 years agofixed bad spelling of word 'retreive' except in sqlite dependancy
asemmar [Thu, 2 Jul 2020 21:40:27 +0000 (23:40 +0200)]
fixed bad spelling of word 'retreive' except in sqlite dependancy

Signed-off-by: asemmar <anis.semmar@itron.com>
5 years agoMerge pull request #2150 from nextcloud/fix_e2e_moves_handling
Kevin Ottens [Mon, 6 Jul 2020 06:40:49 +0000 (08:40 +0200)]
Merge pull request #2150 from nextcloud/fix_e2e_moves_handling

Fix e2e moves handling

5 years agoMake sure moves involving e2e are delete + upload
Kevin Ottens [Thu, 2 Jul 2020 16:19:16 +0000 (18:19 +0200)]
Make sure moves involving e2e are delete + upload

If the file has a mangled name or will end up in a parent directory
known to be encrypted, we stick to the CSYNC_INTRUCTION_NEW instead of
going for CSYNC_INSTRUCTION_RENAME. This way we'll have a delete and an
upload instead of a move command.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoUpdate the metadata table with encryption info before discovery
Kevin Ottens [Thu, 2 Jul 2020 15:24:58 +0000 (17:24 +0200)]
Update the metadata table with encryption info before discovery

When the ClientSideEncryption object is fed, also serialize the
encryption info of the folders inside the metadata table.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoAdd isE2eEncrypted column in the metadata table
Kevin Ottens [Thu, 2 Jul 2020 15:22:43 +0000 (17:22 +0200)]
Add isE2eEncrypted column in the metadata table

This will allow to exploit the information of a directory being
encrypted or not during the discovery phase.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoAlso deliver the encrypted status via the ClientEncryption signal
Kevin Ottens [Thu, 2 Jul 2020 14:37:01 +0000 (16:37 +0200)]
Also deliver the encrypted status via the ClientEncryption signal

This will turn useful for other consumers of that data. The alternative
would be to expose a method breaking all form of encapsulation.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoMove the e2e information fetch even earlier
Kevin Ottens [Thu, 2 Jul 2020 14:22:48 +0000 (16:22 +0200)]
Move the e2e information fetch even earlier

We used to do it when the propagation starts, let's do it even before
the discovery starts. This way we'll have a chance to exploit the
information during the discovery phase.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoSplit the discovery phase out of startSync()
Kevin Ottens [Thu, 2 Jul 2020 13:58:54 +0000 (15:58 +0200)]
Split the discovery phase out of startSync()

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years ago[tx-robot] updated from transifex
Nextcloud bot [Mon, 6 Jul 2020 03:24:15 +0000 (03:24 +0000)]
[tx-robot] updated from transifex

5 years ago[tx-robot] updated from transifex
Nextcloud bot [Sun, 5 Jul 2020 03:25:01 +0000 (03:25 +0000)]
[tx-robot] updated from transifex

5 years ago[tx-robot] updated from transifex
Nextcloud bot [Sat, 4 Jul 2020 03:27:19 +0000 (03:27 +0000)]
[tx-robot] updated from transifex

5 years ago[tx-robot] updated from transifex
Nextcloud bot [Fri, 3 Jul 2020 03:29:57 +0000 (03:29 +0000)]
[tx-robot] updated from transifex

5 years agoDon't display quota information when the user has no quota.
Camila [Wed, 1 Jul 2020 19:30:17 +0000 (21:30 +0200)]
Don't display quota information when the user has no quota.

- The code handling the api response was not up to date with the latest
api changes.
- Unlimited quota display: use qint64 to avoid data loss
- Change total with quota: total holds the quota total and not the storage total.

Signed-off-by: Camila <hello@camila.codes>
5 years agoFix #2085 new tray menu.
Camila [Mon, 29 Jun 2020 17:41:51 +0000 (19:41 +0200)]
Fix #2085 new tray menu.

Update systray behavior and context menu:
- left click brings up the new QtQuick based dialogs on all latforms
- right click brings up the new QtQuick based dialog on Mac OS only
- right click brings up a context menu on all other platforms than Mac OS
- "Quit Nextcloud" => "Exit Nextcloud"
- Add "Open main dialog" option.

Signed-off-by: Camila <hello@camila.codes>
5 years ago[tx-robot] updated from transifex
Nextcloud bot [Thu, 2 Jul 2020 03:35:35 +0000 (03:35 +0000)]
[tx-robot] updated from transifex

5 years agoMerge pull request #2144 from nextcloud/fix_e2ee_upload_lock_starvation
Kevin Ottens [Wed, 1 Jul 2020 17:22:45 +0000 (19:22 +0200)]
Merge pull request #2144 from nextcloud/fix_e2ee_upload_lock_starvation

Fix e2ee upload lock starvation

5 years agoAvoid job parallelism when uploading to an encrypted folder
Kevin Ottens [Wed, 1 Jul 2020 12:12:18 +0000 (14:12 +0200)]
Avoid job parallelism when uploading to an encrypted folder

With the current design of the file upload this necessarily pushed to a
lock starvation on the folder. Indeed you could end up with N jobs
asking for the lock at the same time. So just avoid parallelizing for
now even though it will be slow.

We could try to optimize but that'd require some serious changes to the
sync logic on the jobs... let's stabilize first and optimize later.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoOverride parallelism() for uploads
Kevin Ottens [Wed, 1 Jul 2020 11:20:56 +0000 (13:20 +0200)]
Override parallelism() for uploads

This way we'll be able to control parallelism for upload jobs.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoMove PropagateUpload ctor impl to the cpp file
Kevin Ottens [Wed, 1 Jul 2020 11:19:08 +0000 (13:19 +0200)]
Move PropagateUpload ctor impl to the cpp file

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoMerge pull request #2139 from nextcloud/fix_e2ee_folder_sync_connection
Kevin Ottens [Wed, 1 Jul 2020 17:10:44 +0000 (19:10 +0200)]
Merge pull request #2139 from nextcloud/fix_e2ee_folder_sync_connection

Fix e2ee folder sync connection

5 years agoReduce interaction with e2ee folders when in the wizard
Kevin Ottens [Tue, 30 Jun 2020 16:18:06 +0000 (18:18 +0200)]
Reduce interaction with e2ee folders when in the wizard

During the wizard we currently don't have much information about the
encrypted folders. In particular we can only display their mangled names
which is far from ideal for the user to make an informed choice.

That's why in the wizard we now forbid creation of subfolders in e2ee
folders and we also don't display subfolders of e2ee folders.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoProperly display encryption status for non root folder connection
Kevin Ottens [Tue, 30 Jun 2020 15:47:10 +0000 (17:47 +0200)]
Properly display encryption status for non root folder connection

Since the e2e oracle works only in term of absolute remote paths and
that our model x._path was relative, we need to properly convert.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoDeal properly with encrypted item updates accross connections
Kevin Ottens [Tue, 30 Jun 2020 15:20:02 +0000 (17:20 +0200)]
Deal properly with encrypted item updates accross connections

In such cases we get a download for which _file is already the demangled
name and _encryptedFileName has the mangled information. This is
different to what we encountered so far where initially _file was
mangled and _encryptedFileName was empty. Let's deal with that case
properly.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoAlso use mangled paths when looking for entries below a path
Kevin Ottens [Tue, 30 Jun 2020 12:19:55 +0000 (14:19 +0200)]
Also use mangled paths when looking for entries below a path

Otherwise on second sync we wouldn't find anything under a mangled path
and just end up thinking said files were removed.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoAlso check on mangled names when cleaning up the journal
Kevin Ottens [Tue, 30 Jun 2020 08:24:40 +0000 (10:24 +0200)]
Also check on mangled names when cleaning up the journal

Otherwise, after a first sync all the mangled entries would be removed
from the journal. On second sync it would be fine because we'd then have
seen the unmangled names because of the local files. Unfortunately
that'd mean reuploading them for nothing or trying to mkdir again on the
server for nothing... with a chance of using differently mangled names
(although I didn't spot it, I can't exclude it never happened).

This also led to weirdly getting stuck during sync when there was more
than one sync point.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoBetter separate between absolute and relative paths on uploads
Kevin Ottens [Tue, 30 Jun 2020 14:04:55 +0000 (16:04 +0200)]
Better separate between absolute and relative paths on uploads

Yes... I still wish this would be all driven by the type system, would be
much less error-prone.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoBetter separate between absolute and relative paths on downloads
Kevin Ottens [Mon, 29 Jun 2020 16:20:23 +0000 (18:20 +0200)]
Better separate between absolute and relative paths on downloads

I wish this would be all driven by the type system instead of
error-prone string concatenation everywhere. That will be for a (much)
later refactoring hopefully.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoAlways use an absolute remote path for GetFolderEncryptStatusJob
Kevin Ottens [Mon, 29 Jun 2020 16:16:59 +0000 (18:16 +0200)]
Always use an absolute remote path for GetFolderEncryptStatusJob

It turns out this job expected an absolute remote path even in the case
of a subfolder sync point.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoMerge pull request #2145 from nextcloud/repair_and_improve_logging
Kevin Ottens [Wed, 1 Jul 2020 16:57:16 +0000 (18:57 +0200)]
Merge pull request #2145 from nextcloud/repair_and_improve_logging

Repair and improve logging

5 years agoAllow to control logFlush from the config file
Kevin Ottens [Wed, 1 Jul 2020 14:10:10 +0000 (16:10 +0200)]
Allow to control logFlush from the config file

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoAllow to control logDir from the config file
Kevin Ottens [Wed, 1 Jul 2020 14:08:13 +0000 (16:08 +0200)]
Allow to control logDir from the config file

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoAllow to control logExpire from the config file
Kevin Ottens [Wed, 1 Jul 2020 14:03:45 +0000 (16:03 +0200)]
Allow to control logExpire from the config file

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoAllow to control log debug from the config file
Kevin Ottens [Wed, 1 Jul 2020 13:56:23 +0000 (15:56 +0200)]
Allow to control log debug from the config file

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoHave a filter rule capturing all of nextcloud debug
Kevin Ottens [Wed, 1 Jul 2020 13:32:59 +0000 (15:32 +0200)]
Have a filter rule capturing all of nextcloud debug

This was half broken before that commit and the previous one since some
of the categories would not be captured.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoMake sure all our logging categories start with nextcloud.
Kevin Ottens [Wed, 1 Jul 2020 13:30:44 +0000 (15:30 +0200)]
Make sure all our logging categories start with nextcloud.

Otherwise it was a bit confusing and annoying for filter rules:
e.g. "nextcloud.sync.*" vs "sync.*".

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoRepair the log message pattern
Kevin Ottens [Wed, 1 Jul 2020 13:12:38 +0000 (15:12 +0200)]
Repair the log message pattern

At last it will become useful again...

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years ago[Logger] Ensure log file is flushed before crash
Hannah von Reth [Tue, 17 Mar 2020 08:09:43 +0000 (09:09 +0100)]
[Logger] Ensure log file is flushed before crash

5 years ago[Logger] Ensure errors are also printed to an attached console
Hannah von Reth [Tue, 17 Mar 2020 08:08:27 +0000 (09:08 +0100)]
[Logger] Ensure errors are also printed to an attached console

5 years agoLogger: Remove the thread pointer from the log.
Olivier Goffart [Wed, 5 Feb 2020 11:37:58 +0000 (12:37 +0100)]
Logger: Remove the thread pointer from the log.

We don't do discovery in a thread or use many threads anymore so this is
just noise.

Also use of QString::sprintf is deprecated, and C cast.

5 years ago[Logger] Correctly handle message priority
Hannah von Reth [Mon, 9 Dec 2019 08:31:39 +0000 (09:31 +0100)]
[Logger] Correctly handle message priority

This fixes the flodded sys log.

Fixes: #7453
5 years agoPrint critical and fatal messages to stderr
Hannah von Reth [Tue, 13 Aug 2019 10:50:35 +0000 (12:50 +0200)]
Print critical and fatal messages to stderr

That way we might get a reason why the client crashes (dev setup)

5 years agoLogDir: Compress last logfile on restart
Christian Kamm [Tue, 30 Jul 2019 12:04:34 +0000 (14:04 +0200)]
LogDir: Compress last logfile on restart

For #7353

5 years agoProperly guard io.h since it is Windows only
Kevin Ottens [Wed, 1 Jul 2020 13:12:25 +0000 (15:12 +0200)]
Properly guard io.h since it is Windows only

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoMake -logfile - work on Windows
Dominik Schmidt [Mon, 10 Sep 2018 10:06:25 +0000 (03:06 -0700)]
Make -logfile - work on Windows

5 years agoMake qFatal() trigger the crash reporter on Windows
Dominik Schmidt [Wed, 31 Oct 2018 12:21:41 +0000 (13:21 +0100)]
Make qFatal() trigger the crash reporter on Windows

5 years agoChange the space character to a dot
Valdnet [Wed, 1 Jul 2020 07:59:31 +0000 (09:59 +0200)]
Change the space character to a dot

Change the space character to a dot in the text string

5 years agoDelete a space character
Valdnet [Wed, 1 Jul 2020 08:03:25 +0000 (10:03 +0200)]
Delete a space character

Delete a space character before the line breaks

5 years ago[tx-robot] updated from transifex
Nextcloud bot [Wed, 1 Jul 2020 03:25:34 +0000 (03:25 +0000)]
[tx-robot] updated from transifex

5 years agoMerge pull request #2128 from nextcloud/fix_subfolder_encryption_scheme
Kevin Ottens [Tue, 30 Jun 2020 15:19:02 +0000 (17:19 +0200)]
Merge pull request #2128 from nextcloud/fix_subfolder_encryption_scheme

Fix subfolder encryption scheme

5 years agoFix parenting issues of PropagateUploadEncrypted
Kevin Ottens [Tue, 30 Jun 2020 09:21:02 +0000 (11:21 +0200)]
Fix parenting issues of PropagateUploadEncrypted

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoTake care of mangled paths on download as well
Kevin Ottens [Fri, 26 Jun 2020 07:43:06 +0000 (09:43 +0200)]
Take care of mangled paths on download as well

This means adjusting PropagateDownloadEncrypted so that it knows where
the file will end (otherwise it would create temporary files in non
existant paths for instance).
In turn we have to adjust PropagateDownloadFile accordingly so that it
resolves the local folder the file will end up in.
And last we adjust PropagateLocalMkdir to resolve paths as well and
demangle as needed.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoUpdate the item even if we don't call decryptFile()
Kevin Ottens [Thu, 25 Jun 2020 10:47:32 +0000 (12:47 +0200)]
Update the item even if we don't call decryptFile()

This way it makes it usable in a directory context.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoStop leaking PropagateDownloadEncrypted objects
Kevin Ottens [Wed, 24 Jun 2020 15:58:52 +0000 (17:58 +0200)]
Stop leaking PropagateDownloadEncrypted objects

We give them a parent to make sure they will be destroyed when the jobs
which created them are destroyed themselves.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoDisplay folder names demangled in the settings
Kevin Ottens [Tue, 23 Jun 2020 17:24:56 +0000 (19:24 +0200)]
Display folder names demangled in the settings

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoAssume that folder paths can be mangled
Kevin Ottens [Tue, 23 Jun 2020 16:13:20 +0000 (18:13 +0200)]
Assume that folder paths can be mangled

PropagateUploadEncrypted made the assumption of the folder names never
being mangled. This is not true since the previous commits so make sure
we properly deal with that using the journal db.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoUse QHash instead of QMap
Kevin Ottens [Thu, 18 Jun 2020 13:15:25 +0000 (15:15 +0200)]
Use QHash instead of QMap

This is not only a question of performances in our case (complexity
being better on look ups). It also provides a few more services.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoEnsure GetFolderEncryptStatusJob gets all the folders
Kevin Ottens [Thu, 18 Jun 2020 11:34:47 +0000 (13:34 +0200)]
Ensure GetFolderEncryptStatusJob gets all the folders

We ensure the PROPFIND Depth is infinity by explicitly specifying the
header (turns out our implementation just doesn't assume infinity
otherwise). This way we have a clear picture about *all* the folders of
the user, otherwise ClientSideEncryption couldn't be a trustable oracle
on the encryption state for any folder not on the root and all the
encryption code assumes it has a full picture of encryption.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoFinally encrypt subdirectories during sync
Kevin Ottens [Wed, 17 Jun 2020 17:19:30 +0000 (19:19 +0200)]
Finally encrypt subdirectories during sync

We catch when a directory is inside a known encrypted folder and in such
a case we now do the following:
 1) we encrypt the folder meta data (its name) properly and create it
    under that mangled name on the server side
 2) we mark the new folder itself as encrypted

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoMake PropagateUploadEncrypted reusable in a directory context
Kevin Ottens [Wed, 17 Jun 2020 17:18:04 +0000 (19:18 +0200)]
Make PropagateUploadEncrypted reusable in a directory context

It was assuming we'd encrypt only files but directory names also need to
be encrypted. We just skip the writing to temp file part in that case.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoMark user strings for translation
Kevin Ottens [Tue, 30 Jun 2020 09:05:12 +0000 (11:05 +0200)]
Mark user strings for translation

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoMove the encrypt folder logic in a reusable job class
Kevin Ottens [Wed, 17 Jun 2020 17:08:59 +0000 (19:08 +0200)]
Move the encrypt folder logic in a reusable job class

This way this whole logic isn't stuck into the settings dialog anymore.
Also cleaned up the unused "decrypt folder" logic.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoUse the propagator to trigger the e2e info fetch
Kevin Ottens [Wed, 17 Jun 2020 13:06:48 +0000 (15:06 +0200)]
Use the propagator to trigger the e2e info fetch

This is a much better place than the GUI, this way we ensure the
propagator is always operating of up to date information. Previously if
the propagator kicked in without user interaction from startup (not
showing the settings dialog) it would have no E2E information available
whatsoever... unsurprisingly it would thus take wrong information at
every turn.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoGet ClientSideEncryption to notify when folder info fetch is done
Kevin Ottens [Wed, 17 Jun 2020 13:06:05 +0000 (15:06 +0200)]
Get ClientSideEncryption to notify when folder info fetch is done

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoFix typo
Kevin Ottens [Wed, 17 Jun 2020 11:31:30 +0000 (13:31 +0200)]
Fix typo

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoFix typo
Kevin Ottens [Wed, 17 Jun 2020 10:52:06 +0000 (12:52 +0200)]
Fix typo

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoDon't show the encrypt action in subfolders of encrypted folders
Kevin Ottens [Wed, 17 Jun 2020 10:42:57 +0000 (12:42 +0200)]
Don't show the encrypt action in subfolders of encrypted folders

Since we want to move to a place where the encryption of subfolders is
always enforced it makes no sense to leave it in control of the user.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoFix typo
Kevin Ottens [Wed, 17 Jun 2020 10:31:53 +0000 (12:31 +0200)]
Fix typo

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years agoCapture the pointer to info by value
Kevin Ottens [Wed, 17 Jun 2020 10:29:14 +0000 (12:29 +0200)]
Capture the pointer to info by value

Using a reference capture is a disaster waiting to happen here, if for
some reason we'd move from exec() to popup() for the menu below we'd be
getting garbage in the lambda call.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
5 years ago[tx-robot] updated from transifex
Nextcloud bot [Tue, 30 Jun 2020 03:24:51 +0000 (03:24 +0000)]
[tx-robot] updated from transifex

5 years ago[tx-robot] updated from transifex
Nextcloud bot [Mon, 29 Jun 2020 03:25:17 +0000 (03:25 +0000)]
[tx-robot] updated from transifex

5 years agoMerge pull request #2126 from nextcloud/sbeyer-simplify-systray-positioning
Kevin Ottens [Fri, 26 Jun 2020 12:29:29 +0000 (14:29 +0200)]
Merge pull request #2126 from nextcloud/sbeyer-simplify-systray-positioning

Slightly simplify code for Systray positioning

5 years agoHide Systray's auxiliary positioning methods from public and Qml
Stephan Beyer [Thu, 25 Jun 2020 10:46:16 +0000 (12:46 +0200)]
Hide Systray's auxiliary positioning methods from public and Qml

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
5 years agoSimplify tray window positioning
Stephan Beyer [Tue, 23 Jun 2020 09:20:30 +0000 (11:20 +0200)]
Simplify tray window positioning

The Qml position setting code is moved to C++, which allowed to get rid
of the currentScreenIndex() method (which seemed to be just a detour to
pass the screen from C++ to Qml).

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
5 years ago[tx-robot] updated from transifex
Nextcloud bot [Fri, 26 Jun 2020 03:25:36 +0000 (03:25 +0000)]
[tx-robot] updated from transifex

5 years agoFix crash in UserModel::currentUser() and add more sanity checks
Michael Schuster [Thu, 25 Jun 2020 18:02:22 +0000 (20:02 +0200)]
Fix crash in UserModel::currentUser() and add more sanity checks

Commit 07bede8 (PR #1892) introduced a new helper method currentUser()
that didn't check for _users.count() thus causing to throw an
"index out of range" exception when no accounts are configured.

This commit uses the opportunity to add more sanity checks to UserModel.

Signed-off-by: Michael Schuster <michael@schuster.ms>
5 years ago[tx-robot] updated from transifex
Nextcloud bot [Thu, 25 Jun 2020 03:26:55 +0000 (03:26 +0000)]
[tx-robot] updated from transifex

5 years agoMerge pull request #2119 from nextcloud/sbeyer-fix-segv-on-exit
Kevin Ottens [Wed, 24 Jun 2020 16:05:37 +0000 (18:05 +0200)]
Merge pull request #2119 from nextcloud/sbeyer-fix-segv-on-exit

Fix SEGV (due to circular ownership) at exit

5 years agoMake Systray's _trayEngine a QPointer
Stephan Beyer [Wed, 24 Jun 2020 15:24:52 +0000 (17:24 +0200)]
Make Systray's _trayEngine a QPointer

This is just safer.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
5 years agoFix SEGV (by circular ownership) at exit
Stephan Beyer [Wed, 24 Jun 2020 11:50:17 +0000 (13:50 +0200)]
Fix SEGV (by circular ownership) at exit

Commit a12205f322d43476230881192616e47c9cf786ef (PR #1891) introduced
a circular ownership: qmlRegisterSingletonType<Systray>(...) makes the
QQmlEngine own the resulting singleton Systray instance, however, the
QQmlEngine _trayEngine itself is owned by the Systray instance. This
circular ownership results in a crash when the destructor of Systray
calls the destructor of _trayEngine which attempts to call the destructor
of Systray.

This commit solves this problem by making ownCloudGui, which is the
parent of Systray, the parent of the _trayEngine.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
5 years agoLet Systray constructor call its base class constructor
Stephan Beyer [Wed, 17 Jun 2020 20:46:25 +0000 (22:46 +0200)]
Let Systray constructor call its base class constructor

Although I see no behavioral difference, this is probably
a good idea.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
5 years ago[tx-robot] updated from transifex
Nextcloud bot [Wed, 24 Jun 2020 03:25:43 +0000 (03:25 +0000)]
[tx-robot] updated from transifex

5 years ago[tx-robot] updated from transifex
Nextcloud bot [Tue, 23 Jun 2020 03:30:12 +0000 (03:30 +0000)]
[tx-robot] updated from transifex

5 years agoFix issue #2108: Default system proxy not working with Account Wizard
Michael Schuster [Thu, 18 Jun 2020 19:48:08 +0000 (21:48 +0200)]
Fix issue #2108: Default system proxy not working with Account Wizard

Discovered on Windows in conjunction with PAC scripts:
- Already configured accounts worked
- Fresh client account setup did not work

Reason:
- Proxy was reset over and over again in Account::setCredentials

Signed-off-by: Michael Schuster <michael@schuster.ms>
5 years agoMerge pull request #2110 from nextcloud/sbeyer-menu-border-colors
Kevin Ottens [Mon, 22 Jun 2020 09:58:10 +0000 (11:58 +0200)]
Merge pull request #2110 from nextcloud/sbeyer-menu-border-colors

Darken menu border color

5 years agoMake sure the menu separator uses Style.menuBorder color
Stephan Beyer [Sun, 21 Jun 2020 22:49:06 +0000 (00:49 +0200)]
Make sure the menu separator uses Style.menuBorder color

In case the default color value will ever change, this
commit makes sure that the colors of the menu border and
the menu separator coincide.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
5 years agoDarken menu border color
Stephan Beyer [Fri, 19 Jun 2020 20:38:34 +0000 (22:38 +0200)]
Darken menu border color

The lightgray menu border color #ededed introduced in
commit f147e5a66f43657805542904b43e0b4e662ffe04 (by PR #2095)
is way too light for my display (and probably others).
Thus the menus have no clear border which looks odd and broken.

This commit simply darkens the menu border to #bdbdbd, which
coincides with the (current default) color of the menu separator.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
5 years ago[tx-robot] updated from transifex
Nextcloud bot [Mon, 22 Jun 2020 03:24:14 +0000 (03:24 +0000)]
[tx-robot] updated from transifex

5 years ago[tx-robot] updated from transifex
Nextcloud bot [Sat, 20 Jun 2020 03:26:41 +0000 (03:26 +0000)]
[tx-robot] updated from transifex

5 years agoMerge pull request #2106 from nextcloud/fix/proxy-build-libsync
Michael Schuster [Thu, 18 Jun 2020 19:24:25 +0000 (21:24 +0200)]
Merge pull request #2106 from nextcloud/fix/proxy-build-libsync

Fix libsync exports for proxy changes in #1886

5 years agoFix libsync exports for proxy changes in #1886
Michael Schuster [Thu, 18 Jun 2020 19:05:11 +0000 (21:05 +0200)]
Fix libsync exports for proxy changes in #1886

Build failed on Windows, missing libsync export for printQNetworkProxy after
moving ClientProxy class from gui to libsync.

Signed-off-by: Michael Schuster <michael@schuster.ms>
5 years agoMerge pull request #1886 from nextcloud/enh/proxy
Michael Schuster [Thu, 18 Jun 2020 18:38:27 +0000 (20:38 +0200)]
Merge pull request #1886 from nextcloud/enh/proxy

Move the proxyfiles to libsync where they make more sense

5 years agoImprove proxy logging: Log type string instead of abstract ID
Michael Schuster [Thu, 18 Jun 2020 18:13:57 +0000 (20:13 +0200)]
Improve proxy logging: Log type string instead of abstract ID

The format in the client log was: 3://host:port
Now it is shown like:             HttpProxy://host:port

The old ID display was confusing and misleading users (and people debugging it ;p)

Signed-off-by: Michael Schuster <michael@schuster.ms>
5 years agoMove the proxyfiles to libsync where they make more sense
Roeland Jago Douma [Sat, 21 Mar 2020 10:25:34 +0000 (11:25 +0100)]
Move the proxyfiles to libsync where they make more sense

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Michael Schuster <michael@schuster.ms>
5 years ago[tx-robot] updated from transifex
Nextcloud bot [Thu, 18 Jun 2020 03:26:43 +0000 (03:26 +0000)]
[tx-robot] updated from transifex

5 years agoMerge pull request #2093 from nicrame/patch-1
Michael Schuster [Wed, 17 Jun 2020 23:36:00 +0000 (01:36 +0200)]
Merge pull request #2093 from nicrame/patch-1

Add photothumb.db to sync-exclude.lst