Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package seadrive-gui for openSUSE:Factory checked in at 2025-10-21 11:15:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/seadrive-gui (Old) and /work/SRC/openSUSE:Factory/.seadrive-gui.new.18484 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "seadrive-gui" Tue Oct 21 11:15:41 2025 rev:18 rq:1312306 version:3.0.16 Changes: -------- --- /work/SRC/openSUSE:Factory/seadrive-gui/seadrive-gui.changes 2025-04-15 16:49:35.896362199 +0200 +++ /work/SRC/openSUSE:Factory/.seadrive-gui.new.18484/seadrive-gui.changes 2025-10-21 11:17:04.800456223 +0200 @@ -1,0 +2,8 @@ +Mon Oct 20 07:19:04 UTC 2025 - Paolo Stivanin <[email protected]> + +- Update to 3.0.13: + * https://github.com/haiwen/seadrive-gui/compare/v3.0.13...v3.0.16 +- Add issue446.patch: Support show number of pending files +- Add issue477.patch: Add handle uncache path + +------------------------------------------------------------------- Old: ---- seadrive-gui-3.0.13.tar.gz New: ---- issue446.patch issue477.patch seadrive-gui-3.0.16.tar.gz ----------(New B)---------- New: * https://github.com/haiwen/seadrive-gui/compare/v3.0.13...v3.0.16 - Add issue446.patch: Support show number of pending files - Add issue477.patch: Add handle uncache path New:- Add issue446.patch: Support show number of pending files - Add issue477.patch: Add handle uncache path ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ seadrive-gui.spec ++++++ --- /var/tmp/diff_new_pack.50Tm0N/_old 2025-10-21 11:17:06.664534562 +0200 +++ /var/tmp/diff_new_pack.50Tm0N/_new 2025-10-21 11:17:06.712536580 +0200 @@ -17,7 +17,7 @@ Name: seadrive-gui -Version: 3.0.13 +Version: 3.0.16 Release: 0 Summary: GUI part of seafile drive License: GPL-3.0-only @@ -27,6 +27,10 @@ Patch1: fix-cmake-exec-name.patch # PATCH-FIX-UPSTREAM Patch2: fix-return-value.patch +# PATCH-FIX-UPSTREAM +Patch3: issue446.patch +# PATCH-FIX-UPSTREAM +Patch4: issue477.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: cmake ++++++ fix-return-value.patch ++++++ --- /var/tmp/diff_new_pack.50Tm0N/_old 2025-10-21 11:17:06.980547843 +0200 +++ /var/tmp/diff_new_pack.50Tm0N/_new 2025-10-21 11:17:07.028549860 +0200 @@ -1,9 +1,11 @@ ---- seadrive-gui-3.0.13/src/ui/sync-errors-dialog.cpp.orig 2025-04-15 09:07:19.436221225 +0200 -+++ seadrive-gui-3.0.13/src/ui/sync-errors-dialog.cpp 2025-04-15 09:08:40.346695752 +0200 -@@ -241,6 +241,8 @@ +Index: seadrive-gui-3.0.16/src/ui/sync-errors-dialog.cpp +=================================================================== +--- seadrive-gui-3.0.16.orig/src/ui/sync-errors-dialog.cpp ++++ seadrive-gui-3.0.16/src/ui/sync-errors-dialog.cpp +@@ -249,6 +249,8 @@ QString SyncErrorsTableView::findLocalPa } - return ::pathJoin(account.syncRoot, repo_uname); + return local_path; +#else + return QString(); #endif ++++++ issue446.patch ++++++ >From 9e6b66b173d7bac7853b8063c45f1429375c94b2 Mon Sep 17 00:00:00 2001 From: yangheran <[email protected]> Date: Wed, 12 Feb 2025 09:33:43 +0800 Subject: [PATCH 1/2] Support show number of pending files --- src/rpc/transfer-progress.cpp | 14 ++++++++++++++ src/rpc/transfer-progress.h | 1 + src/ui/transfer-progress-dialog.cpp | 21 +++++++++++++++++++++ src/ui/transfer-progress-dialog.h | 5 +++++ 4 files changed, 41 insertions(+) diff --git a/src/rpc/transfer-progress.cpp b/src/rpc/transfer-progress.cpp index 277f394c1..826fbec3c 100644 --- a/src/rpc/transfer-progress.cpp +++ b/src/rpc/transfer-progress.cpp @@ -50,6 +50,18 @@ void getTransferringListFromJSON( } } +void getPendingFilesFromJSON( + const json_t *json, + int *total) +{ + QString json_object_name = "pending_files"; + + json_t* n_pending= json_object_get( + json, json_object_name.toUtf8().data()); + if (n_pending) + *total = json_integer_value (n_pending); +} + void getTransferredListFromJSON( const json_t *json, TransferType type, QList<TransferredInfo> *list) @@ -92,6 +104,8 @@ void TransferProgress::fromJSON( upload, UPLOAD, &transfer_progress.uploading_files); getTransferringListFromJSON( download, DOWNLOAD, &transfer_progress.downloading_files); + getPendingFilesFromJSON( + upload, &transfer_progress.n_pending_files); getTransferredListFromJSON( upload, UPLOAD, &transfer_progress.uploaded_files); getTransferredListFromJSON( diff --git a/src/rpc/transfer-progress.h b/src/rpc/transfer-progress.h index 136cea971..6bb77ba7c 100644 --- a/src/rpc/transfer-progress.h +++ b/src/rpc/transfer-progress.h @@ -29,6 +29,7 @@ class TransferProgress { public: QList<TransferringInfo> uploading_files, downloading_files; QList<TransferredInfo> uploaded_files, downloaded_files; + int n_pending_files; static void fromJSON(const json_t *upload, const json_t *download, diff --git a/src/ui/transfer-progress-dialog.cpp b/src/ui/transfer-progress-dialog.cpp index 0540779c8..3dffed9ff 100644 --- a/src/ui/transfer-progress-dialog.cpp +++ b/src/ui/transfer-progress-dialog.cpp @@ -97,6 +97,12 @@ TransferTab::TransferTab(TransferType type, QWidget *parent) QVBoxLayout* vlayout = new QVBoxLayout; createTable(type); vlayout->addWidget(table_); +#ifndef Q_OS_MAC + if (type == UPLOAD) { + QLabel *label = model_->totalFilesView(); + vlayout->addWidget(label); + } +#endif setLayout(vlayout); adjustSize(); } @@ -182,6 +188,9 @@ TransferItemsTableModel::TransferItemsTableModel(QObject* parent) name_column_width_(kNameColumnWidth), transfer_type_(UPLOAD) { + total_files_view_ = new QLabel(tr("%1 files uploading or pending").arg(0)); + total_files_view_->setStyleSheet("color: red;"); + total_files_view_->setAlignment(Qt::AlignLeft); progress_timer_ = new QTimer(this); connect(progress_timer_, SIGNAL(timeout()), this, SLOT(updateTransferringInfo())); @@ -209,6 +218,7 @@ void TransferItemsTableModel::setTransferItems() beginResetModel(); TransferProgress::fromJSON(upload.data(), download.data(), transfer_progress); transfer_progress_ = transfer_progress; + updateTotalFilesView(); endResetModel(); } #endif @@ -485,6 +495,17 @@ bool TransferItemsTableModel::isTransferringRow( return row < transferring_size; } +QLabel* TransferItemsTableModel::totalFilesView() const +{ + return total_files_view_; +} + +void TransferItemsTableModel::updateTotalFilesView() const +{ + int total_files = transfer_progress_.n_pending_files + transfer_progress_.uploading_files.size(); + total_files_view_->setText(tr("%1 files uploading or pending").arg(total_files)); +} + void TransferItemsTableModel::setTransferType(TransferType type) { transfer_type_ = type; diff --git a/src/ui/transfer-progress-dialog.h b/src/ui/transfer-progress-dialog.h index eb8c8ba72..b33839c97 100644 --- a/src/ui/transfer-progress-dialog.h +++ b/src/ui/transfer-progress-dialog.h @@ -6,6 +6,7 @@ #include <QHeaderView> #include <QTimer> #include <QTabWidget> +#include <QLabel> #include "utils/json-utils.h" #include "rpc/transfer-progress.h" @@ -82,6 +83,8 @@ class TransferItemsTableModel : public QAbstractTableModel const TransferringInfo* itemAt(int row) const; uint nameColumnWidth() const; bool isTransferringRow(const QModelIndex& index) const; + QLabel* totalFilesView() const; + void updateTotalFilesView() const; public slots: void onResize(const QSize& size); @@ -100,6 +103,8 @@ private slots: QTimer *progress_timer_; TransferType transfer_type_; TransferProgress transfer_progress_; + + QLabel *total_files_view_; }; >From 87585d1663de616b27fadb1ec42e10b131d5e90b Mon Sep 17 00:00:00 2001 From: Heran Yang <[email protected]> Date: Wed, 12 Feb 2025 12:10:08 +0800 Subject: [PATCH 2/2] Init pending_files to 0 --- src/rpc/transfer-progress.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rpc/transfer-progress.h b/src/rpc/transfer-progress.h index 6bb77ba7c..38db513a0 100644 --- a/src/rpc/transfer-progress.h +++ b/src/rpc/transfer-progress.h @@ -29,7 +29,7 @@ class TransferProgress { public: QList<TransferringInfo> uploading_files, downloading_files; QList<TransferredInfo> uploaded_files, downloaded_files; - int n_pending_files; + int n_pending_files = 0; static void fromJSON(const json_t *upload, const json_t *download, ++++++ issue477.patch ++++++ >From 0bce5fe9722cf7f536eecb73c9f73ecbda5f3da8 Mon Sep 17 00:00:00 2001 From: yangheran <[email protected]> Date: Wed, 24 Sep 2025 10:31:49 +0800 Subject: [PATCH 1/2] Add handle uncache path --- src/ext-handler.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/ext-handler.cpp b/src/ext-handler.cpp index 8260ff1b..a3dfa6f8 100644 --- a/src/ext-handler.cpp +++ b/src/ext-handler.cpp @@ -808,6 +808,8 @@ void ExtCommandsHandler::run() } else if (cmd == "is-file-in-repo") { bool is_in_repo = handleIsFileInRepo(args); resp = is_in_repo ? "true" : "false"; + } else if (cmd == "uncache") { + handleUnCachePath(args); } #ifdef Q_OS_WIN32 else if (cmd == "get-thumbnail-from-server") { @@ -1234,6 +1236,22 @@ bool ExtCommandsHandler::isFileInRepo(const QString &path) { return true; } +void ExtCommandsHandler::handleUnCachePath(const QStringList& args) +{ + if (args.size() != 1) { + return; + } + QString path = normalizedPath(args[0]); + Account account; + QString repo_id, path_in_repo; + if (!parseRepoFileInfo(path, &account, &repo_id, &path_in_repo)) { + return; + } + + QMutexLocker locker(&rpc_client_mutex_); + rpc_client_->unCachePath(repo_id, path_in_repo); +} + QString ExtCommandsHandler::handleShowAccounts() { auto accounts = gui->accountManager()->allAccounts(); >From 2aee42fd2cb8d0cc8048b4f7e2ce723e54de223d Mon Sep 17 00:00:00 2001 From: Heran Yang <[email protected]> Date: Wed, 24 Sep 2025 16:34:47 +0800 Subject: [PATCH 2/2] Add handle uncache path --- src/ext-handler.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ext-handler.h b/src/ext-handler.h index a8bc9ec5..9b9f2114 100644 --- a/src/ext-handler.h +++ b/src/ext-handler.h @@ -167,6 +167,7 @@ class ExtCommandsHandler: public QThread { bool handleIsFileCached(QStringList &args); bool isFileInRepo(const QString &path); bool handleIsFileInRepo(QStringList &args); + void handleUnCachePath(const QStringList& args); QString handleShowAccounts(); void handleDeleteAccount(QStringList args); void handleResyncAccount(QStringList args); ++++++ seadrive-gui-3.0.13.tar.gz -> seadrive-gui-3.0.16.tar.gz ++++++ /work/SRC/openSUSE:Factory/seadrive-gui/seadrive-gui-3.0.13.tar.gz /work/SRC/openSUSE:Factory/.seadrive-gui.new.18484/seadrive-gui-3.0.16.tar.gz differ: char 14, line 1
