From a930c87ea4ec5dc2e496424d58e365771eb44546 Mon Sep 17 00:00:00 2001 From: ElCruncharino <59633028+ElCruncharino@users.noreply.github.com> Date: Wed, 2 Sep 2026 17:46:48 -0400 Subject: [PATCH] fix(wayland): reset clipboard portal state when EnableClipboard changes give the portal a fresh chance to grant clipboard when the user toggles the setting, instead of staying stuck on whatever it decided last time. --- src/lib/gui/dialogs/ServerConfigDialog.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/lib/gui/dialogs/ServerConfigDialog.cpp b/src/lib/gui/dialogs/ServerConfigDialog.cpp index 5602a344f..f937447a3 100644 --- a/src/lib/gui/dialogs/ServerConfigDialog.cpp +++ b/src/lib/gui/dialogs/ServerConfigDialog.cpp @@ -73,6 +73,10 @@ void ServerConfigDialog::save() // now that the dialog has been accepted, copy the new server config to the // original one, which is a reference to the one in MainWindow. setOriginalServerConfig(serverConfig()); + if (Settings::value(Settings::Server::EnableClipboard).toBool() != m_enableClipboard) { + Settings::setValue(Settings::Server::XdpRestoreToken, QString()); + Settings::setValue(Settings::Server::XdpClipboardRetried, false); + } Settings::setValue(Settings::Server::Protocol, networkProtocolToOption(m_protocol)); Settings::setValue(Settings::Server::EnableClipboard, m_enableClipboard); Settings::setValue(Settings::Server::ClipboardSize, m_clipboardSize);