[kde-workspace] restore stable kdecoration API to 4.8 (#831958, kde#301728)

Rex Dieter rdieter at fedoraproject.org
Tue Jul 3 19:35:26 UTC 2012


commit 760d8a8e8b1d431b3e2d63ce6198d346619de54e
Author: Rex Dieter <rdieter at fedoraproject.org>
Date:   Tue Jul 3 14:38:42 2012 -0500

    restore stable kdecoration API to 4.8 (#831958, kde#301728)

 0002-restore-stable-kdecoration-API-to-4.8.patch |   78 ++++++++++++++++++++++
 kde-workspace.spec                               |   10 +++-
 2 files changed, 87 insertions(+), 1 deletions(-)
---
diff --git a/0002-restore-stable-kdecoration-API-to-4.8.patch b/0002-restore-stable-kdecoration-API-to-4.8.patch
new file mode 100644
index 0000000..e46dd2d
--- /dev/null
+++ b/0002-restore-stable-kdecoration-API-to-4.8.patch
@@ -0,0 +1,78 @@
+diff --git a/kwin/libkdecorations/kdecoration.h b/kwin/libkdecorations/kdecoration.h
+index ce9ad36..67f7169 100644
+--- a/kwin/libkdecorations/kdecoration.h
++++ b/kwin/libkdecorations/kdecoration.h
+@@ -122,7 +122,16 @@ public:
+         ActivateNextTabOp, // Move left in the group
+         ActivatePreviousTabOp, // Move right in the group
+         ToggleClientTiledStateOp, // put a floating client into tiling
+-        TabDragOp
++        TabDragOp,
++
++        //BEGIN ABI stability stuff
++        // NOTICE for ABI stability
++        // TODO remove with mandatory version tagging fo 4.9.x or 4.10
++        RemoveClientFromGroupOp = RemoveTabFromGroupOp, // Remove from group
++        CloseClientGroupOp = CloseTabGroupOp, // Close the group
++        MoveClientInGroupLeftOp = ActivateNextTabOp, // Move left in the group
++        MoveClientInGroupRightOp = ActivatePreviousTabOp // Move right in the group
++        //END ABI stability stuff
+     };
+     /**
+      * Basic color types that should be recognized by all decoration styles.
+@@ -212,7 +221,13 @@ public:
+         // Tabbing
+         AbilityTabbing = 4000, ///< The decoration supports tabbing
+         // TODO colors for individual button types
+-        ABILITY_DUMMY = 10000000
++        ABILITY_DUMMY = 10000000,
++
++        //BEGIN ABI stability stuff
++        // NOTICE for ABI stability
++        // TODO remove with mandatory version tagging fo 4.9.x or 4.10
++        AbilityClientGrouping = AbilityTabbing
++        //END ABI stability stuff
+     };
+ 
+     enum Requirement { REQUIREMENT_DUMMY = 1000000 };
+@@ -241,10 +256,37 @@ public:
+     /**
+      * Returns the mimeType used to drag and drop clientGroupItems
+      */
++    //BEGIN ABI stability stuff
++    // NOTICE for ABI stability
++    // TODO remove with mandatory version tagging fo 4.9.x or 4.10
++    static QString clientGroupItemDragMimeType() { return tabDragMimeType(); }
++    //END ABI stability stuff
+     static QString tabDragMimeType();
+ 
+ };
+ 
++//BEGIN ABI stability stuff
++// NOTICE for ABI stability
++// TODO remove with mandatory version tagging fo 4.9.x or 4.10
++class KWIN_EXPORT ClientGroupItem
++{
++public:
++    ClientGroupItem(QString t, QIcon i) {
++        title_ = t;
++        icon_ = i;
++    }
++    inline QIcon icon() const {
++        return icon_;
++    }
++    inline QString title() const {
++        return title_;
++    }
++private:
++    QString title_;
++    QIcon icon_;
++};
++//END ABI stability stuff
++
+ class KDecorationProvides
+     : public KDecorationDefines
+ {
+-- 
+1.7.10.4
+
diff --git a/kde-workspace.spec b/kde-workspace.spec
index 07d13ee..9b48c98 100644
--- a/kde-workspace.spec
+++ b/kde-workspace.spec
@@ -12,7 +12,7 @@
 Summary: KDE Workspace
 Name:    kde-workspace
 Version: 4.8.95
-Release: 1%{?dist}
+Release: 2%{?dist}
 
 License: GPLv2
 URL:     https://projects.kde.org/projects/kde/kde-workspace
@@ -104,6 +104,10 @@ Patch57: kde-workspace-4.8.0-bug796969.patch
 # initial systemd support
 Patch58: kde-workspace-4.8.0-systemd-shutdown.patch
 
+# https://git.reviewboard.kde.org/r/105377/
+# restore stable kdecoration API to 4.8
+Patch59: 0002-restore-stable-kdecoration-API-to-4.8.patch
+
 ## upstream patches
 
 ## plasma active patches
@@ -435,6 +439,7 @@ Requires: akonadi
 #patch56 -p1 -b .kwin_llvmpipe_whitelist
 %patch57 -p1 -b .bug796969
 %patch58 -p1 -b .systemd-shutdown
+%patch59 -p1 -b .kdecoration_api
 
 # upstream patches
 
@@ -986,6 +991,9 @@ fi
 
 
 %changelog
+* Tue Jul 03 2012 Rex Dieter <rdieter at fedoraproject.org> 4.8.95-2
+- restore stable kdecoration API to 4.8 (#831958, kde#301728)
+
 * Wed Jun 27 2012 Jaroslav Reznik <jreznik at redhat.com> - 4.8.95-1
 - 4.8.95
 - remove battery size patch


More information about the scm-commits mailing list