diff --git a/0001-fix-ukui-kwin-data-install-error.patch b/0001-fix-ukui-kwin-data-install-error.patch new file mode 100644 index 0000000000000000000000000000000000000000..fbc51086ac311e6752e92f1a7fd95e764c226288 --- /dev/null +++ b/0001-fix-ukui-kwin-data-install-error.patch @@ -0,0 +1,29 @@ +From be68f4e91c2ea7511e65a13b6a39caca4c065025 Mon Sep 17 00:00:00 2001 +From: peijiankang +Date: Wed, 15 Feb 2023 19:53:47 +0800 +Subject: [PATCH] fix ukui-kwin-data install error + +--- + po/tr/{kwin.po => ukui-kwin.po} | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + rename po/tr/{kwin.po => ukui-kwin.po} (99%) + +diff --git a/po/tr/kwin.po b/po/tr/ukui-kwin.po +similarity index 99% +rename from po/tr/kwin.po +rename to po/tr/ukui-kwin.po +index 99e2269..2ba3b31 100644 +--- a/po/tr/kwin.po ++++ b/po/tr/ukui-kwin.po +@@ -12,7 +12,7 @@ + # Kaan Ozdincer , 2014. + msgid "" + msgstr "" +-"Project-Id-Version: kwin\n" ++"Project-Id-Version: kdeorg\n" + "Report-Msgid-Bugs-To: https://bugs.kde.org\n" + "POT-Creation-Date: 2020-05-13 03:54+0200\n" + "PO-Revision-Date: 2017-06-09 14:24+0100\n" +-- +2.33.0 + diff --git a/0001-modify-ukui-kwin-complie-error.patch b/0001-modify-ukui-kwin-complie-error.patch deleted file mode 100644 index 5aa36ca0a4c19360337a033843b3fbfc43733ec4..0000000000000000000000000000000000000000 --- a/0001-modify-ukui-kwin-complie-error.patch +++ /dev/null @@ -1,390 +0,0 @@ -From 705506f719d74af737f8bfcda6d3771aff4ad6e9 Mon Sep 17 00:00:00 2001 -From: pei-jiankang -Date: Fri, 11 Feb 2022 12:03:48 +0800 -Subject: [PATCH] modify ukui-kwin compile error - ---- - decorations/decoratedclient.cpp | 5 +- - decorations/decoratedclient.h | 2 +- - decorations/decorationbridge.cpp | 11 +--- - decorations/decorationbridge.h | 2 +- - effects.cpp | 5 +- - .../declarative-plugin/previewbridge.cpp | 61 +++++++++++-------- - .../declarative-plugin/previewbridge.h | 4 +- - .../declarative-plugin/previewclient.cpp | 3 +- - .../declarative-plugin/previewclient.h | 2 +- - .../platforms/x11/common/eglonxbackend.cpp | 1 + - plugins/platforms/x11/common/eglonxbackend.h | 3 + - .../platforms/x11/standalone/x11_platform.h | 1 + - .../x11/windowed/x11windowed_backend.cpp | 2 +- - po/tr/{kwin.po => ukui-kwin.po} | 0 - workspace.cpp | 2 +- - 15 files changed, 55 insertions(+), 49 deletions(-) - rename po/tr/{kwin.po => ukui-kwin.po} (100%) - -diff --git a/decorations/decoratedclient.cpp b/decorations/decoratedclient.cpp -index 6e150d8..a708d3c 100644 ---- a/decorations/decoratedclient.cpp -+++ b/decorations/decoratedclient.cpp -@@ -238,10 +238,9 @@ void DecoratedClientImpl::requestHideToolTip() - m_toolTipShowing = false; - } - --void DecoratedClientImpl::requestShowWindowMenu() -+void DecoratedClientImpl::requestShowWindowMenu(const QRect &rect) - { -- // TODO: add rect to requestShowWindowMenu -- Workspace::self()->showWindowMenu(QRect(Cursor::pos(), Cursor::pos()), m_client); -+ Workspace::self()->showWindowMenu(QRect(m_client->pos() + rect.topLeft(), m_client->pos() + rect.bottomRight()), m_client); - } - - void DecoratedClientImpl::requestShowApplicationMenu(const QRect &rect, int actionId) -diff --git a/decorations/decoratedclient.h b/decorations/decoratedclient.h -index 576b62c..1675751 100644 ---- a/decorations/decoratedclient.h -+++ b/decorations/decoratedclient.h -@@ -81,7 +81,7 @@ public: - void requestContextHelp() override; - void requestToggleMaximization(Qt::MouseButtons buttons) override; - void requestMinimize() override; -- void requestShowWindowMenu() override; -+ void requestShowWindowMenu(const QRect &rect) override; - void requestShowApplicationMenu(const QRect &rect, int actionId) override; - void requestToggleKeepAbove() override; - void requestToggleKeepBelow() override; -diff --git a/decorations/decorationbridge.cpp b/decorations/decorationbridge.cpp -index fc0265a..0abe08d 100644 ---- a/decorations/decorationbridge.cpp -+++ b/decorations/decorationbridge.cpp -@@ -45,6 +45,7 @@ along with this program. If not, see . - #include - - // Frameworks -+#include - #include - #include - -@@ -339,16 +340,6 @@ std::unique_ptr DecorationBridge::setti - return std::unique_ptr(new SettingsImpl(parent)); - } - --void DecorationBridge::update(KDecoration2::Decoration *decoration, const QRect &geometry) --{ -- // TODO: remove check once all compositors implement it -- if (AbstractClient *c = Workspace::self()->findAbstractClient([decoration] (const AbstractClient *client) { return client->decoration() == decoration; })) { -- if (Renderer *renderer = c->decoratedClient()->renderer()) { -- renderer->schedule(geometry); -- } -- } --} -- - KDecoration2::Decoration *DecorationBridge::createDecoration(AbstractClient *client) - { - if (m_noPlugin) { -diff --git a/decorations/decorationbridge.h b/decorations/decorationbridge.h -index 6f51a3f..6f2b1ed 100644 ---- a/decorations/decorationbridge.h -+++ b/decorations/decorationbridge.h -@@ -56,12 +56,12 @@ class UKUI_KWIN_EXPORT DecorationBridge : public KDecoration2::DecorationBridge - public: - ~DecorationBridge() override; - -+ - void init(); - KDecoration2::Decoration *createDecoration(AbstractClient *client); - - std::unique_ptr createClient(KDecoration2::DecoratedClient *client, KDecoration2::Decoration *decoration) override; - std::unique_ptr settings(KDecoration2::DecorationSettings *parent) override; -- void update(KDecoration2::Decoration *decoration, const QRect &geometry) override; - - bool needsBlur() const { - return m_blur; -diff --git a/effects.cpp b/effects.cpp -index 9f765aa..86b1638 100644 ---- a/effects.cpp -+++ b/effects.cpp -@@ -49,7 +49,8 @@ along with this program. If not, see . - #include "kwineffectquickview.h" - - #include -- -+#include -+#include - #include - - #include "composite.h" -@@ -86,7 +87,7 @@ static QByteArray readWindowProperty(xcb_window_t win, xcb_atom_t atom, xcb_atom - } - } - --static void deleteWindowProperty(Window win, long int atom) -+static void deleteWindowProperty(xcb_window_t win, long int atom) - { - if (win == XCB_WINDOW_NONE) { - return; -diff --git a/kcmkwin/kwindecoration/declarative-plugin/previewbridge.cpp b/kcmkwin/kwindecoration/declarative-plugin/previewbridge.cpp -index 41fe317..68962ef 100644 ---- a/kcmkwin/kwindecoration/declarative-plugin/previewbridge.cpp -+++ b/kcmkwin/kwindecoration/declarative-plugin/previewbridge.cpp -@@ -34,7 +34,7 @@ - #include - #include - #include --#include -+#include - - #include - #include -@@ -42,7 +42,11 @@ - #include - #include - #include -+#include -+#include -+#include - #include -+#include - - namespace KDecoration2 - { -@@ -69,17 +73,6 @@ std::unique_ptr PreviewBridge::createClient(DecoratedCli - return ptr; - } - --void PreviewBridge::update(Decoration *decoration, const QRect &geometry) --{ -- Q_UNUSED(geometry) -- auto it = std::find_if(m_previewItems.constBegin(), m_previewItems.constEnd(), [decoration](PreviewItem *item) { -- return item->decoration() == decoration; -- }); -- if (it != m_previewItems.constEnd()) { -- (*it)->update(); -- } --} -- - std::unique_ptr PreviewBridge::settings(DecorationSettings *parent) - { - auto ptr = std::unique_ptr(new PreviewSettings(parent)); -@@ -135,11 +128,11 @@ void PreviewBridge::createFactory() - return; - } - -- const auto offers = KPluginTrader::self()->query(s_pluginName, s_pluginName); -- auto item = std::find_if(offers.constBegin(), offers.constEnd(), [this](const auto &plugin) { return plugin.pluginName() == m_plugin; }); -+ const auto offers = KPluginLoader::findPlugins(s_pluginName); -+ auto item = std::find_if(offers.constBegin(), offers.constEnd(), [this](const auto &plugin) { return plugin.pluginId() == m_plugin; }); - if (item != offers.constEnd()) { -- KPluginLoader loader(item->libraryPath()); -- m_factory = loader.factory(); -+ KPluginLoader loader(item->fileName()); -+ m_factory = loader.factory(); - } - - setValid(!m_factory.isNull()); -@@ -179,15 +172,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 -@@ -195,7 +189,15 @@ 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 = nullptr; -+ -+ kcm = m_factory->create(dialog, QVariantList({args})); -+ -+ if (!kcm) { -+ kcm = m_factory->create(QStringLiteral("kcmodule"), dialog, QVariantList({args})); -+ } -+ - if (!kcm) { - return; - } -@@ -211,28 +213,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 7e1d8f3..079333b 100644 ---- a/kcmkwin/kwindecoration/declarative-plugin/previewbridge.h -+++ b/kcmkwin/kwindecoration/declarative-plugin/previewbridge.h -@@ -26,6 +26,7 @@ - #include - #include - -+class QQuickItem; - class KPluginFactory; - - namespace KDecoration2 -@@ -47,7 +48,6 @@ public: - explicit PreviewBridge(QObject *parent = nullptr); - ~PreviewBridge() override; - std::unique_ptr createClient(DecoratedClient *client, Decoration *decoration) override; -- void update(Decoration* decoration, const QRect& geometry) override; - std::unique_ptr settings(DecorationSettings *parent) override; - - PreviewClient *lastCreatedClient() { -@@ -70,7 +70,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/declarative-plugin/previewclient.cpp b/kcmkwin/kwindecoration/declarative-plugin/previewclient.cpp -index 8319ccb..d214b1b 100644 ---- a/kcmkwin/kwindecoration/declarative-plugin/previewclient.cpp -+++ b/kcmkwin/kwindecoration/declarative-plugin/previewclient.cpp -@@ -405,8 +405,9 @@ void PreviewClient::requestToggleKeepBelow() - setKeepBelow(!isKeepBelow()); - } - --void PreviewClient::requestShowWindowMenu() -+void PreviewClient::requestShowWindowMenu(const QRect &rect) - { -+ Q_UNUSED(rect) - emit showWindowMenuRequested(); - } - -diff --git a/kcmkwin/kwindecoration/declarative-plugin/previewclient.h b/kcmkwin/kwindecoration/declarative-plugin/previewclient.h -index c37db74..fe043db 100644 ---- a/kcmkwin/kwindecoration/declarative-plugin/previewclient.h -+++ b/kcmkwin/kwindecoration/declarative-plugin/previewclient.h -@@ -107,7 +107,7 @@ public: - void requestToggleKeepAbove() override; - void requestToggleKeepBelow() override; - void requestToggleShade() override; -- void requestShowWindowMenu() override; -+ void requestShowWindowMenu(const QRect &rect) override; - void requestShowApplicationMenu(const QRect &rect, int actionId) override; - void requestToggleOnAllDesktops() override; - -diff --git a/plugins/platforms/x11/common/eglonxbackend.cpp b/plugins/platforms/x11/common/eglonxbackend.cpp -index 0bb109d..92cf5ed 100644 ---- a/plugins/platforms/x11/common/eglonxbackend.cpp -+++ b/plugins/platforms/x11/common/eglonxbackend.cpp -@@ -18,6 +18,7 @@ You should have received a copy of the GNU General Public License - along with this program. If not, see . - *********************************************************************/ - #include "eglonxbackend.h" -+#include - // kwin - #include "main.h" - #include "options.h" -diff --git a/plugins/platforms/x11/common/eglonxbackend.h b/plugins/platforms/x11/common/eglonxbackend.h -index bd9c69b..f12ce5f 100644 ---- a/plugins/platforms/x11/common/eglonxbackend.h -+++ b/plugins/platforms/x11/common/eglonxbackend.h -@@ -29,6 +29,9 @@ along with this program. If not, see . - #include "swap_profiler.h" - - #include -+#include -+#include -+#include "../windowed/x11windowed_backend.h" - - namespace KWin - { -diff --git a/plugins/platforms/x11/standalone/x11_platform.h b/plugins/platforms/x11/standalone/x11_platform.h -index 5b75af3..0de0bd8 100644 ---- a/plugins/platforms/x11/standalone/x11_platform.h -+++ b/plugins/platforms/x11/standalone/x11_platform.h -@@ -33,6 +33,7 @@ along with this program. If not, see . - - #include - -+#include "../windowed/x11windowed_backend.h" - namespace KWin - { - class SyncFilter; -diff --git a/plugins/platforms/x11/windowed/x11windowed_backend.cpp b/plugins/platforms/x11/windowed/x11windowed_backend.cpp -index be48ca2..2e0dbee 100644 ---- a/plugins/platforms/x11/windowed/x11windowed_backend.cpp -+++ b/plugins/platforms/x11/windowed/x11windowed_backend.cpp -@@ -237,7 +237,7 @@ void X11WindowedBackend::handleEvent(xcb_generic_event_t *e) - m_keySymbols = xcb_key_symbols_alloc(m_connection); - } - const xcb_keysym_t kc = xcb_key_symbols_get_keysym(m_keySymbols, event->detail, 0); -- if (kc == XK_Control_R) { -+ if (kc == 0xffe4) { - grabKeyboard(event->time); - } - keyboardKeyPressed(event->detail - 8, event->time); -diff --git a/po/tr/kwin.po b/po/tr/ukui-kwin.po -similarity index 100% -rename from po/tr/kwin.po -rename to po/tr/ukui-kwin.po -diff --git a/workspace.cpp b/workspace.cpp -index 2c682af..7172771 100644 ---- a/workspace.cpp -+++ b/workspace.cpp -@@ -455,7 +455,7 @@ void Workspace::initWithX11() - } - - // TODO: better value -- rootInfo->setActiveWindow(None); -+ rootInfo->setActiveWindow(XCB_WINDOW_NONE); - focusToNull(); - - if (!qApp->isSessionRestored()) --- -2.33.0 - diff --git a/0002-fix-mate-terminal-theme.patch b/0002-fix-mate-terminal-theme.patch new file mode 100644 index 0000000000000000000000000000000000000000..99481d368916fd3f8c9c03e2e3902a1937f4f500 --- /dev/null +++ b/0002-fix-mate-terminal-theme.patch @@ -0,0 +1,43 @@ +From b1400c71a92d0893103d3a1a616976fac0787117 Mon Sep 17 00:00:00 2001 +From: peijiankang +Date: Thu, 9 Mar 2023 14:10:33 +0800 +Subject: [PATCH] fix mate-terminal theme + +--- + decorations/decorationbridge.cpp | 19 +++++++++++++++++++ + 1 files changed, 19 insertions(+) + +diff --git a/decorations/decorationbridge.cpp b/decorations/decorationbridge.cpp +index 10e766c..a19fe8a 100644 +--- a/decorations/decorationbridge.cpp ++++ b/decorations/decorationbridge.cpp +@@ -156,7 +156,26 @@ void DecorationBridge::init() + m_dpi = 30; //设置一个限度,不允许dpi小于30 + } + } ++ QGSettings* pThemeSettings = new QGSettings("org.ukui.style", "/org/ukui/style/", this); + ++ QString strTheme; ++ if (true == pThemeSettings->keys().contains("styleName")){ ++ strTheme = pThemeSettings->get("style-name").toString(); ++ qDebug() << "DecorationBridge::init theme:" << strTheme; ++ } ++ ++ if("ukui-light" == strTheme) ++ { ++ m_themeId = 0; ++ } ++ else if("ukui-dark" == strTheme) ++ { ++ m_themeId = 1; ++ } ++ else //默认ukui-default ++ { ++ m_themeId = 0; ++ } + + const QFont font = QFontDatabase::systemFont(QFontDatabase::TitleFont); + m_nFont = font.pointSize(); +-- +2.39.1 + diff --git a/0002-update-ukui-kwin.desktop.patch b/0002-update-ukui-kwin.desktop.patch deleted file mode 100644 index fc038ec112862e2452892b299a8bd56aa3056194..0000000000000000000000000000000000000000 --- a/0002-update-ukui-kwin.desktop.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 97215ae5f91aab309595695fd0dcbbcb1fb63bc1 Mon Sep 17 00:00:00 2001 -From: pei-jiankang -Date: Wed, 2 Mar 2022 09:31:25 +0800 -Subject: [PATCH] update ukui-kwin.desktop - ---- - ukui-kwin.desktop | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ukui-kwin.desktop b/ukui-kwin.desktop -index 3148835..4a61cdb 100644 ---- a/ukui-kwin.desktop -+++ b/ukui-kwin.desktop -@@ -1,7 +1,7 @@ - [Desktop Entry] - Type=Application - Name=UKUI-KWin --Exec=ukui-kwin_x11 -+Exec=ukui-kwin - NoDisplay=true - # name of loadable control center module - X-UKUI-WMSettingsModule=ukui-kwin --- -2.33.0 - diff --git a/0003-modify-complie-error-of-kde5.95.patch b/0003-modify-complie-error-of-kde5.95.patch deleted file mode 100644 index 69ed9d3d138b1d14132aec9642b69212460a270c..0000000000000000000000000000000000000000 --- a/0003-modify-complie-error-of-kde5.95.patch +++ /dev/null @@ -1,47 +0,0 @@ -From af9bf0a88fd878f4f31e6289e7dcdd28b5a554d9 Mon Sep 17 00:00:00 2001 -From: pei-jiankang -Date: Fri, 29 Jul 2022 02:30:32 +0800 -Subject: [PATCH] modify complie error of kde5.95 - ---- - CMakeLists.txt | 2 +- - kcmkwin/kwindesktop/CMakeLists.txt | 2 +- - kcmkwin/kwineffects/CMakeLists.txt | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 152b6fe..b3fb1a4 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -299,7 +299,7 @@ set_package_properties(Libcap PROPERTIES - ) - set(HAVE_LIBCAP ${Libcap_FOUND}) - --include(ECMQMLModules) -+include(ECMFindQmlModule) - ecm_find_qmlmodule(QtQuick 2.3) - ecm_find_qmlmodule(QtQuick.Controls 1.2) - ecm_find_qmlmodule(QtQuick.Layouts 1.3) -diff --git a/kcmkwin/kwindesktop/CMakeLists.txt b/kcmkwin/kwindesktop/CMakeLists.txt -index 174ebbe..6264c8b 100644 ---- a/kcmkwin/kwindesktop/CMakeLists.txt -+++ b/kcmkwin/kwindesktop/CMakeLists.txt -@@ -1,4 +1,4 @@ --include(ECMQMLModules) -+include(ECMFindQmlModule) - ecm_find_qmlmodule(org.kde.plasma.core 2.0) - - # KI18N Translation Domain for this library. -diff --git a/kcmkwin/kwineffects/CMakeLists.txt b/kcmkwin/kwineffects/CMakeLists.txt -index cb0d13a..b3de5ec 100644 ---- a/kcmkwin/kwineffects/CMakeLists.txt -+++ b/kcmkwin/kwineffects/CMakeLists.txt -@@ -1,4 +1,4 @@ --include(ECMQMLModules) -+include(ECMFindQmlModule) - ecm_find_qmlmodule(org.kde.plasma.core 2.0) - - # KI18N Translation Domain for this library. --- -2.33.0 - diff --git a/ukui-kwin-1.0.5.tar.gz b/ukui-kwin-1.0.5.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..d828af482bb4c0e846e4c6f0314beeae851b7ee6 Binary files /dev/null and b/ukui-kwin-1.0.5.tar.gz differ diff --git a/ukui-kwin.spec b/ukui-kwin.spec index 1f347c1d674d2b1adab2fb2b0ef9536c2515340a..0e41d157ae11513837067c6fd97a0bc7bf333a6d 100644 --- a/ukui-kwin.spec +++ b/ukui-kwin.spec @@ -1,86 +1,99 @@ Name: ukui-kwin -Version: 1.0.4 -Release: 5 +Version: 1.0.5 +Release: 4 Summary: KDE Window Manager for UKUI desktop environment License: GPL-2.0-or-later and LGPL-2.0-or-later URL: https://github.com/ukui/ukui-kwin -%global revision %(echo %{version} | cut -d. -f3) -%if %{revision} >= 50 -%global majmin_ver %(echo %{version} | cut -d. -f1,2).50 -%else -%global majmin_ver %(echo %{version} | cut -d. -f1,2) -%endif - -Source0: ukui-kwin_1.0.4.orig.tar.gz -Patch00: 0001-modify-ukui-kwin-complie-error.patch -Patch01: 0002-update-ukui-kwin.desktop.patch -Patch02: 0003-modify-complie-error-of-kde5.95.patch -BuildRequires: libxml2 libstdc++ libgcc +Source0: ukui-kwin-1.0.5.tar.gz +Patch01: 0001-fix-ukui-kwin-data-install-error.patch +Patch02: 0002-fix-mate-terminal-theme.patch + BuildRequires: cmake extra-cmake-modules -BuildRequires: libcap-devel libdrm-devel >= 2.4.62 libepoxy-devel >= 1.2 fontconfig-devel freetype-devel libgbm-devel libICE-devel libinput-devel >= 1.9 kdecoration-devel mesa-libGL-devel mesa-libEGL-devel mesa-libgbm-devel pkgconfig(libudev) -BuildRequires: kf5-kactivities-devel kf5-kcompletion-devel kf5-kconfig-devel kf5-kconfigwidgets-devel kf5-kcoreaddons-devel kf5-kcrash-devel kf5-kdeclarative-devel kf5-kdoctools-devel kf5-kglobalaccel-devel kf5-ki18n-devel kf5-kiconthemes-devel kf5-kidletime-devel kf5-kcmutils-devel kf5-kio-devel kf5-knotifications-devel kf5-kpackage-devel kf5-kservice-devel kf5-ktextwidgets-devel kf5-kwayland-devel kf5-kwidgetsaddons-devel kf5-kwindowsystem-devel kf5-kxmlgui-devel kf5-kinit-devel kf5-knewstuff-devel kf5-plasma-devel kf5-kirigami2-devel kf5-kguiaddons-devel -BuildRequires: libSM-devel wayland-devel >= 1.2 -BuildRequires: libX11-devel libxcb-devel xcb-util-cursor xcb-util-wm xcb-util-image xcb-util-keysyms xcb-util-devel -BuildRequires: libXcursor-devel libXi-devel libxkbcommon-devel >= 0.7.0 pkg-config -BuildRequires: qt5-qtsensors-devel qt5-qtx11extras-devel qt5-qtbase-private-devel qt5-qtdeclarative-devel qt5-qtscript-devel qt5-qttools-devel qt5-qtbase-devel qt5-qtbase-static qt5-qttools-static gsettings-qt-devel qt5-qtwayland-devel -BuildRequires: kscreenlocker-devel kwin-devel -BuildRequires: plasma-breeze-devel systemd-devel wayland-devel xcb-util-cursor-devel xcb-util-wm-devel xcb-util-image-devel xcb-util-keysyms-devel - -Requires: %{name}-libs%{?_isa} = %{version}-%{release} -Requires: %{name}-common%{?_isa} = %{version}-%{release} -Requires: %{name}-wayland = %{version}-%{release} +BuildRequires: kf5-kinit-devel kscreenlocker-devel libcap-devel libdrm-devel >= 2.4.62 mesa-libEGL-devel libepoxy-devel >= 1.2 fontconfig-devel freetype-devel libgbm-devel libICE-devel libinput-devel >= 1.15.5 kdecoration-devel +BuildRequires: kf5-kactivities-devel kf5-kcompletion-devel kf5-kconfig-devel kf5-kconfigwidgets-devel kf5-kcoreaddons-devel kf5-kcrash-devel kf5-kdeclarative-devel kf5-kdoctools-devel kf5-kglobalaccel-devel kf5-ki18n-devel kf5-kiconthemes-devel kf5-kidletime-devel kf5-kcmutils-devel kf5-kio-devel kf5-knewstuff-devel kf5-knotifications-devel kf5-kpackage-devel kf5-plasma-devel kf5-kservice-devel kf5-ktextwidgets-devel kf5-kwayland-devel kf5-kwidgetsaddons-devel kf5-kwindowsystem-devel kf5-kxmlgui-devel +BuildRequires: qt5-qtsensors-devel qt5-qtx11extras-devel +BuildRequires: libSM-devel systemd-devel wayland-devel >= 1.2 +BuildRequires: libX11-devel libxcb-devel xcb-util-cursor xcb-util-wm xcb-util-image xcb-util-keysyms xcb-util-devel libXcursor-devel libXi-devel libxkbcommon-devel >= 0.7.0 pkg-config +BuildRequires: qt5-qtbase-devel qt5-qtbase-private-devel qt5-qtdeclarative-devel qt5-qtscript-devel qt5-qttools-devel gsettings-qt-devel +BuildRequires: kwin-devel libXtst-devel +#compile need +BuildRequires: kf5-kirigami2-devel plasma-breeze-devel xcb-util-cursor-devel xcb-util-wm-devel xcb-util-image-devel xcb-util-keysyms-devel qt5-qtbase-static kf5-kguiaddons-devel + +Requires: ukui-kwin-x11 ukui-kwin-wayland %description -Ukui-kwin is the default window manager for UKUI desktop environment, and is forked from kwin. +Ukui-kwin is the window manager for the UKUI3.0 Desktop. It gives you complete control over your windows, making sure they're not in the way but aid you in your task. It paints the window decoration, the bar on top of every window with (configurable) buttons like close, maximize and minimize. It also handles placing of windows and switching between them.. +Transitional dummy for ukui-kwin-x11 +This package is a transitional dummy to depend on the renamed ukui-kwin-x11 and can be removed. + -%package wayland +%package -n ukui-kwin-wayland Summary: KDE Window Manager for UKUI desktop environment with experimental Wayland support -Requires: %{name}-libs%{?_isa} = %{version}-%{release} -Requires: %{name}-common%{?_isa} = %{version}-%{release} -Requires: kwayland-integration%{?_isa} >= %{majmin_ver} -%if ! 0%{?bootstrap} -BuildRequires: xorg-x11-server-Xwayland -%endif +Requires: ukui-kwin-common +Requires: kwayland-integration Requires: xorg-x11-server-Xwayland -%{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}} -%{?kf5_kinit_requires} -%description wayland +%description -n ukui-kwin-wayland +%{summary}. + + +%package -n ukui-kwin-common +Summary: UKUI window manager, common files +Requires: ukui-kwin-data kf5-kglobalaccel libukui-kwineffects12 kf5-kirigami2 kf5-kdeclarative qt5-qtmultimedia +Recommends: qt5-qtvirtualkeyboard +%description -n ukui-kwin-common +%{summary}. + + +%package -n ukui-kwin-data +Summary: UKUI window manager data files +Requires: kf5-plasma +Recommends: python3 qt5-qtmultimedia qt5-qtquickcontrols qt5-qtdeclarative qt5-qtvirtualkeyboard +%description -n ukui-kwin-data +%{summary}. + + +%package -n ukui-kwin-devel +Summary: UKUI window manager - devel files +Requires: ukui-kwin-common mesa-libEGL-devel libepoxy-devel kf5-kconfig-devel kf5-kcoreaddons-devel kf5-kwindowsystem-devel qt5-qtx11extras-devel libxcb-devel qt5-qtbase-devel +%description -n ukui-kwin-devel +%{summary}. + + +%package -n ukui-kwin-x11 +Summary: UKUI window manager drm plugin +Requires: ukui-kwin-common libukui-kwinglutils12 libukui-kwinxrenderutils12 +Provides: ukui-kwin, x-window-manager +%description -n ukui-kwin-x11 %{summary}. -%package common -Summary: Common files for UKUI-KWin X11 and UKUI-KWin Wayland -Requires: %{name}-libs%{?_isa} = %{version}-%{release} -Requires: kf5-kwayland%{?_isa} >= %{_kf5_version} -%description common + +%package -n libukui-kwin4-effect-builtins1 +Summary: UKUI window manager drm plugin +Requires: libukui-kwineffects12 +%description -n libukui-kwin4-effect-builtins1 %{summary}. -%package libs -Summary: UKUI-KWin runtime libraries -Conflicts: kde-workspace-libs%{?_isa} < 4.11.14-2 -%description libs + +%package -n libukui-kwineffects12 +Summary: UKUI window manager effects library +%description -n libukui-kwineffects12 %{summary}. -%package devel -Summary: Development files for %{name} -Requires: %{name}-libs%{?_isa} = %{version}-%{release} -Requires: %{name}-common%{?_isa} = %{version}-%{release} -Requires: kf5-kconfig-devel -Requires: kf5-kservice-devel -Requires: kf5-kwindowsystem-devel -Conflicts: kde-workspace-devel < 5.0.0-1 -%description devel -The %{name}-devel package contains libraries and header files for -developing applications that use %{name}. - -%package doc -Summary: User manual for %{name} -Requires: %{name} = %{version}-%{release} -BuildArch: noarch -%description doc + +%package -n libukui-kwinglutils12 +Summary: UKUI window manager effects library +%description -n libukui-kwinglutils12 %{summary}. + +%package -n libukui-kwinxrenderutils12 +Summary: UKUI window manager effects library +%description -n libukui-kwinxrenderutils12 +%{summary}. + + %prep -%autosetup -n %{name} -p1 +%autosetup -n %{name}-%{version} -p1 %build mkdir %{_target_platform} @@ -89,15 +102,12 @@ pushd %{_target_platform} -DBUILD_TESTING:BOOL=ON popd -%make_build -C %{_target_platform} +%make_build -C %{_target_platform} -j4 %install make install/fast DESTDIR=%{buildroot} -C %{_target_platform} -%find_lang %{name} --with-html --all-name -cat %{name}.lang | sort | uniq -u > ukui_kwin5.lang - ln -s ukui-kwin_x11 %{buildroot}%{_bindir}/ukui-kwin mkdir -p %{buildroot}%{_datadir}/licenses/ukui-kwin cp COPYING* %{buildroot}%{_datadir}/licenses/ukui-kwin/ @@ -105,79 +115,106 @@ cp COPYING* %{buildroot}%{_datadir}/licenses/ukui-kwin/ %files %license COPYING* %{_bindir}/ukui-kwin -%{_bindir}/ukui-kwin_x11 -%{_kf5_libdir}/libkdeinit5_ukui-kwin_x11.so -%{_sysconfdir}/xdg/LowPerformanceCPU.list -%{_sysconfdir}/xdg/LowVgaPci.list -%{_sysconfdir}/xdg/autostart/ukui-kwin.desktop -%{_sysconfdir}/xdg/ukui-kwinrc -%files common -f ukui_kwin5.lang +%files -n ukui-kwin-wayland +%{_kf5_bindir}/ukui-kwin_wayland +%{_kf5_plugindir}/org.ukui.kidletime.platforms/KF5IdleTimeKWinWaylandPrivatePlugin.so +%{_kf5_qtplugindir}/platforms/UKUIKWinQpaPlugin.so +%{_kf5_qtplugindir}/org.ukui.kwin.waylandbackends/KWinWaylandDrmBackend.so +%{_kf5_qtplugindir}/org.ukui.kwin.waylandbackends/KWinWaylandFbdevBackend.so +%{_kf5_qtplugindir}/org.ukui.kwin.waylandbackends/KWinWaylandWaylandBackend.so +%{_kf5_qtplugindir}/org.ukui.kwin.waylandbackends/KWinWaylandX11Backend.so +%{_kf5_qtplugindir}/org.ukui.kwin.waylandbackends/KWinWaylandVirtualBackend.so + +%files -n ukui-kwin-common +%{_libexecdir}/ukui_kwin_killer_helper +%{_libexecdir}/ukui_kwin_rules_dialog +%{_kf5_libdir}/kconf_update_bin/ukui_kwin5_update_default_rules +%{_libdir}/libkcmukuikwincommon.so.* %{_kf5_libdir}/libkdeinit5_ukui_kwin_rules_dialog.so -%{_datadir}/ukui-kwin -%{_kf5_qtplugindir}/*.so +%{_libdir}/libukui-kwin.so.* +%{_qt5_plugindir}/kcm_ukuikwin*.so +%{_qt5_plugindir}/kcms/kcm_ukuikwin_effects.so +%{_qt5_plugindir}/kcms/kcm_ukuikwin_virtualdesktops.so +%{_qt5_plugindir}/kcms/kcm_ukuikwindecoration.so +%{_kf5_plugindir}/org.ukui.kwindowsystem.platforms/KF5WindowSystemKWinPrivatePlugin.so +%{_kf5_qtplugindir}/kpackage/packagestructure/ukui_kwin_packagestructure*.so +%{_qt5_plugindir}/ukuikwin*.so %{_kf5_qtplugindir}/ukui-kwin/ -%{_kf5_qtplugindir}/kcms/ -%{_kf5_qtplugindir}/kf5/ %{_kf5_qtplugindir}/org.kde.kdecoration2/*.so -%{_kf5_qtplugindir}/org.ukui.kwin.platforms/ -%{_kf5_qtplugindir}/kpackage/packagestructure/ukui_kwin_packagestructure*.so +%{_kf5_qtplugindir}/org.ukui.kglobalaccel5.platforms/KF5GlobalAccelPrivateKWin.so %{_kf5_qtplugindir}/org.ukui.kwin.scenes/*.so %{_qt5_qmldir}/org/ukui/kwin -%{_kf5_libdir}/kconf_update_bin/ukui_kwin5_update_default_rules -%{_libexecdir}/ukui_kwin_killer_helper -%{_libexecdir}/ukui_kwin_rules_dialog -%{_datadir}/kconf_update/ukui-kwin.upd +%{_datadir}/knsrcfiles/*.knsrc +%{_kf5_datadir}/qlogging-categories5/org_ukui_kwin.categories +%{_datadir}/touchgesture/touchgesture.xml + +%files -n ukui-kwin-data +%{_sysconfdir}/xdg/LowPerformanceCPU.list +%{_sysconfdir}/xdg/LowVgaPci.list +%{_sysconfdir}/xdg/autostart/ukui-kwin.desktop +%{_sysconfdir}/xdg/ukui-kwinrc +%{_datadir}/aurorae/ +%{_kf5_datadir}/config.kcfg/ukui-kwin.kcfg +%{_kf5_datadir}/config.kcfg/ukui-kwin_colorcorrect.kcfg +%{_kf5_datadir}/config.kcfg/ukuikwindecorationsettings.kcfg +%{_kf5_datadir}/config.kcfg/ukuivirtualdesktopssettings.kcfg +%{_datadir}/icons/*/*/apps/ukui-kwin.* %{_datadir}/kconf_update/ukui-kwin-5.16-auto-bordersize.sh %{_datadir}/kconf_update/ukui-kwin-5.18-move-animspeed.py +%{_datadir}/kconf_update/ukui-kwin.upd +%{_kf5_datadir}/knotifications5/ukui-kwin.notifyrc +%{_kf5_datadir}/kpackage/kcms/kcm_ukuikwin_effects/ +%{_kf5_datadir}/kpackage/kcms/kcm_ukuikwin_virtualdesktops/ +%{_kf5_datadir}/kpackage/kcms/kcm_ukuikwindecoration %{_kf5_datadir}/kservices5/*.desktop %{_kf5_datadir}/kservices5/ukui-kwin %{_kf5_datadir}/kservicetypes5/*.desktop -%{_kf5_datadir}/kpackage/kcms/kcm_ukuikwin_virtualdesktops/* -%{_kf5_datadir}/kpackage/kcms/kcm_* -%{_kf5_datadir}/knotifications5/ukui-kwin.notifyrc -%{_kf5_datadir}/config.kcfg/ukui-kwin.kcfg -%{_kf5_datadir}/config.kcfg/ukuikwindecorationsettings.kcfg -%{_kf5_datadir}/config.kcfg/ukuivirtualdesktopssettings.kcfg -%{_kf5_datadir}/config.kcfg/ukui-kwin_colorcorrect.kcfg -%{_datadir}/icons/hicolor/*/apps/ukui-kwin.* -%{_datadir}/knsrcfiles/*.knsrc -%{_datadir}/aurorae/themes/*/* +%{_kf5_datadir}/kservicetypes5/ukui-kwin/*.desktop +%{_datadir}/ukui-kwin +%{_datadir}/locale -%files wayland -%{_kf5_bindir}/ukui-kwin_wayland -%{_kf5_qtplugindir}/platforms/UKUIKWinQpaPlugin.so -%{_kf5_qtplugindir}/org.ukui.kglobalaccel5.platforms/KF5GlobalAccelPrivateKWin.so -%{_kf5_qtplugindir}/org.ukui.kwin.waylandbackends/KWinWaylandDrmBackend.so -%{_kf5_qtplugindir}/org.ukui.kwin.waylandbackends/KWinWaylandFbdevBackend.so -%{_kf5_qtplugindir}/org.ukui.kwin.waylandbackends/KWinWaylandWaylandBackend.so -%{_kf5_qtplugindir}/org.ukui.kwin.waylandbackends/KWinWaylandX11Backend.so -%{_kf5_qtplugindir}/org.ukui.kwin.waylandbackends/KWinWaylandVirtualBackend.so -%{_kf5_plugindir}/org.ukui.kidletime.platforms/KF5IdleTimeKWinWaylandPrivatePlugin.so +%files -n ukui-kwin-devel +%{_includedir}/ukui-kwin*.h +%{_includedir}/ukui-kwin/ +%{_libdir}/cmake/ukui-kwin/KWinDBusInterface +%{_libdir}/libukui-kwin4_effect_builtins.so +%{_libdir}/libukui-kwineffects.so +%{_libdir}/libukui-kwinglutils.so +%{_libdir}/libukui-kwinxrenderutils.so +%{_datadir}/dbus-1/interfaces/*.xml -%ldconfig_scriptlets libs +%files -n ukui-kwin-x11 +%{_bindir}/ukui-kwin_x11 +%{_kf5_libdir}/libkdeinit5_ukui-kwin_x11.so +%{_kf5_qtplugindir}/org.ukui.kwin.platforms/KWinX11Platform.so -%files libs -%{_kf5_datadir}/qlogging-categories5/org_ukui_kwin.categories -%{_libdir}/libukui-kwin.so.* -%{_libdir}/libukui-kwinxrenderutils.so.* +%files -n libukui-kwin4-effect-builtins1 +%{_libdir}/libukui-kwin4_effect_builtins.so.* + +%files -n libukui-kwineffects12 %{_libdir}/libukui-kwineffects.so.* + +%files -n libukui-kwinglutils12 %{_libdir}/libukui-kwinglutils.so.* -%{_libdir}/libukui-kwin4_effect_builtins.so.* -%{_libdir}/libkcmukuikwincommon.so.* -%{_qt5_plugindir}/kcms/kcm_ukuikwin_virtualdesktops.so -%files devel -%{_datadir}/dbus-1/interfaces/*.xml -%{_libdir}/cmake/ukui-kwin/KWinDBusInterface -%{_libdir}/libukui-kwinxrenderutils.so -%{_libdir}/libukui-kwineffects.so -%{_libdir}/libukui-kwinglutils.so -%{_libdir}/libukui-kwin4_effect_builtins.so -%{_includedir}/ukui-kwin*.h -%{_includedir}/ukui-kwin/*.h +%files -n libukui-kwinxrenderutils12 +%{_libdir}/libukui-kwinxrenderutils.so.* + %changelog +* Thu Mar 09 2023 peijiankang - 1.0.5-4 +- fix mate-terminal theme + +* Thu Feb 16 2023 peijiankang - 1.0.5-3 +- fix ukui-kwin-data install error + +* Tue Dec 6 2022 peijiankang - 1.0.5-2 +- modify install error + +* Fri Dec 2 2022 peijiankang - 1.0.5-1 +- update version to 1.0.5 + * Fri Jul 29 2022 peijiankang - 1.0.4-5 - modify complie error of kde5.95 diff --git a/ukui-kwin.yaml b/ukui-kwin.yaml new file mode 100644 index 0000000000000000000000000000000000000000..594dee8fa9e3d411dc3a97a3cccc3b43ef73af59 --- /dev/null +++ b/ukui-kwin.yaml @@ -0,0 +1,4 @@ +version_control: github +src_repo: https://github.com/ukui/ukui-kwin.git +tag_prefix: "v" +separator: "." \ No newline at end of file diff --git a/ukui-kwin_1.0.4.orig.tar.gz b/ukui-kwin_1.0.4.orig.tar.gz deleted file mode 100644 index 07343c666298fc115d9493225ab4ae56e4e88c1c..0000000000000000000000000000000000000000 Binary files a/ukui-kwin_1.0.4.orig.tar.gz and /dev/null differ