Date: Wednesday, January 28, 2015 @ 19:03:13 Author: andrea Revision: 230218
archrelease: copy trunk to extra-i686, extra-x86_64 Added: kwin/repos/extra-i686/PKGBUILD (from rev 230217, kwin/trunk/PKGBUILD) kwin/repos/extra-i686/kdebug-341971.patch (from rev 230217, kwin/trunk/kdebug-341971.patch) kwin/repos/extra-i686/kwin.install (from rev 230217, kwin/trunk/kwin.install) kwin/repos/extra-x86_64/PKGBUILD (from rev 230217, kwin/trunk/PKGBUILD) kwin/repos/extra-x86_64/kdebug-341971.patch (from rev 230217, kwin/trunk/kdebug-341971.patch) kwin/repos/extra-x86_64/kwin.install (from rev 230217, kwin/trunk/kwin.install) Deleted: kwin/repos/extra-i686/PKGBUILD kwin/repos/extra-i686/kwin.install kwin/repos/extra-x86_64/PKGBUILD kwin/repos/extra-x86_64/kwin.install ----------------------------------+ /PKGBUILD | 90 +++++++++++++++++ /kwin.install | 22 ++++ extra-i686/PKGBUILD | 40 ------- extra-i686/kdebug-341971.patch | 190 +++++++++++++++++++++++++++++++++++++ extra-i686/kwin.install | 11 -- extra-x86_64/PKGBUILD | 40 ------- extra-x86_64/kdebug-341971.patch | 190 +++++++++++++++++++++++++++++++++++++ extra-x86_64/kwin.install | 11 -- 8 files changed, 492 insertions(+), 102 deletions(-) Deleted: extra-i686/PKGBUILD =================================================================== --- extra-i686/PKGBUILD 2015-01-28 17:58:18 UTC (rev 230217) +++ extra-i686/PKGBUILD 2015-01-28 18:03:13 UTC (rev 230218) @@ -1,40 +0,0 @@ -# $Id$ -# Maintainer: Andrea Scarpino <and...@archlinux.org> - -pkgname=kwin -pkgver=5.2.0.1 -_dir=5.2.0 -pkgrel=1 -pkgdesc='KDE Window manager' -arch=('i686' 'x86_64') -url='https://projects.kde.org/projects/kde/workspace/kwin' -license=('LGPL') -depends=('qt5-multimedia' 'plasma-framework' 'knewstuff' 'libxcursor' 'kinit' - 'hicolor-icon-theme' 'libepoxy' 'kwayland' 'libinput' 'kdecoration') -makedepends=('extra-cmake-modules' 'qt5-tools' 'kdoctools') -groups=('plasma') -install=${pkgname}.install -conflicts=('kdebase-workspace') -source=("http://download.kde.org/stable/plasma/${_dir}/${pkgname}-${pkgver}.tar.xz") -md5sums=('47b6ce31b45450fa702098c9f3f5ac95') - -prepare() { - mkdir build -} - -build() { - cd build - cmake ../${pkgname}-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DLIB_INSTALL_DIR=lib \ - -DLIBEXEC_INSTALL_DIR=lib \ - -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \ - -DBUILD_TESTING=OFF - make -} - -package() { - cd build - make DESTDIR="${pkgdir}" install -} Copied: kwin/repos/extra-i686/PKGBUILD (from rev 230217, kwin/trunk/PKGBUILD) =================================================================== --- extra-i686/PKGBUILD (rev 0) +++ extra-i686/PKGBUILD 2015-01-28 18:03:13 UTC (rev 230218) @@ -0,0 +1,45 @@ +# $Id$ +# Maintainer: Andrea Scarpino <and...@archlinux.org> + +pkgname=kwin +pkgver=5.2.0.1 +_dir=5.2.0 +pkgrel=2 +pkgdesc='KDE Window manager' +arch=('i686' 'x86_64') +url='https://projects.kde.org/projects/kde/workspace/kwin' +license=('LGPL') +depends=('qt5-multimedia' 'plasma-framework' 'knewstuff' 'libxcursor' 'kinit' + 'hicolor-icon-theme' 'libepoxy' 'kwayland' 'libinput' 'kdecoration') +makedepends=('extra-cmake-modules' 'qt5-tools' 'kdoctools') +groups=('plasma') +install=${pkgname}.install +conflicts=('kdebase-workspace') +source=("http://download.kde.org/stable/plasma/${_dir}/${pkgname}-${pkgver}.tar.xz" + 'kdebug-341971.patch') +md5sums=('47b6ce31b45450fa702098c9f3f5ac95' + '037db2eab5f9e07c74122f1a5fd4fe31') + +prepare() { + mkdir build + + cd ${pkgname}-${pkgver} + patch -p1 -i "${srcdir}"/kdebug-341971.patch +} + +build() { + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DLIB_INSTALL_DIR=lib \ + -DLIBEXEC_INSTALL_DIR=lib \ + -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \ + -DBUILD_TESTING=OFF + make +} + +package() { + cd build + make DESTDIR="${pkgdir}" install +} Copied: kwin/repos/extra-i686/kdebug-341971.patch (from rev 230217, kwin/trunk/kdebug-341971.patch) =================================================================== --- extra-i686/kdebug-341971.patch (rev 0) +++ extra-i686/kdebug-341971.patch 2015-01-28 18:03:13 UTC (rev 230218) @@ -0,0 +1,190 @@ +From: Marco Martin <notm...@gmail.com> +Date: Wed, 28 Jan 2015 08:58:47 +0000 +Subject: use xembed for the qml view of window decorations modul +X-Git-Url: http://quickgit.kde.org/?p=kwin.git&a=commitdiff&h=63885cc5b3f2922441dac0af96ed001b737e78ea +--- +use xembed for the qml view of window decorations modul + +the only way to ensure the view won't randomly become black +(probably QQuickwidget won't be fixed in qt anytime soon or +ever in 5.x lifetime due to how architecturally is) + +basically systemsettings has no control of what gets loaded in, +if one other kcm will call winId(), this one will break. + +BUG:341971 +--- + + +--- a/kcmkwin/kwindecoration/kcm.cpp ++++ b/kcmkwin/kwindecoration/kcm.cpp +@@ -36,6 +36,7 @@ + #include <QQmlContext> + #include <QQmlEngine> + #include <QQuickItem> ++#include <QQuickView> + #include <QSortFilterProxyModel> + #include <QStandardPaths> + #include <QVBoxLayout> +@@ -77,21 +78,26 @@ + m_proxyModel->setFilterCaseSensitivity(Qt::CaseInsensitive); + connect(m_ui->filter, &QLineEdit::textChanged, m_proxyModel, &QSortFilterProxyModel::setFilterFixedString); + ++ m_quickView = new QQuickView(0); + KDeclarative::KDeclarative kdeclarative; +- kdeclarative.setDeclarativeEngine(m_ui->view->engine()); ++ kdeclarative.setDeclarativeEngine(m_quickView->engine()); + kdeclarative.setTranslationDomain(QStringLiteral(TRANSLATION_DOMAIN)); + kdeclarative.setupBindings(); + + qmlRegisterType<QAbstractItemModel>(); +- m_ui->view->rootContext()->setContextProperty(QStringLiteral("decorationsModel"), m_proxyModel); ++ QWidget *widget = QWidget::createWindowContainer(m_quickView, this); ++ QVBoxLayout* layout = new QVBoxLayout(m_ui->view); ++ layout->addWidget(widget); ++ ++ m_quickView->rootContext()->setContextProperty(QStringLiteral("decorationsModel"), m_proxyModel); + updateColors(); +- m_ui->view->rootContext()->setContextProperty("_borderSizesIndex", 3); // 3 is normal +- m_ui->view->rootContext()->setContextProperty("configurationModule", this); +- m_ui->view->rootContext()->setContextProperty("titleFont", QFontDatabase::systemFont(QFontDatabase::TitleFont)); +- m_ui->view->setResizeMode(QQuickWidget::SizeRootObjectToView); +- m_ui->view->setSource(QUrl::fromLocalFile(QStandardPaths::locate(QStandardPaths::GenericDataLocation, QStringLiteral("kwin/kcm_kwindecoration/main.qml")))); +- if (m_ui->view->status() == QQuickWidget::Ready) { +- auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView"); ++ m_quickView->rootContext()->setContextProperty("_borderSizesIndex", 3); // 3 is normal ++ m_quickView->rootContext()->setContextProperty("configurationModule", this); ++ m_quickView->rootContext()->setContextProperty("titleFont", QFontDatabase::systemFont(QFontDatabase::TitleFont)); ++ m_quickView->setResizeMode(QQuickView::SizeRootObjectToView); ++ m_quickView->setSource(QUrl::fromLocalFile(QStandardPaths::locate(QStandardPaths::GenericDataLocation, QStringLiteral("kwin/kcm_kwindecoration/main.qml")))); ++ if (m_quickView->status() == QQuickView::Ready) { ++ auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView"); + if (listView) { + connect(listView, SIGNAL(currentIndexChanged()), this, SLOT(changed())); + } +@@ -122,7 +128,7 @@ + ); + connect(m_ui->borderSizesCombo, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), + this, [this] (int index) { +- auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView"); ++ auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView"); + if (listView) { + listView->setProperty("borderSizesIndex", index); + } +@@ -265,7 +271,7 @@ + const QString plugin = config.readEntry("library", s_defaultPlugin); + const QString theme = config.readEntry("theme", QString()); + const QModelIndex index = m_proxyModel->mapFromSource(m_model->findDecoration(plugin, theme)); +- if (auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView")) { ++ if (auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView")) { + listView->setProperty("currentIndex", index.isValid() ? index.row() : -1); + } + m_ui->closeWindowsDoubleClick->setChecked(config.readEntry("CloseOnDoubleClickOnMenu", false)); +@@ -305,7 +311,7 @@ + KConfigGroup config = KSharedConfig::openConfig("kwinrc")->group(s_pluginName); + config.writeEntry("CloseOnDoubleClickOnMenu", m_ui->closeWindowsDoubleClick->isChecked()); + config.writeEntry("BorderSize", sizeToString(m_ui->borderSizesCombo->currentData().value<BorderSize>())); +- if (auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView")) { ++ if (auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView")) { + const int currentIndex = listView->property("currentIndex").toInt(); + if (currentIndex != -1) { + const QModelIndex index = m_proxyModel->index(currentIndex, 0); +@@ -333,7 +339,7 @@ + + void ConfigurationModule::defaults() + { +- if (auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView")) { ++ if (auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView")) { + const QModelIndex index = m_proxyModel->mapFromSource(m_model->findDecoration(s_defaultPlugin)); + listView->setProperty("currentIndex", index.isValid() ? index.row() : -1); + } +@@ -346,7 +352,7 @@ + { + QPointer<KNS3::DownloadDialog> downloadDialog = new KNS3::DownloadDialog(config, this); + if (downloadDialog->exec() == QDialog::Accepted && !downloadDialog->changedEntries().isEmpty()) { +- auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView"); ++ auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView"); + QString selectedPluginName; + QString selectedThemeName; + if (listView) { +@@ -396,10 +402,8 @@ + + void ConfigurationModule::updateColors() + { +-#if (QT_VERSION >= QT_VERSION_CHECK(5, 4, 0)) +- m_ui->view->setClearColor(m_ui->view->palette().color(QPalette::Window)); +-#endif +- m_ui->view->rootContext()->setContextProperty("highlightColor", QPalette().color(QPalette::Highlight)); ++ m_quickView->rootContext()->setContextProperty("backgroundColor", QPalette().color(QPalette::Window)); ++ m_quickView->rootContext()->setContextProperty("highlightColor", QPalette().color(QPalette::Highlight)); + } + + } + +--- a/kcmkwin/kwindecoration/kcm.h ++++ b/kcmkwin/kwindecoration/kcm.h +@@ -25,6 +25,7 @@ + #include <QAbstractItemModel> + + class QSortFilterProxyModel; ++class QQuickView; + + namespace KDecoration2 + { +@@ -73,6 +74,7 @@ + DecorationsModel *m_model; + QSortFilterProxyModel *m_proxyModel; + ConfigurationForm *m_ui; ++ QQuickView *m_quickView; + Preview::ButtonsModel *m_leftButtons; + Preview::ButtonsModel *m_rightButtons; + Preview::ButtonsModel *m_availableButtons; + +--- a/kcmkwin/kwindecoration/kcm.ui ++++ b/kcmkwin/kwindecoration/kcm.ui +@@ -39,15 +39,12 @@ + </layout> + </item> + <item> +- <widget class="QQuickWidget" name="view"> ++ <widget class="QWidget" name="view"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> +- </property> +- <property name="resizeMode"> +- <enum>QQuickWidget::SizeRootObjectToView</enum> + </property> + </widget> + </item> + +--- a/kcmkwin/kwindecoration/qml/main.qml ++++ b/kcmkwin/kwindecoration/qml/main.qml +@@ -21,13 +21,17 @@ + import QtQuick.Controls 1.2 + import QtQuick.Layouts 1.1 + +-ColumnLayout { +- Previews { +- Layout.fillWidth: true +- Layout.fillHeight: true +- } +- Buttons { +- Layout.fillWidth: true ++Rectangle { ++ color: backgroundColor ++ ColumnLayout { ++ anchors.fill: parent ++ Previews { ++ Layout.fillWidth: true ++ Layout.fillHeight: true ++ } ++ Buttons { ++ Layout.fillWidth: true ++ } + } + } + + Deleted: extra-i686/kwin.install =================================================================== --- extra-i686/kwin.install 2015-01-28 17:58:18 UTC (rev 230217) +++ extra-i686/kwin.install 2015-01-28 18:03:13 UTC (rev 230218) @@ -1,11 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} Copied: kwin/repos/extra-i686/kwin.install (from rev 230217, kwin/trunk/kwin.install) =================================================================== --- extra-i686/kwin.install (rev 0) +++ extra-i686/kwin.install 2015-01-28 18:03:13 UTC (rev 230218) @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} Deleted: extra-x86_64/PKGBUILD =================================================================== --- extra-x86_64/PKGBUILD 2015-01-28 17:58:18 UTC (rev 230217) +++ extra-x86_64/PKGBUILD 2015-01-28 18:03:13 UTC (rev 230218) @@ -1,40 +0,0 @@ -# $Id$ -# Maintainer: Andrea Scarpino <and...@archlinux.org> - -pkgname=kwin -pkgver=5.2.0.1 -_dir=5.2.0 -pkgrel=1 -pkgdesc='KDE Window manager' -arch=('i686' 'x86_64') -url='https://projects.kde.org/projects/kde/workspace/kwin' -license=('LGPL') -depends=('qt5-multimedia' 'plasma-framework' 'knewstuff' 'libxcursor' 'kinit' - 'hicolor-icon-theme' 'libepoxy' 'kwayland' 'libinput' 'kdecoration') -makedepends=('extra-cmake-modules' 'qt5-tools' 'kdoctools') -groups=('plasma') -install=${pkgname}.install -conflicts=('kdebase-workspace') -source=("http://download.kde.org/stable/plasma/${_dir}/${pkgname}-${pkgver}.tar.xz") -md5sums=('47b6ce31b45450fa702098c9f3f5ac95') - -prepare() { - mkdir build -} - -build() { - cd build - cmake ../${pkgname}-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DLIB_INSTALL_DIR=lib \ - -DLIBEXEC_INSTALL_DIR=lib \ - -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \ - -DBUILD_TESTING=OFF - make -} - -package() { - cd build - make DESTDIR="${pkgdir}" install -} Copied: kwin/repos/extra-x86_64/PKGBUILD (from rev 230217, kwin/trunk/PKGBUILD) =================================================================== --- extra-x86_64/PKGBUILD (rev 0) +++ extra-x86_64/PKGBUILD 2015-01-28 18:03:13 UTC (rev 230218) @@ -0,0 +1,45 @@ +# $Id$ +# Maintainer: Andrea Scarpino <and...@archlinux.org> + +pkgname=kwin +pkgver=5.2.0.1 +_dir=5.2.0 +pkgrel=2 +pkgdesc='KDE Window manager' +arch=('i686' 'x86_64') +url='https://projects.kde.org/projects/kde/workspace/kwin' +license=('LGPL') +depends=('qt5-multimedia' 'plasma-framework' 'knewstuff' 'libxcursor' 'kinit' + 'hicolor-icon-theme' 'libepoxy' 'kwayland' 'libinput' 'kdecoration') +makedepends=('extra-cmake-modules' 'qt5-tools' 'kdoctools') +groups=('plasma') +install=${pkgname}.install +conflicts=('kdebase-workspace') +source=("http://download.kde.org/stable/plasma/${_dir}/${pkgname}-${pkgver}.tar.xz" + 'kdebug-341971.patch') +md5sums=('47b6ce31b45450fa702098c9f3f5ac95' + '037db2eab5f9e07c74122f1a5fd4fe31') + +prepare() { + mkdir build + + cd ${pkgname}-${pkgver} + patch -p1 -i "${srcdir}"/kdebug-341971.patch +} + +build() { + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DLIB_INSTALL_DIR=lib \ + -DLIBEXEC_INSTALL_DIR=lib \ + -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \ + -DBUILD_TESTING=OFF + make +} + +package() { + cd build + make DESTDIR="${pkgdir}" install +} Copied: kwin/repos/extra-x86_64/kdebug-341971.patch (from rev 230217, kwin/trunk/kdebug-341971.patch) =================================================================== --- extra-x86_64/kdebug-341971.patch (rev 0) +++ extra-x86_64/kdebug-341971.patch 2015-01-28 18:03:13 UTC (rev 230218) @@ -0,0 +1,190 @@ +From: Marco Martin <notm...@gmail.com> +Date: Wed, 28 Jan 2015 08:58:47 +0000 +Subject: use xembed for the qml view of window decorations modul +X-Git-Url: http://quickgit.kde.org/?p=kwin.git&a=commitdiff&h=63885cc5b3f2922441dac0af96ed001b737e78ea +--- +use xembed for the qml view of window decorations modul + +the only way to ensure the view won't randomly become black +(probably QQuickwidget won't be fixed in qt anytime soon or +ever in 5.x lifetime due to how architecturally is) + +basically systemsettings has no control of what gets loaded in, +if one other kcm will call winId(), this one will break. + +BUG:341971 +--- + + +--- a/kcmkwin/kwindecoration/kcm.cpp ++++ b/kcmkwin/kwindecoration/kcm.cpp +@@ -36,6 +36,7 @@ + #include <QQmlContext> + #include <QQmlEngine> + #include <QQuickItem> ++#include <QQuickView> + #include <QSortFilterProxyModel> + #include <QStandardPaths> + #include <QVBoxLayout> +@@ -77,21 +78,26 @@ + m_proxyModel->setFilterCaseSensitivity(Qt::CaseInsensitive); + connect(m_ui->filter, &QLineEdit::textChanged, m_proxyModel, &QSortFilterProxyModel::setFilterFixedString); + ++ m_quickView = new QQuickView(0); + KDeclarative::KDeclarative kdeclarative; +- kdeclarative.setDeclarativeEngine(m_ui->view->engine()); ++ kdeclarative.setDeclarativeEngine(m_quickView->engine()); + kdeclarative.setTranslationDomain(QStringLiteral(TRANSLATION_DOMAIN)); + kdeclarative.setupBindings(); + + qmlRegisterType<QAbstractItemModel>(); +- m_ui->view->rootContext()->setContextProperty(QStringLiteral("decorationsModel"), m_proxyModel); ++ QWidget *widget = QWidget::createWindowContainer(m_quickView, this); ++ QVBoxLayout* layout = new QVBoxLayout(m_ui->view); ++ layout->addWidget(widget); ++ ++ m_quickView->rootContext()->setContextProperty(QStringLiteral("decorationsModel"), m_proxyModel); + updateColors(); +- m_ui->view->rootContext()->setContextProperty("_borderSizesIndex", 3); // 3 is normal +- m_ui->view->rootContext()->setContextProperty("configurationModule", this); +- m_ui->view->rootContext()->setContextProperty("titleFont", QFontDatabase::systemFont(QFontDatabase::TitleFont)); +- m_ui->view->setResizeMode(QQuickWidget::SizeRootObjectToView); +- m_ui->view->setSource(QUrl::fromLocalFile(QStandardPaths::locate(QStandardPaths::GenericDataLocation, QStringLiteral("kwin/kcm_kwindecoration/main.qml")))); +- if (m_ui->view->status() == QQuickWidget::Ready) { +- auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView"); ++ m_quickView->rootContext()->setContextProperty("_borderSizesIndex", 3); // 3 is normal ++ m_quickView->rootContext()->setContextProperty("configurationModule", this); ++ m_quickView->rootContext()->setContextProperty("titleFont", QFontDatabase::systemFont(QFontDatabase::TitleFont)); ++ m_quickView->setResizeMode(QQuickView::SizeRootObjectToView); ++ m_quickView->setSource(QUrl::fromLocalFile(QStandardPaths::locate(QStandardPaths::GenericDataLocation, QStringLiteral("kwin/kcm_kwindecoration/main.qml")))); ++ if (m_quickView->status() == QQuickView::Ready) { ++ auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView"); + if (listView) { + connect(listView, SIGNAL(currentIndexChanged()), this, SLOT(changed())); + } +@@ -122,7 +128,7 @@ + ); + connect(m_ui->borderSizesCombo, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), + this, [this] (int index) { +- auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView"); ++ auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView"); + if (listView) { + listView->setProperty("borderSizesIndex", index); + } +@@ -265,7 +271,7 @@ + const QString plugin = config.readEntry("library", s_defaultPlugin); + const QString theme = config.readEntry("theme", QString()); + const QModelIndex index = m_proxyModel->mapFromSource(m_model->findDecoration(plugin, theme)); +- if (auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView")) { ++ if (auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView")) { + listView->setProperty("currentIndex", index.isValid() ? index.row() : -1); + } + m_ui->closeWindowsDoubleClick->setChecked(config.readEntry("CloseOnDoubleClickOnMenu", false)); +@@ -305,7 +311,7 @@ + KConfigGroup config = KSharedConfig::openConfig("kwinrc")->group(s_pluginName); + config.writeEntry("CloseOnDoubleClickOnMenu", m_ui->closeWindowsDoubleClick->isChecked()); + config.writeEntry("BorderSize", sizeToString(m_ui->borderSizesCombo->currentData().value<BorderSize>())); +- if (auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView")) { ++ if (auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView")) { + const int currentIndex = listView->property("currentIndex").toInt(); + if (currentIndex != -1) { + const QModelIndex index = m_proxyModel->index(currentIndex, 0); +@@ -333,7 +339,7 @@ + + void ConfigurationModule::defaults() + { +- if (auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView")) { ++ if (auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView")) { + const QModelIndex index = m_proxyModel->mapFromSource(m_model->findDecoration(s_defaultPlugin)); + listView->setProperty("currentIndex", index.isValid() ? index.row() : -1); + } +@@ -346,7 +352,7 @@ + { + QPointer<KNS3::DownloadDialog> downloadDialog = new KNS3::DownloadDialog(config, this); + if (downloadDialog->exec() == QDialog::Accepted && !downloadDialog->changedEntries().isEmpty()) { +- auto listView = m_ui->view->rootObject()->findChild<QQuickItem*>("listView"); ++ auto listView = m_quickView->rootObject()->findChild<QQuickItem*>("listView"); + QString selectedPluginName; + QString selectedThemeName; + if (listView) { +@@ -396,10 +402,8 @@ + + void ConfigurationModule::updateColors() + { +-#if (QT_VERSION >= QT_VERSION_CHECK(5, 4, 0)) +- m_ui->view->setClearColor(m_ui->view->palette().color(QPalette::Window)); +-#endif +- m_ui->view->rootContext()->setContextProperty("highlightColor", QPalette().color(QPalette::Highlight)); ++ m_quickView->rootContext()->setContextProperty("backgroundColor", QPalette().color(QPalette::Window)); ++ m_quickView->rootContext()->setContextProperty("highlightColor", QPalette().color(QPalette::Highlight)); + } + + } + +--- a/kcmkwin/kwindecoration/kcm.h ++++ b/kcmkwin/kwindecoration/kcm.h +@@ -25,6 +25,7 @@ + #include <QAbstractItemModel> + + class QSortFilterProxyModel; ++class QQuickView; + + namespace KDecoration2 + { +@@ -73,6 +74,7 @@ + DecorationsModel *m_model; + QSortFilterProxyModel *m_proxyModel; + ConfigurationForm *m_ui; ++ QQuickView *m_quickView; + Preview::ButtonsModel *m_leftButtons; + Preview::ButtonsModel *m_rightButtons; + Preview::ButtonsModel *m_availableButtons; + +--- a/kcmkwin/kwindecoration/kcm.ui ++++ b/kcmkwin/kwindecoration/kcm.ui +@@ -39,15 +39,12 @@ + </layout> + </item> + <item> +- <widget class="QQuickWidget" name="view"> ++ <widget class="QWidget" name="view"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> +- </property> +- <property name="resizeMode"> +- <enum>QQuickWidget::SizeRootObjectToView</enum> + </property> + </widget> + </item> + +--- a/kcmkwin/kwindecoration/qml/main.qml ++++ b/kcmkwin/kwindecoration/qml/main.qml +@@ -21,13 +21,17 @@ + import QtQuick.Controls 1.2 + import QtQuick.Layouts 1.1 + +-ColumnLayout { +- Previews { +- Layout.fillWidth: true +- Layout.fillHeight: true +- } +- Buttons { +- Layout.fillWidth: true ++Rectangle { ++ color: backgroundColor ++ ColumnLayout { ++ anchors.fill: parent ++ Previews { ++ Layout.fillWidth: true ++ Layout.fillHeight: true ++ } ++ Buttons { ++ Layout.fillWidth: true ++ } + } + } + + Deleted: extra-x86_64/kwin.install =================================================================== --- extra-x86_64/kwin.install 2015-01-28 17:58:18 UTC (rev 230217) +++ extra-x86_64/kwin.install 2015-01-28 18:03:13 UTC (rev 230218) @@ -1,11 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} Copied: kwin/repos/extra-x86_64/kwin.install (from rev 230217, kwin/trunk/kwin.install) =================================================================== --- extra-x86_64/kwin.install (rev 0) +++ extra-x86_64/kwin.install 2015-01-28 18:03:13 UTC (rev 230218) @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +}