diff options
author | Christian Kamm <mail@ckamm.de> | 2018-02-23 14:13:42 +0300 |
---|---|---|
committer | Camila San <hello@camila.codes> | 2018-05-16 17:48:31 +0300 |
commit | a0d5e314230757661285eeb93352228426ed9997 (patch) | |
tree | 683ee04a19a6ced5289411dd6ee75136733041a3 /src/gui | |
parent | 11b6b48c75d556440c04a35f82bc07668e1bdabd (diff) |
INSTRUCTION_IGNORE now carries a direction
This allows IssuesWidget to selectively wipe only the 'Up' ignores
during selective local discovery.
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/issueswidget.cpp | 5 | ||||
-rw-r--r-- | src/gui/protocolwidget.cpp | 1 | ||||
-rw-r--r-- | src/gui/syncrunfilelog.cpp | 3 |
3 files changed, 6 insertions, 3 deletions
diff --git a/src/gui/issueswidget.cpp b/src/gui/issueswidget.cpp index 1ae3b234e..95eccec09 100644 --- a/src/gui/issueswidget.cpp +++ b/src/gui/issueswidget.cpp @@ -148,8 +148,9 @@ void IssuesWidget::hideEvent(QHideEvent *ev) static bool persistsUntilLocalDiscovery(QTreeWidgetItem *item) { - const auto status = ProtocolItem::extraData(item).status; - return status == SyncFileItem::Conflict || status == SyncFileItem::FileIgnored; + const auto data = ProtocolItem::extraData(item); + return data.status == SyncFileItem::Conflict + || (data.status == SyncFileItem::FileIgnored && data.direction == SyncFileItem::Up); } void IssuesWidget::cleanItems(const std::function<bool(QTreeWidgetItem *)> &shouldDelete) diff --git a/src/gui/protocolwidget.cpp b/src/gui/protocolwidget.cpp index 25c5c10d3..086e7d205 100644 --- a/src/gui/protocolwidget.cpp +++ b/src/gui/protocolwidget.cpp @@ -106,6 +106,7 @@ ProtocolItem *ProtocolItem::create(const QString &folder, const SyncFileItem &it data.folderName = folder; data.status = item._status; data.size = item._size; + data.direction = item._direction; ProtocolItem::setExtraData(twitem, data); return twitem; } diff --git a/src/gui/syncrunfilelog.cpp b/src/gui/syncrunfilelog.cpp index 5d8c54765..1fe3f96f2 100644 --- a/src/gui/syncrunfilelog.cpp +++ b/src/gui/syncrunfilelog.cpp @@ -162,7 +162,8 @@ void SyncRunFileLog::start(const QString &folderPath) void SyncRunFileLog::logItem(const SyncFileItem &item) { // don't log the directory items that are in the list - if (item._direction == SyncFileItem::None) { + if (item._direction == SyncFileItem::None + || item._instruction == CSYNC_INSTRUCTION_IGNORE) { return; } QString ts = QString::fromLatin1(item._responseTimeStamp); |