Age | Commit message (Collapse) | Author |
|
|
|
|
|
- replaced "No filter" option text with "All", to avoid the "No filter
is not enabled" situation
- replace the "Filter" label on the button with "1 Filter"/"2 Filters"
when a filter is active, so a user can immediately see that without
having to open the filter pop-up
|
|
|
|
Fixes: #9382
|
|
|
|
|
|
Fixes: #9000
|
|
|
|
|
|
|
|
|
|
This removes the need to check for the existance of the pointers
Fixes: #8690
|
|
|
|
|
|
|
|
|
|
|
|
|
|
We now hav proper headers and sortig capabilities
Fixes: #8158
|
|
|
|
boundingRect().width() should also fix the "bogus" warning, this is also
why it was deprecated
|
|
Conflicts:
src/csync/csync_reconcile.cpp
src/csync/csync_update.cpp
src/libsync/syncengine.cpp
src/libsync/syncengine.h
Note: csync changes from 5e442f588e86bb84a2e1cb31bce2c9311c58a990
are not included and will be fixed separately
|
|
|
|
|
|
The link url is themed.
|
|
Ensure adding a new item isn't usually O(n) by keeping track of which
items have associated issues.
|
|
This is intended to safeguard against invalidation bugs that cause the
same error to be added again for every sync run.
|
|
This allows IssuesWidget to selectively wipe only the 'Up' ignores
during selective local discovery.
|
|
The struct makes it easy to pack data and should consume less memory
overall.
|
|
If the SyncResult incorrectly believes that there are no conflicts, the
tray icon won't be correct and there will be no warning about unresolved
conflicts on the account.
Nevertheless, it's pretty awkward that the IssuesWidget is better
informed about pending conflicts than the Folder itself. This kind of
backwards data flow is very confusing.
Unfortunately the only alternative I see is to either keep track of
this information in two places (also in Folder), or create a common
data-holding class that can serve as a model instance for the issues
view as well as provide data directly to the Folder - which would
have been a much larger change.
|
|
Also fix the minor bug that was mentioned and add tests.
|
|
Everything is invalidated later: after discovery, not before. In
addition entries that should only be invalidated when new local
discovery is done have that behavior now.
|
|
Conflicts:
shell_integration/nautilus/syncstate.py
|
|
|
|
|
|
Conflicts:
src/libsync/networkjobs.cpp
|
|
Since sorting was enabled permanenty the list would be resorted with
each inserted issue. When inserting thousands of ignored files that
would make the whole ui freeze up.
Instead, sorting is disabled for inserts now and is reenabled after some
time has passed. That way users usually see the sorted view without the
lockups. Also, there's now a maximum of 50k issue entries.
|
|
To do this conveniently a bunch of functionality that's common to
IssueWidget and ProtocolWidget is moved to ProtocolItem.
Also the convenience function to asynchronously retrieve the private
link url is moved from the socket api to the network jobs.
|
|
The issues tab uses custom ordering where overall and summary sync
issues are displayed first. This ordering is preserved by creating
special sorting logic for the "time" column.
It needed special handling anyway, since sorting by time-string would
have yielded incorrect results.
|
|
Some slot were protected or private but needed to be public.
Some needed a static_cast (can't use qOverload because it is in Qt 5.7)
This is not only a partial change.
|
|
This is motivated by the fact that QMetaObject::noralizeSignature takes 7.35%
CPU of the LargeSyncBench. (Mostly from ABstractNetworkJob::setupConnections and
PropagateUploadFileV1::startNextChunk). It could be fixed by using normalized
signature in the connection statement, but i tought it was a good oportunity
to modernize the code.
This commit only contains calls that were automatically converted with clazy.
|
|
|
|
|
|
Now that csync builds as C++, this will avoid having to implement
functionalities needed by csync mandatorily in csync itself.
This library is built as part of libocsync and symbols exported
through it.
This requires a relicense of Utility as LGPL. All classes moved into
this library from src/libsync will need to be relicensed as well.
|
|
Incidentally fixes a potential issue where conflicts were silently-
ignored and thus deleted if the parent folder was deleted.
|
|
|
|
Since these errors are blacklisted, it can take up to 24h to retry items
that had a 507 error for a while. This way users can intervene and cause
an upload attempt immediately.
|
|
|
|
* A bunch of code was determining sync status by ad-hoc comparing some
progress info fields. It can now just check the status, making it
easier to comprehend.
* There's a clear indication for "a new sync is starting", which helps
wiping the issues tab at the right time.
|