Date: Saturday, February 14, 2015 @ 22:13:17 Author: andyrtr Revision: 231397
archrelease: copy trunk to staging-i686, staging-x86_64 Added: kwin/repos/staging-i686/ kwin/repos/staging-i686/PKGBUILD (from rev 231396, kwin/trunk/PKGBUILD) kwin/repos/staging-i686/kdebug-341971.patch (from rev 231396, kwin/trunk/kdebug-341971.patch) kwin/repos/staging-i686/kwin.install (from rev 231396, kwin/trunk/kwin.install) kwin/repos/staging-i686/libinput.0.8.0.patch (from rev 231396, kwin/trunk/libinput.0.8.0.patch) kwin/repos/staging-x86_64/ kwin/repos/staging-x86_64/PKGBUILD (from rev 231396, kwin/trunk/PKGBUILD) kwin/repos/staging-x86_64/kdebug-341971.patch (from rev 231396, kwin/trunk/kdebug-341971.patch) kwin/repos/staging-x86_64/kwin.install (from rev 231396, kwin/trunk/kwin.install) kwin/repos/staging-x86_64/libinput.0.8.0.patch (from rev 231396, kwin/trunk/libinput.0.8.0.patch) -------------------------------------+ staging-i686/PKGBUILD | 50 ++++++++ staging-i686/kdebug-341971.patch | 190 ++++++++++++++++++++++++++++++++++ staging-i686/kwin.install | 11 + staging-i686/libinput.0.8.0.patch | 25 ++++ staging-x86_64/PKGBUILD | 50 ++++++++ staging-x86_64/kdebug-341971.patch | 190 ++++++++++++++++++++++++++++++++++ staging-x86_64/kwin.install | 11 + staging-x86_64/libinput.0.8.0.patch | 25 ++++ 8 files changed, 552 insertions(+) Copied: kwin/repos/staging-i686/PKGBUILD (from rev 231396, kwin/trunk/PKGBUILD) =================================================================== --- staging-i686/PKGBUILD (rev 0) +++ staging-i686/PKGBUILD 2015-02-14 21:13:17 UTC (rev 231397) @@ -0,0 +1,50 @@ +# $Id$ +# Maintainer: Andrea Scarpino <and...@archlinux.org> + +pkgname=kwin +pkgver=5.2.0.1 +_dir=5.2.0 +pkgrel=3 +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' + 'libinput.0.8.0.patch') +md5sums=('47b6ce31b45450fa702098c9f3f5ac95' + '037db2eab5f9e07c74122f1a5fd4fe31' + '0ccc6b0113e37bd994c65ffb6a4518ff') + +prepare() { + mkdir build + + cd ${pkgname}-${pkgver} + patch -p1 -i "${srcdir}"/kdebug-341971.patch + + #https://bugs.kde.org/show_bug.cgi?id=342893 + patch -Np1 -i "${srcdir}"/libinput.0.8.0.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/staging-i686/kdebug-341971.patch (from rev 231396, kwin/trunk/kdebug-341971.patch) =================================================================== --- staging-i686/kdebug-341971.patch (rev 0) +++ staging-i686/kdebug-341971.patch 2015-02-14 21:13:17 UTC (rev 231397) @@ -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 ++ } + } + } + + Copied: kwin/repos/staging-i686/kwin.install (from rev 231396, kwin/trunk/kwin.install) =================================================================== --- staging-i686/kwin.install (rev 0) +++ staging-i686/kwin.install 2015-02-14 21:13:17 UTC (rev 231397) @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} Copied: kwin/repos/staging-i686/libinput.0.8.0.patch (from rev 231396, kwin/trunk/libinput.0.8.0.patch) =================================================================== --- staging-i686/libinput.0.8.0.patch (rev 0) +++ staging-i686/libinput.0.8.0.patch 2015-02-14 21:13:17 UTC (rev 231397) @@ -0,0 +1,25 @@ +commit a93a2ab1918630c6d571b5a24379c15a0458d1fa +Author: Martin Gräßlin <mgraess...@kde.org> +Date: Wed Jan 28 16:20:57 2015 +0100 + + Disable libinput integration if >= 0.8 is found + + libinput 0.8 is incompatible causing the build to fail. As we are in + dependency freeze the only option is to disable the build. + + BUG: 342893 + FIXED-IN: 5.2.1 + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 550ef57..8d9c593 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -145,7 +145,7 @@ set_package_properties(UDev PROPERTIES URL "http://www.freedesktop.org/software + PURPOSE "Required for input handling on Wayland." + ) + set(HAVE_INPUT FALSE) +-if (Libinput_FOUND AND UDEV_FOUND) ++if (Libinput_FOUND AND UDEV_FOUND AND Libinput_VERSION VERSION_LESS 0.8) + set(HAVE_INPUT TRUE) + endif() + Copied: kwin/repos/staging-x86_64/PKGBUILD (from rev 231396, kwin/trunk/PKGBUILD) =================================================================== --- staging-x86_64/PKGBUILD (rev 0) +++ staging-x86_64/PKGBUILD 2015-02-14 21:13:17 UTC (rev 231397) @@ -0,0 +1,50 @@ +# $Id$ +# Maintainer: Andrea Scarpino <and...@archlinux.org> + +pkgname=kwin +pkgver=5.2.0.1 +_dir=5.2.0 +pkgrel=3 +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' + 'libinput.0.8.0.patch') +md5sums=('47b6ce31b45450fa702098c9f3f5ac95' + '037db2eab5f9e07c74122f1a5fd4fe31' + '0ccc6b0113e37bd994c65ffb6a4518ff') + +prepare() { + mkdir build + + cd ${pkgname}-${pkgver} + patch -p1 -i "${srcdir}"/kdebug-341971.patch + + #https://bugs.kde.org/show_bug.cgi?id=342893 + patch -Np1 -i "${srcdir}"/libinput.0.8.0.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/staging-x86_64/kdebug-341971.patch (from rev 231396, kwin/trunk/kdebug-341971.patch) =================================================================== --- staging-x86_64/kdebug-341971.patch (rev 0) +++ staging-x86_64/kdebug-341971.patch 2015-02-14 21:13:17 UTC (rev 231397) @@ -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 ++ } + } + } + + Copied: kwin/repos/staging-x86_64/kwin.install (from rev 231396, kwin/trunk/kwin.install) =================================================================== --- staging-x86_64/kwin.install (rev 0) +++ staging-x86_64/kwin.install 2015-02-14 21:13:17 UTC (rev 231397) @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} Copied: kwin/repos/staging-x86_64/libinput.0.8.0.patch (from rev 231396, kwin/trunk/libinput.0.8.0.patch) =================================================================== --- staging-x86_64/libinput.0.8.0.patch (rev 0) +++ staging-x86_64/libinput.0.8.0.patch 2015-02-14 21:13:17 UTC (rev 231397) @@ -0,0 +1,25 @@ +commit a93a2ab1918630c6d571b5a24379c15a0458d1fa +Author: Martin Gräßlin <mgraess...@kde.org> +Date: Wed Jan 28 16:20:57 2015 +0100 + + Disable libinput integration if >= 0.8 is found + + libinput 0.8 is incompatible causing the build to fail. As we are in + dependency freeze the only option is to disable the build. + + BUG: 342893 + FIXED-IN: 5.2.1 + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 550ef57..8d9c593 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -145,7 +145,7 @@ set_package_properties(UDev PROPERTIES URL "http://www.freedesktop.org/software + PURPOSE "Required for input handling on Wayland." + ) + set(HAVE_INPUT FALSE) +-if (Libinput_FOUND AND UDEV_FOUND) ++if (Libinput_FOUND AND UDEV_FOUND AND Libinput_VERSION VERSION_LESS 0.8) + set(HAVE_INPUT TRUE) + endif() +