compiz/compiz-0.7.8-kde42-crash.patch
2009-01-28 09:43:55 +00:00

67 lines
1.6 KiB
Diff

Implement KDecorationBridge unstable API, needed for KDE 4.2.
---
diff --git a/kde/window-decorator-kde4/window.cpp b/kde/window-decorator-kde4/window.cpp
index d2d362b..68c856b 100644
--- a/kde/window-decorator-kde4/window.cpp
+++ b/kde/window-decorator-kde4/window.cpp
@@ -764,6 +764,31 @@ KWD::Window::grabXServer (bool)
}
void
+KWD::Window::repaintShadow (void)
+{
+}
+
+bool
+KWD::Window::compositingActive (void) const
+{
+ return true;
+}
+
+bool
+KWD::Window::shadowsActive (void) const
+{
+ /* we are drawing the shadows ourselves, no need for the
+ decoration engine to do so */
+ return false;
+}
+
+double
+KWD::Window::opacity (void) const
+{
+ return 1.0;
+}
+
+void
KWD::Window::createDecoration (void)
{
KDecoration *decor;
diff --git a/kde/window-decorator-kde4/window.h b/kde/window-decorator-kde4/window.h
index bdf2c47..034e6fe 100644
--- a/kde/window-decorator-kde4/window.h
+++ b/kde/window-decorator-kde4/window.h
@@ -45,7 +45,7 @@ class QMenu;
namespace KWD
{
-class Window:public QWidget, public KDecorationBridge {
+class Window:public QWidget, public KDecorationBridgeUnstable {
Q_OBJECT public:
enum Type
@@ -104,6 +104,12 @@ class Window:public QWidget, public KDecorationBridge {
virtual Qt::WFlags initialWFlags (void) const;
virtual void grabXServer (bool grab);
+ /* unstable API */
+ virtual void repaintShadow ();
+ virtual bool compositingActive () const;
+ virtual bool shadowsActive () const;
+ virtual double opacity () const;
+
void handleActiveChange (void);
void updateFrame (WId frame);
void updateWindowGeometry (void);