Olivier Goffart [Tue, 9 Oct 2018 13:12:02 +0000 (15:12 +0200)]
New Propagation algorithm: Fetch, and emit, the root etag
Remove the feature to concatenate etags as servers that don't
have a root etag are no longer suported
Olivier Goffart [Tue, 9 Oct 2018 11:45:27 +0000 (13:45 +0200)]
New Discovery Algorithm: Ge tthe size of new folders
Also add a test that this works properly
Olivier Goffart [Tue, 9 Oct 2018 10:49:21 +0000 (12:49 +0200)]
New Discovery algorithm: Split the process function even further
Move the finialization in its own function.
This allow to save a bit of code duplication.
Also change the order of the parameter in the constructor for consistency
Olivier Goffart [Fri, 5 Oct 2018 09:05:08 +0000 (11:05 +0200)]
New Discovery Algo: Refactor by splitting the processFile in two
Olivier Goffart [Thu, 4 Oct 2018 13:04:29 +0000 (15:04 +0200)]
New Discovery Algorithm: Handle rename of virtual files
Christian Kamm [Wed, 26 Sep 2018 11:41:02 +0000 (13:41 +0200)]
Virtual files: Renames propagate #6718
Olivier Goffart [Sun, 16 Sep 2018 10:25:44 +0000 (12:25 +0200)]
Folder Wizard: Disable the 'choose what to sync' treeview if virtual files are selected
Don't allow to configure virtual files with a selective sync blacklist
Olivier Goffart [Sun, 16 Sep 2018 19:52:50 +0000 (21:52 +0200)]
AccountSetting: Fix Small Memoy leak
Olivier Goffart [Wed, 5 Sep 2018 16:36:53 +0000 (18:36 +0200)]
Fix tx.pl
The conflict filename changed
Olivier Goffart [Mon, 3 Sep 2018 07:45:08 +0000 (09:45 +0200)]
AccountSettings: Force sync should wipe the blacklist
Issue #6757
Olivier Goffart [Thu, 30 Aug 2018 16:14:33 +0000 (18:14 +0200)]
Virtual files: don't check for new big folders
https://github.com/owncloud/client/issues/6724#issuecomment-
417368475
Olivier Goffart [Thu, 30 Aug 2018 16:14:13 +0000 (18:14 +0200)]
Virtual files: Don't show selective sync
Issue #6724
Olivier Goffart [Tue, 28 Aug 2018 08:35:26 +0000 (10:35 +0200)]
Socket API: add an option to replace existing files with virtual files
Issue #6726
Olivier Goffart [Fri, 29 Jun 2018 07:43:53 +0000 (09:43 +0200)]
Update the minimum supported version
We want to warn if the server version is not supported and did not get
appropriate QA for this client version.
https://github.com/owncloud/enterprise/issues/2687
Markus Goetz [Wed, 22 Aug 2018 14:38:57 +0000 (16:38 +0200)]
CMakeLists.txt: Log the Qt version in compile
Christian Kamm [Tue, 21 Aug 2018 09:24:45 +0000 (11:24 +0200)]
Conflicts: Rename BasePath to InitialBasePath #6709
Olivier Goffart [Thu, 5 Jul 2018 12:36:10 +0000 (14:36 +0200)]
Checksum: Add support for SHA256 and SHA3
In case, some day, the server also supports it
Olivier Goffart [Thu, 5 Jul 2018 12:24:44 +0000 (14:24 +0200)]
Move the checksum related routine from FileSystem to checksum, where they belong
Olivier Goffart [Mon, 3 Sep 2018 09:47:15 +0000 (11:47 +0200)]
Fix a compilation error on windows
Olivier Goffart [Mon, 27 Aug 2018 13:10:12 +0000 (15:10 +0200)]
New Discovery Algo: readability improvements
As proposed by ckamm on #6738
Olivier Goffart [Tue, 21 Aug 2018 17:54:48 +0000 (19:54 +0200)]
New discovery algo: data finger print
Olivier Goffart [Tue, 21 Aug 2018 11:08:09 +0000 (13:08 +0200)]
New Disco Algo: Handle spurious virtual files
Port commit
0b9049e6ff01401883184d29d22dd4a30c092da8
for issue #6718
Olivier Goffart [Tue, 21 Aug 2018 08:45:27 +0000 (10:45 +0200)]
Fix test link with older Qt
Olivier Goffart [Tue, 14 Aug 2018 11:35:04 +0000 (13:35 +0200)]
Conflict handling: add the OC-ConflictBasePath header
Issue #6702
Olivier Goffart [Sat, 18 Aug 2018 07:37:00 +0000 (09:37 +0200)]
Account Settings: Add a text for folder using vierual files
Issue #6723
Olivier Goffart [Sat, 18 Aug 2018 07:14:01 +0000 (09:14 +0200)]
Virtual Files: Set the mtime of the virtual file to that of the server
Note: When the server mtime is modified, the mtime of the file is not updated
Issue #6727
Olivier Goffart [Fri, 17 Aug 2018 10:04:48 +0000 (12:04 +0200)]
Virtual Files Mime Type: use "vnd." prefix instead of "x-"
As reported in https://github.com/owncloud/client/issues/6717#issuecomment-
413703567
Christian Kamm [Thu, 16 Aug 2018 10:38:39 +0000 (12:38 +0200)]
Virtual files: Renaming to virtual doesn't delete data #6718
Unfortunately to do this, the local update phase must write to the
database, creating a new side-effect and order dependency (local update
must run before remote update).
Olivier Goffart [Tue, 7 Aug 2018 07:32:14 +0000 (09:32 +0200)]
SyncEngine: Fix renames making hierarchy inversion
Issue #6694
Christian Kamm [Wed, 15 Aug 2018 10:16:46 +0000 (12:16 +0200)]
RemotePermissions: Fix empty vs null
Fixes two bugs that appeared since the introduction of the struct:
- when reading permissions from the journal, null ("") was read as
empty-not-null
- when reading permissinos from the server, empty ("") was read as null
Addresses #4608
Olivier Goffart [Wed, 1 Aug 2018 09:10:38 +0000 (11:10 +0200)]
FolderStatusModel: Do not abort applying selective sync if one folder has an error
Issue #6675
Olivier Goffart [Tue, 14 Aug 2018 07:19:31 +0000 (09:19 +0200)]
SyncEngine: Fix the "direction" of the "all file delted" message when the server is reset
Using the direction of the "first" item is not enough as it might be a directory
which is a UPDATE_META_DATA, or there can have been a few changes locally as well.
As reported on https://github.com/owncloud/client/issues/6317#issuecomment-
412163113
Christian Kamm [Wed, 25 Jul 2018 09:13:14 +0000 (11:13 +0200)]
Do not require server replies to contain an mtime
The check was added for #6317 in commit
13eb64584f5f96647ced39dcd3252860ebec5a37.
We did see missing mtimes in replies in tests with live servers though.
Possibly those were old incomplete responses cached in the stat cache?
Olivier Goffart [Mon, 6 Aug 2018 10:53:51 +0000 (12:53 +0200)]
New discovery algorithm: Call FolderDiscovered
Olivier Goffart [Mon, 6 Aug 2018 10:41:59 +0000 (12:41 +0200)]
New Discovery algorithm: Refactor a bit the way the signal are emited
Olivier Goffart [Mon, 6 Aug 2018 10:37:39 +0000 (12:37 +0200)]
Fix TestDownload: _ignore_hidden_files was not properly initialized
Olivier Goffart [Mon, 6 Aug 2018 09:27:11 +0000 (11:27 +0200)]
New Discovery Phase: fix a few FIXME
Some FIXME were already fixed.
Olivier Goffart [Mon, 6 Aug 2018 08:52:34 +0000 (10:52 +0200)]
New discovery algorithm: handle symlinks
Olivier Goffart [Mon, 6 Aug 2018 08:31:37 +0000 (10:31 +0200)]
New discovery algo: Handle Database error
Olivier Goffart [Thu, 26 Jul 2018 11:53:40 +0000 (13:53 +0200)]
Skip failing test
These tests are failling because now we consider that any files that ends
with .owncloud is a virtual file, regardless what the DB say.
Olivier Goffart [Thu, 26 Jul 2018 08:16:28 +0000 (10:16 +0200)]
New discovery phase: read the direct download URL and Cookie
Olivier Goffart [Thu, 26 Jul 2018 07:53:40 +0000 (09:53 +0200)]
More cleanup of csync remains
Olivier Goffart [Wed, 25 Jul 2018 16:31:36 +0000 (18:31 +0200)]
New Discovery Algo: Permsission check
Olivier Goffart [Wed, 25 Jul 2018 14:00:16 +0000 (16:00 +0200)]
Remove csync_update and csync_reconcile
I guess some other csync utilities can also be remove dnow but
that will be for later
Olivier Goffart [Wed, 25 Jul 2018 13:31:54 +0000 (15:31 +0200)]
Remove the check_csync_update test
since csync_update is going away
Olivier Goffart [Wed, 25 Jul 2018 13:24:30 +0000 (15:24 +0200)]
New Discovery Algorithm: handle server errors
Olivier Goffart [Wed, 25 Jul 2018 12:08:55 +0000 (14:08 +0200)]
Olivier Goffart [Wed, 25 Jul 2018 10:21:29 +0000 (12:21 +0200)]
Added test that checks what happens when there is an error in the remote discovery
(Many of the expected error string are left empty because the current
error message is not insterresting
Olivier Goffart [Mon, 23 Jul 2018 13:19:32 +0000 (15:19 +0200)]
Convert p7.pl to a C++ test
This is just a translation of test/scripts/txpl/t7.pl to C++ using the test
framework.
Olivier Goffart [Wed, 18 Jul 2018 11:44:41 +0000 (13:44 +0200)]
New Discovery Algo: Support the DatabaseAndFilesystem mode for local discovery
Olivier Goffart [Wed, 18 Jul 2018 10:40:22 +0000 (12:40 +0200)]
New Disco algortihm: Fix TestChunkingNG::connectionDroppedBeforeEtagRecieved
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Olivier Goffart [Wed, 18 Jul 2018 10:15:13 +0000 (12:15 +0200)]
New disco algo: Fix TestSyncFileStatusTracker
Olivier Goffart [Wed, 18 Jul 2018 09:13:46 +0000 (11:13 +0200)]
New discovery algorithm: More work on virtual files
Olivier Goffart [Tue, 17 Jul 2018 15:18:07 +0000 (17:18 +0200)]
New Disco algorithm: Type change (file to dir)
Olivier Goffart [Tue, 17 Jul 2018 11:33:57 +0000 (13:33 +0200)]
New discovery algorithm: Virtual files
The commented tests lines were implementation details
Olivier Goffart [Tue, 17 Jul 2018 08:09:57 +0000 (10:09 +0200)]
New discovery algorithm: Fix directory deletion
TestAllFilesDeleted passes
Olivier Goffart [Mon, 16 Jul 2018 16:35:35 +0000 (18:35 +0200)]
New Discovery algorithm
Some error handling. In particular for the case where there is a conflict
between files and directories.
SyncEngineTest and SyncMoveTest passes
Olivier Goffart [Mon, 16 Jul 2018 14:31:10 +0000 (16:31 +0200)]
New Discovery algorithm: Handle of move within a moved directory
Olivier Goffart [Fri, 13 Jul 2018 15:47:06 +0000 (17:47 +0200)]
New discovery algoritmh: more on Renames
Olivier Goffart [Fri, 13 Jul 2018 13:33:54 +0000 (15:33 +0200)]
New Discovery algorithm: Check that the original file is still on the server while renaming
Olivier Goffart [Thu, 12 Jul 2018 08:36:15 +0000 (10:36 +0200)]
New disco algorithm: Fix some moving
Fix TestSyncMove::testSelectiveSyncMovedFolder
Olivier Goffart [Wed, 11 Jul 2018 15:45:47 +0000 (17:45 +0200)]
New discovery algorithm: Local rename
Olivier Goffart [Wed, 11 Jul 2018 14:55:00 +0000 (16:55 +0200)]
New discovery algo: Remote move
TestSyncMove::testRemoteChangeInMovedFolder
Olivier Goffart [Tue, 10 Jul 2018 14:56:15 +0000 (16:56 +0200)]
Handle Encoding Problems
TestSyncEngine now passes
Olivier Goffart [Tue, 10 Jul 2018 14:37:59 +0000 (16:37 +0200)]
Ignore Hidden Files
Olivier Goffart [Tue, 10 Jul 2018 14:21:45 +0000 (16:21 +0200)]
Port the invalid napme regexp
TestSyncEngine::testInvalidFilenameRegex
Olivier Goffart [Tue, 10 Jul 2018 13:45:20 +0000 (15:45 +0200)]
More progress
TestSyncEngine::testFakeConflict / TestSyncEngine::testSyncFileItemProperties
Olivier Goffart [Tue, 10 Jul 2018 12:50:32 +0000 (14:50 +0200)]
New discovery algo
Make TestSyncEngine::testSelectiveSyncBug pass
Olivier Goffart [Tue, 10 Jul 2018 09:22:43 +0000 (11:22 +0200)]
New discovery: TestSyncEngine::testEmlLocalChecksum
Olivier Goffart [Tue, 10 Jul 2018 08:41:26 +0000 (10:41 +0200)]
New discovery algorithm
Some progress:
TestSyncEngine::testDirUpload
Olivier Goffart [Tue, 10 Jul 2018 08:21:45 +0000 (10:21 +0200)]
New discovery algorithm: Initial work.
SyncEngineTest testFileDownload is passing
Kevin Ottens [Tue, 24 Nov 2020 17:50:26 +0000 (18:50 +0100)]
Revert "Merge pull request #1454 from nextcloud/syncjournal-del-prio"
This reverts commit
d9fd9cfef24ce500ebe812eaba38ce2418ab6ae0, reversing
changes made to
2dcf594fc6ca5e924f40c7ad557bc62984eaa415.
Dominik Schmidt [Wed, 20 Jun 2018 07:53:21 +0000 (09:53 +0200)]
Rename ocsync library to ${APPLICATION_EXECUTABLE}_csync
Dominik Schmidt [Thu, 14 Jun 2018 19:49:07 +0000 (21:49 +0200)]
Install libocsync to lib/ without subfolder.
Installing to lib/${APPLICATION_EXECUTABLE} has caused a bunch of
irritations in the past and subtle annoying to fix bugs. To avoid name
clashes with branded clients ${APPLICATION_EXECUTABLE} becomes now
part of the filename instead of the subfolder.
The concrete motivation to change this now is that on Windows there
is no RPATH and it's not possible to run owncloud directly from the
Craft Root folder, which is nice when you're developing on Windows.
It would have been possible to change this just for Windows but as
written earlier this has caused lots of issues and thus I think it's
a good idea to just stay consistent accross platforms when touching it.
Olivier Goffart [Mon, 4 Jun 2018 11:48:31 +0000 (13:48 +0200)]
nautilus shell integration: Fix when there are several branded client installed
It appears that several extension can be loaded at the same time, but their
classname for the extension need to be different, otherwise only the last
loaded one would be active.
Issue #6524
Olivier Goffart [Mon, 18 Jun 2018 10:43:21 +0000 (12:43 +0200)]
Wizard + OAuth: Make opening a new browser after clicking back works again
Issue #6574
When there is an error in the advanced page, OwncloudAdvancedSetupPage::updateStatus
(and others) call completeChanged(), which is connected to
QWizardPrivate::_q_updateButtonStates which will re-enable the back button from the
last page.
When the user click "back" and re-open the browser, the account's credentials
already have a oauth token set. So the call to the API to get a new token fails
because we use the previous token instead of using the client's secret_id.
Fix this with the HttpCredentials::DontAddCredentialsAttribute.
Now, this is still not working because the session cookies are confusing the
server. So we'll clear the cookies when re-opening the browser
Olivier Goffart [Mon, 4 Jun 2018 09:44:09 +0000 (11:44 +0200)]
FindSql3.cmake: Add the input variable in the search path
Issue #6278
Olivier Goffart [Thu, 31 May 2018 09:00:11 +0000 (11:00 +0200)]
FolderStatusModel: Fix crash when there is an error while expanding folders
In FolderStatusModel::slotLscolFinishedWithError, the call to parentInfo->resetSubs
deleted the 'job' and the reply 'r' which we accessed later to get the error code.
Fix this problem twice by
1) Get the error code before caling resetSubs
2) in FolderStatusModel::SubFolderInfo::resetSubs, call deleteLater instead of delete
Regression introduced in commit
d69936e0
Issue #6562
Olivier Goffart [Thu, 31 May 2018 08:56:52 +0000 (10:56 +0200)]
csync: refactor csync_s::error_string to avoid valgrind error
The problem here is that we were sometimes allocating the error_string with
qstrdup, which need to be released with delete[] and not free().
Simplify the code by using QString instead.
```
==7230== Mismatched free() / delete / delete []
==7230== at 0x4C2E10B: free (vg_replace_malloc.c:530)
==7230== by 0x57C2321: csync_s::reinitialize() (csync.cpp:247)
==7230== by 0x548130F: OCC::SyncEngine::finalize(bool) (syncengine.cpp:1212)
==7230== by 0x5481223: OCC::SyncEngine::handleSyncError(csync_s*, char const*) (syncengine.cpp:746)
==7230== by 0x5483E78: OCC::SyncEngine::slotDiscoveryJobFinished(int) (syncengine.cpp:965)
==7230== by 0x5495E34: QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<int>, void, void (OCC::SyncEngine::*)(int)>::call(void (OCC::SyncEngine::*)(int), OCC::SyncEngine*, void**) (qobjectdefs_impl.h:134)
==7230== by 0x5495D92: void QtPrivate::FunctionPointer<void (OCC::SyncEngine::*)(int)>::call<QtPrivate::List<int>, void>(void (OCC::SyncEngine::*)(int), OCC::SyncEngine*, void**) (qobjectdefs_impl.h:167)
==7230== by 0x5495CB5: QtPrivate::QSlotObject<void (OCC::SyncEngine::*)(int), QtPrivate::List<int>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (qobjectdefs_impl.h:396)
==7230== by 0xA9BF2E1: QObject::event(QEvent*) (in /usr/lib/libQt5Core.so.5.11.0)
==7230== by 0x64BE983: QApplicationPrivate::notify_helper(QObject*, QEvent*) (in /usr/lib/libQt5Widgets.so.5.11.0)
==7230== by 0x64C625A: QApplication::notify(QObject*, QEvent*) (in /usr/lib/libQt5Widgets.so.5.11.0)
==7230== by 0xA994BC8: QCoreApplication::notifyInternal2(QObject*, QEvent*) (in /usr/lib/libQt5Core.so.5.11.0)
==7230== Address 0x225b2640 is 0 bytes inside a block of size 50 alloc'd
==7230== at 0x4C2DC6F: operator new[](unsigned long) (vg_replace_malloc.c:423)
==7230== by 0xA7E8FC8: qstrdup(char const*) (in /usr/lib/libQt5Core.so.5.11.0)
==7230== by 0x53F5750: OCC::DiscoveryJob::remote_vio_opendir_hook(char const*, void*) (discoveryphase.cpp:666)
==7230== by 0x57E1278: csync_vio_opendir(csync_s*, char const*) (csync_vio.cpp:39)
==7230== by 0x57D718F: csync_ftw(csync_s*, char const*, int (*)(csync_s*, std::unique_ptr<csync_file_stat_s, std::default_delete<csync_file_stat_s> >), unsigned int) (csync_update.cpp:674)
==7230== by 0x57C1B05: csync_update(csync_s*) (csync.cpp:109)
==7230== by 0x53F5BCC: OCC::DiscoveryJob::start() (discoveryphase.cpp:718)
==7230== by 0x54B8F74: OCC::DiscoveryJob::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (moc_discoveryphase.cpp:494)
==7230== by 0xA9BF2E1: QObject::event(QEvent*) (in /usr/lib/libQt5Core.so.5.11.0)
==7230== by 0x64BE983: QApplicationPrivate::notify_helper(QObject*, QEvent*) (in /usr/lib/libQt5Widgets.so.5.11.0)
==7230== by 0x64C625A: QApplication::notify(QObject*, QEvent*) (in /usr/lib/libQt5Widgets.so.5.11.0)
==7230== by 0xA994BC8: QCoreApplication::notifyInternal2(QObject*, QEvent*) (in /usr/lib/libQt5Core.so.5.11.0)
==7230==
```
Olivier Goffart [Wed, 30 May 2018 14:29:29 +0000 (16:29 +0200)]
PropagateDownload: Don't discard the body of error message
We want to keep the body so we can get the message from it
(Issue #6459)
TestDownload::testErrorMessage did not fail because the FakeErrorReply
did not emit readyRead and did not implement bytesAvailable.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
Olivier Goffart [Wed, 30 May 2018 10:58:47 +0000 (12:58 +0200)]
.desktop file: the MimeType entry must ends with a semi colon
Also remove some comments
Olivier Goffart [Mon, 28 May 2018 12:49:02 +0000 (14:49 +0200)]
Virtual Files: Allow to download a folder recursively from the socket API
Issue: #6466
Christian Kamm [Wed, 30 May 2018 08:33:32 +0000 (10:33 +0200)]
Virtual files: Wipe virtual after download completes, not before
Otherwise a interrupted or unsuccessful download would mean that the
download-intend was forgotten. The next sync would reestablish the
virtual file instead.
Olivier Goffart [Wed, 30 May 2018 08:38:29 +0000 (10:38 +0200)]
Rename SocketApi::FileData::accountRelativePath to serverRelativePath
As discussed in issue #6552
Olivier Goffart [Mon, 28 May 2018 15:14:57 +0000 (17:14 +0200)]
Share dialog: use the original name and not the virtual file name
When sharing a virtual file, we should actually use the original file name
not the virtual file name
Issue: #6461
Christian Kamm [Tue, 29 May 2018 11:16:58 +0000 (13:16 +0200)]
Virtual files: Only remove virtual file once on download
With thanks to @ogoffart for spotting the problem.
Christian Kamm [Mon, 14 May 2018 12:37:48 +0000 (14:37 +0200)]
Settings migration: Preserve future settings where possible
See discussion in #6506
Christian Kamm [Wed, 2 May 2018 13:40:54 +0000 (15:40 +0200)]
Config: Add version flags to accounts and folders
Also, if there is too-new configuration, backup the file, show a
warning message asking the user whether it's ok to discard the
configuration from the future.
See #6504
Christian Kamm [Fri, 18 May 2018 06:29:40 +0000 (08:29 +0200)]
Rename Placeholders to Virtual Files in code #6531
Olivier Goffart [Tue, 24 Apr 2018 11:22:59 +0000 (13:22 +0200)]
SyncRunFileLog: Add the requestid
https://github.com/owncloud/client/pull/6427#issuecomment-
383879509
Olivier Goffart [Wed, 4 Apr 2018 14:27:08 +0000 (16:27 +0200)]
Blacklist: remember the X-Request-ID
Issue #6420
Store the X-Request-ID in the SyncFileItem and also in the blacklist.
Note that for consistency reason, the X-Request-ID is also in the
SyncFileItem if the request succeeds.
Currently there is no UI to access it, but it can be queried with sql
commands
Christian Kamm [Wed, 16 May 2018 13:58:31 +0000 (15:58 +0200)]
Wizard: Add a "(recommended)" to the main option #6470
Christian Kamm [Wed, 16 May 2018 09:34:01 +0000 (11:34 +0200)]
Rename "placeholder" feature
Christian Kamm [Thu, 3 May 2018 09:17:57 +0000 (11:17 +0200)]
Placeholder: Stop adding ignore pattern
Because we can't make older clients preserve the version directive that
was attached to it.
See #6504 and #6498
Christian Kamm [Wed, 2 May 2018 10:42:55 +0000 (12:42 +0200)]
Placeholder: Don't contain "stub"
Christian Kamm [Wed, 2 May 2018 10:38:03 +0000 (12:38 +0200)]
Placeholders: Save to key that's invisible to <2.5 clients #6504
Olivier Goffart [Tue, 15 May 2018 10:29:45 +0000 (12:29 +0200)]
FolderWizard: fix crash when experimental feature are disabled
The _placeholderCheckBox only exists if the experimental features are enabled
Found via the crash reporter
https://sentry.io/owncloud/desktop-win-and-mac/issues/
556407777/
Matthew Setter [Wed, 2 May 2018 08:22:28 +0000 (10:22 +0200)]
Correct incorrect reference to OSX Menu bar
This fixes https://github.com/owncloud/documentation/issues/4109.
Markus Goetz [Wed, 25 Apr 2018 17:31:06 +0000 (19:31 +0200)]
Share Dialog: Disable workaround for macOS too #6185
Christian Kamm [Fri, 20 Apr 2018 12:57:21 +0000 (14:57 +0200)]
CMake: Add a default placeholder_suffix
To make themes work that don't define it explicitly.