Do not refresh the shared file tree on every upload chunk request. Refresh only table view on new file upload request. Fixes GitHub issue #76

auto-update
Zlatin Balevsky 2021-10-07 18:19:15 +01:00
parent 6c55812721
commit 9f7345a349
No known key found for this signature in database
GPG Key ID: A72832072D525E41
2 changed files with 16 additions and 8 deletions

View File

@ -593,18 +593,19 @@ class MainFrameModel {
void onUploadEvent(UploadEvent e) {
runInsideUIAsync {
UploaderWrapper wrapper = null
uploads.each {
if (it.uploader == e.uploader) {
wrapper = it
return
for(UploaderWrapper uw : uploads) {
if (uw.uploader == e.uploader) {
wrapper = uw
break
}
}
if (wrapper != null)
wrapper.updateUploader(e.uploader)
else
uploads << new UploaderWrapper(uploader : e.uploader)
else {
uploads << new UploaderWrapper(uploader: e.uploader)
view.refreshSharedFilesTable()
}
updateTablePreservingSelection("uploads-table")
view.refreshSharedFiles()
}
}

View File

@ -1852,6 +1852,11 @@ class MainFrameView {
}
public void refreshSharedFiles() {
refreshSharedFilesTree()
refreshSharedFilesTable()
}
void refreshSharedFilesTree() {
def tree = builder.getVariable("shared-files-tree")
TreePath[] selectedPaths = tree.getSelectionPaths()
Set<TreePath> expanded = new HashSet<>(expansionListener.expandedPaths)
@ -1860,7 +1865,9 @@ class MainFrameView {
expanded.each { tree.expandPath(it) }
tree.setSelectionPaths(selectedPaths)
}
void refreshSharedFilesTable() {
def table = builder.getVariable("shared-files-table")
int [] selectedRows = table.getSelectedRows()
table.model.fireTableDataChanged()