From 389dc8ac170270c5f9c9c7a1e440841a293631c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20Br=C3=BCbach?= Date: Fri, 18 Sep 2026 23:55:13 +0200 Subject: [PATCH] [DeckShare] Use the stable server client for the visual deck storage tab --- .../src/interface/widgets/tabs/tab_supervisor.cpp | 2 +- .../visual_deck_storage/tab_deck_storage_visual.cpp | 11 +++++------ .../visual_deck_storage/tab_deck_storage_visual.h | 3 ++- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/cockatrice/src/interface/widgets/tabs/tab_supervisor.cpp b/cockatrice/src/interface/widgets/tabs/tab_supervisor.cpp index 462aa420b..9cd27840f 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_supervisor.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_supervisor.cpp @@ -672,7 +672,7 @@ void TabSupervisor::actTabVisualDeckStorage(bool checked) void TabSupervisor::openTabVisualDeckStorage() { - tabVisualDeckStorage = new TabDeckStorageVisual(this); + tabVisualDeckStorage = new TabDeckStorageVisual(this, client); myAddTab(tabVisualDeckStorage, aTabVisualDeckStorage); connect(tabVisualDeckStorage, &QObject::destroyed, this, [this] { tabVisualDeckStorage = nullptr; diff --git a/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp b/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp index e042211f3..b652b3f24 100644 --- a/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp +++ b/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp @@ -17,8 +17,8 @@ #include #include -TabDeckStorageVisual::TabDeckStorageVisual(TabSupervisor *_tabSupervisor) - : Tab(_tabSupervisor), visualDeckStorageWidget(new VisualDeckStorageWidget(this)) +TabDeckStorageVisual::TabDeckStorageVisual(TabSupervisor *_tabSupervisor, AbstractClient *_client) + : Tab(_tabSupervisor), client(_client), visualDeckStorageWidget(new VisualDeckStorageWidget(this)) { connect(this, &TabDeckStorageVisual::openDeckEditor, tabSupervisor, &TabSupervisor::openDeckInNewTab); connect(visualDeckStorageWidget, &VisualDeckStorageWidget::deckLoadRequested, this, @@ -35,7 +35,6 @@ TabDeckStorageVisual::TabDeckStorageVisual(TabSupervisor *_tabSupervisor) } }); - AbstractClient *client = tabSupervisor->getClient(); connect(client, &AbstractClient::statusChanged, this, &TabDeckStorageVisual::handleConnectionChanged); shareDeckAvailable = (client->getStatus() == StatusLoggedIn); visualDeckStorageWidget->setShareAvailable(shareDeckAvailable); @@ -152,9 +151,9 @@ void TabDeckStorageVisual::actShareSelected() } shareBar->setCreateEnabled(false); - PendingCommand *pend = tabSupervisor->getClient()->prepareSessionCommand(cmd); + PendingCommand *pend = client->prepareSessionCommand(cmd); connect(pend, &PendingCommand::finished, this, &TabDeckStorageVisual::shareFinished); - tabSupervisor->getClient()->sendCommand(pend); + client->sendCommand(pend); } void TabDeckStorageVisual::shareFinished(const Response &response, const CommandContainer & /*commandContainer*/) @@ -175,7 +174,7 @@ void TabDeckStorageVisual::shareFinished(const Response &response, const Command const QDateTime expiry = QDateTime::fromSecsSinceEpoch(resp.expires_at(), Qt::UTC); #endif - const QString link = DeckShareUtils::buildShareLink(tabSupervisor->getClient(), token); + const QString link = DeckShareUtils::buildShareLink(client, token); DeckShareUtils::copyShareLinkToClipboard(link); showShareNotice( diff --git a/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.h b/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.h index da9f037b4..b93059fc8 100644 --- a/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.h +++ b/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.h @@ -30,7 +30,7 @@ class TabDeckStorageVisual final : public Tab { Q_OBJECT public: - explicit TabDeckStorageVisual(TabSupervisor *_tabSupervisor); + explicit TabDeckStorageVisual(TabSupervisor *_tabSupervisor, AbstractClient *_client); void retranslateUi() override; [[nodiscard]] QString getTabText() const override @@ -73,6 +73,7 @@ private: VisualDeckStorageWidget *visualDeckStorageWidget; ShareBarWidget *shareBar; + AbstractClient *client; bool shareDeckAvailable = false; };