From f579dc339cfc579273943ddad85f05d9b47abaca Mon Sep 17 00:00:00 2001 From: l10n daemon script Date: Wed, 29 Apr 2020 10:52:05 +0200 Subject: [PATCH 1/3] SVN_SILENT made messages (.desktop file) - always resolve ours In case of conflict in i18n, keep the version of the branch "ours" To resolve a particular conflict, "git checkout --ours path/to/file.desktop" --- kcmkwin/kwinscreenedges/kwintouchscreen.desktop | 1 + 1 file changed, 1 insertion(+) diff --git a/kcmkwin/kwinscreenedges/kwintouchscreen.desktop b/kcmkwin/kwinscreenedges/kwintouchscreen.desktop index 84ef21262c..1ff661cf7d 100644 --- a/kcmkwin/kwinscreenedges/kwintouchscreen.desktop +++ b/kcmkwin/kwinscreenedges/kwintouchscreen.desktop @@ -62,6 +62,7 @@ Comment[fi]=Aseta kosketusnäytön pyyhkäisyeleet Comment[fr]=Configurer les mouvements sur l'écran tactile Comment[gl]=Configurar os xestos de pantalla táctil Comment[hu]=Érintőképernyő-gesztusok beállítása +Comment[ia]=Configura gestos e glissar de schermo tactil Comment[id]=Konfigurasikan gestur usapan layar sentuh Comment[it]=Configura gesti dello schermo a sfioramento Comment[ko]=터치 스크린 밀기 제스처 설정 From 0e213a4a16bd532d49fd61890baa6b922640b2a6 Mon Sep 17 00:00:00 2001 From: Jonathan Riddell Date: Tue, 5 May 2020 12:31:25 +0100 Subject: [PATCH 2/3] Update version number for 5.18.5 GIT_SILENT --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c4d9558784..8db339a56d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 3.1 FATAL_ERROR) project(KWIN) -set(PROJECT_VERSION "5.18.4") +set(PROJECT_VERSION "5.18.5") set(PROJECT_VERSION_MAJOR 5) set(QT_MIN_VERSION "5.12.0") From 5ea54eda5d1f91428933d338ea8b950aea86d43a Mon Sep 17 00:00:00 2001 From: Kai Uwe Broulik Date: Wed, 6 May 2020 15:15:03 +0200 Subject: [PATCH 3/3] [kcmkwin/kwindecoration] Don't exec() QDialog Using nested event loops with QML is always troublesome. BUG: 421053 FIXED-IN: 5.18.6 Differential Revision: https://phabricator.kde.org/D29473 --- .../declarative-plugin/previewbridge.cpp | 32 +++++++++++++------ .../declarative-plugin/previewbridge.h | 4 ++- .../package/contents/ui/Themes.qml | 3 +- 3 files changed, 27 insertions(+), 12 deletions(-) diff --git a/kcmkwin/kwindecoration/declarative-plugin/previewbridge.cpp b/kcmkwin/kwindecoration/declarative-plugin/previewbridge.cpp index bad4cc1190..83a9bd9e6d 100644 --- a/kcmkwin/kwindecoration/declarative-plugin/previewbridge.cpp +++ b/kcmkwin/kwindecoration/declarative-plugin/previewbridge.cpp @@ -36,7 +36,11 @@ #include #include #include +#include +#include +#include #include +#include namespace KDecoration2 { @@ -173,15 +177,16 @@ DecorationButton *PreviewBridge::createButton(KDecoration2::Decoration *decorati return m_factory->create(QStringLiteral("button"), parent, QVariantList({QVariant::fromValue(type), QVariant::fromValue(decoration)})); } -void PreviewBridge::configure() +void PreviewBridge::configure(QQuickItem *ctx) { if (!m_valid) { return; } //setup the UI - QDialog dialog; + QDialog *dialog = new QDialog(); + dialog->setAttribute(Qt::WA_DeleteOnClose); if (m_lastCreatedClient) { - dialog.setWindowTitle(m_lastCreatedClient->caption()); + dialog->setWindowTitle(m_lastCreatedClient->caption()); } // create the KCModule through the plugintrader @@ -189,7 +194,7 @@ void PreviewBridge::configure() if (!m_theme.isNull()) { args.insert(QStringLiteral("theme"), m_theme); } - KCModule *kcm = m_factory->create(QStringLiteral("kcmodule"), &dialog, QVariantList({args})); + KCModule *kcm = m_factory->create(QStringLiteral("kcmodule"), dialog, QVariantList({args})); if (!kcm) { return; } @@ -205,28 +210,35 @@ void PreviewBridge::configure() QStringLiteral("reloadConfig")); QDBusConnection::sessionBus().send(message); }; - connect(&dialog, &QDialog::accepted, this, save); + connect(dialog, &QDialog::accepted, this, save); QDialogButtonBox *buttons = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel | QDialogButtonBox::RestoreDefaults | QDialogButtonBox::Reset, - &dialog); + dialog); QPushButton *reset = buttons->button(QDialogButtonBox::Reset); reset->setEnabled(false); // Here we connect our buttons with the dialog - connect(buttons, &QDialogButtonBox::accepted, &dialog, &QDialog::accept); - connect(buttons, &QDialogButtonBox::rejected, &dialog, &QDialog::reject); + connect(buttons, &QDialogButtonBox::accepted, dialog, &QDialog::accept); + connect(buttons, &QDialogButtonBox::rejected, dialog, &QDialog::reject); connect(reset, &QPushButton::clicked, kcm, &KCModule::load); auto changedSignal = static_cast(&KCModule::changed); connect(kcm, changedSignal, reset, &QPushButton::setEnabled); connect(buttons->button(QDialogButtonBox::RestoreDefaults), &QPushButton::clicked, kcm, &KCModule::defaults); - QVBoxLayout *layout = new QVBoxLayout(&dialog); + QVBoxLayout *layout = new QVBoxLayout(dialog); layout->addWidget(kcm); layout->addWidget(buttons); - dialog.exec(); + + if (ctx->window()) { + dialog->winId(); // so it creates windowHandle + dialog->windowHandle()->setTransientParent(QQuickRenderControl::renderWindowFor(ctx->window())); + dialog->setModal(true); + } + + dialog->show(); } BridgeItem::BridgeItem(QObject *parent) diff --git a/kcmkwin/kwindecoration/declarative-plugin/previewbridge.h b/kcmkwin/kwindecoration/declarative-plugin/previewbridge.h index 7e1d8f3d45..85fccbeaac 100644 --- a/kcmkwin/kwindecoration/declarative-plugin/previewbridge.h +++ b/kcmkwin/kwindecoration/declarative-plugin/previewbridge.h @@ -26,6 +26,8 @@ #include #include +class QQuickItem; + class KPluginFactory; namespace KDecoration2 @@ -70,7 +72,7 @@ public: KDecoration2::DecorationButton *createButton(KDecoration2::Decoration *decoration, KDecoration2::DecorationButtonType type, QObject *parent = nullptr); public Q_SLOTS: - void configure(); + void configure(QQuickItem *ctx); Q_SIGNALS: void pluginChanged(); diff --git a/kcmkwin/kwindecoration/package/contents/ui/Themes.qml b/kcmkwin/kwindecoration/package/contents/ui/Themes.qml index 28e5899db2..1eeb4cd0b0 100644 --- a/kcmkwin/kwindecoration/package/contents/ui/Themes.qml +++ b/kcmkwin/kwindecoration/package/contents/ui/Themes.qml @@ -40,6 +40,7 @@ KCM.GridView { view.implicitCellWidth: Kirigami.Units.gridUnit * 18 view.delegate: KCM.GridDelegate { + id: delegate text: model.display thumbnailAvailable: true @@ -101,7 +102,7 @@ KCM.GridView { onTriggered: { kcm.theme = index view.currentIndex = index - bridgeItem.bridge.configure() + bridgeItem.bridge.configure(delegate) } } ]