cmd/syncthing: Emit new RemoteDownloadProgress event to track remote download progress

Without this the summary service doesn't know to recalculate completion
percentage for remote devices when DownloadProgress messages come in.
That means that completion percentage isn't updated in the GUI while
transfers of large files are ongoing. With this change, it updates
correctly.

GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3144
This commit is contained in:
Jakob Borg authored and Audrius Butkevicius committed 2016-05-22 07:52:08 +00:00
1 parent e7280f1eb5
commit a0ec4467fd
3 files changed
+11 -1

No files matched your search

+3
View File
@@ -36,6 +36,7 @@ const (
FolderRejected
ConfigSaved
DownloadProgress
RemoteDownloadProgress
FolderSummary
FolderCompletion
FolderErrors
@@ -80,6 +81,8 @@ func (t EventType) String() string {
return "ConfigSaved"
case DownloadProgress:
return "DownloadProgress"
case RemoteDownloadProgress:
return "RemoteDownloadProgress"
case FolderSummary:
return "FolderSummary"
case FolderCompletion:
+7
View File
@@ -1083,7 +1083,14 @@ func (m *Model) DownloadProgress(device protocol.DeviceID, folder string, update
m.pmut.RLock()
m.deviceDownloads[device].Update(folder, updates)
blocks := m.deviceDownloads[device].NumberOfBlocksInProgress()
m.pmut.RUnlock()
events.Default.Log(events.RemoteDownloadProgress, map[string]interface{}{
"device": device.String(),
"folder": folder,
"blocks": blocks,
})
}
func (m *Model) ResumeDevice(device protocol.DeviceID) {