+++ /dev/null
-diff --git a/kde/window-decorator-kde4/window.cpp b/kde/window-decorator-kde4/window.cpp
-index a7cd2d4..d7ab93d 100644
---- a/kde/window-decorator-kde4/window.cpp
-+++ b/kde/window-decorator-kde4/window.cpp
-@@ -486,31 +486,39 @@ KWD::Window::showWindowMenu (const QRect &pos)
- showWindowMenu (pos.bottomLeft ());
- }
-
--void
--KWD::Window::processMousePressEvent (QMouseEvent *qme)
-+KWD::Options::MouseCommand
-+KWD::Window::buttonToCommand (Qt::MouseButtons button)
- {
- Options::MouseCommand com = Options::MouseNothing;
-- bool active = isActive ();
-+ bool active = isActive ();
-
- if (!mSupportTakeFocus)
-- active = TRUE;
-+ active = true;
-
-- switch (qme->button ()) {
-+ switch (button) {
- case Qt::LeftButton:
- com = active ? Decorator::options ()->commandActiveTitlebar1 () :
-- Decorator::options()->commandInactiveTitlebar1 ();
-+ Decorator::options()->commandInactiveTitlebar1 ();
- break;
- case Qt::MidButton:
- com = active ? Decorator::options ()->commandActiveTitlebar2 () :
-- Decorator::options()->commandInactiveTitlebar2 ();
-+ Decorator::options()->commandInactiveTitlebar2 ();
- break;
- case Qt::RightButton:
- com = active ? Decorator::options ()->commandActiveTitlebar3 () :
-- Decorator::options()->commandInactiveTitlebar3 ();
-+ Decorator::options()->commandInactiveTitlebar3 ();
- default:
- break;
- }
-
-+ return com;
-+}
-+
-+void
-+KWD::Window::processMousePressEvent (QMouseEvent *qme)
-+{
-+ Options::MouseCommand com = buttonToCommand (qme->button ());
-+
- if (qme->button () == Qt::LeftButton)
- {
- // actions where it's not possible to get the matching release event
-@@ -752,6 +760,92 @@ KWD::Window::compositingActive (void) const
- return true;
- }
-
-+QRect
-+KWD::Window::transparentRect () const
-+{
-+ return QRect ();
-+}
-+
-+bool
-+KWD::Window::isClientGroupActive ()
-+{
-+ return true;
-+}
-+
-+QList<ClientGroupItem>
-+KWD::Window::clientGroupItems () const
-+{
-+ QList<ClientGroupItem> items;
-+
-+ QIcon icon (mIcon);
-+ icon.addPixmap (mMiniIcon);
-+
-+ items.append (ClientGroupItem (mName, icon));
-+
-+ return items;
-+}
-+
-+long
-+KWD::Window::itemId (int index)
-+{
-+ return (long) mClientId;
-+}
-+
-+int
-+KWD::Window::visibleClientGroupItem ()
-+{
-+ return 0;
-+}
-+
-+void
-+KWD::Window::setVisibleClientGroupItem (int index)
-+{
-+}
-+
-+void
-+KWD::Window::moveItemInClientGroup (int index, int before)
-+{
-+}
-+
-+void
-+KWD::Window::moveItemToClientGroup (long itemId, int before)
-+{
-+}
-+
-+void
-+KWD::Window::removeFromClientGroup (int index, const QRect& newGeom)
-+{
-+}
-+
-+void
-+KWD::Window::closeClientGroupItem (int index)
-+{
-+ closeWindow ();
-+}
-+
-+void
-+KWD::Window::closeAllInClientGroup ()
-+{
-+ closeWindow ();
-+}
-+
-+void
-+KWD::Window::displayClientMenu (int index, const QPoint& pos)
-+{
-+ showWindowMenu (pos);
-+}
-+
-+KDecorationDefines::WindowOperation
-+KWD::Window::buttonToWindowOperation(Qt::MouseButtons button)
-+{
-+ Options::MouseCommand com = buttonToCommand (button);
-+
-+ if (com == Options::MouseOperationsMenu)
-+ return KDecorationDefines::OperationsOp;
-+
-+ return KDecorationDefines::NoOp;
-+}
-+
- void
- KWD::Window::createDecoration (void)
- {
-@@ -1466,7 +1560,7 @@ KWD::Window::moveWindow (QMouseEvent *qme)
- NET::Direction direction;
-
- direction = positionToDirection (mDecor->mousePosition (qme->pos ()));
--
-+
- QPoint p (mGeometry.x () - mExtents.left, mGeometry.y () - mExtents.top);
- p += qme->pos ();
-
-@@ -1476,7 +1570,7 @@ KWD::Window::moveWindow (QMouseEvent *qme)
- Decorator::rootInfo ()->restackRequest (mClientId, NET::FromApplication,
- None, Above,
- QX11Info::appTime());
--
-+
- Decorator::rootInfo ()->moveResizeRequest (mClientId,
- p.x (),
- p.y (),
-diff --git a/kde/window-decorator-kde4/window.h b/kde/window-decorator-kde4/window.h
-index 40a5076..e230a83 100644
---- a/kde/window-decorator-kde4/window.h
-+++ b/kde/window-decorator-kde4/window.h
-@@ -111,7 +111,23 @@ class Window: public QObject, public KDecorationBridgeUnstable {
-
- /* unstable API */
- virtual bool compositingActive () const;
--
-+ virtual QRect transparentRect () const;
-+
-+ virtual bool isClientGroupActive ();
-+ virtual QList<ClientGroupItem> clientGroupItems () const;
-+ virtual long itemId (int index);
-+ virtual int visibleClientGroupItem ();
-+ virtual void setVisibleClientGroupItem (int index);
-+ virtual void moveItemInClientGroup (int index, int before);
-+ virtual void moveItemToClientGroup (long itemId, int before);
-+ virtual void removeFromClientGroup (int index, const QRect& newGeom);
-+ virtual void closeClientGroupItem (int index);
-+ virtual void closeAllInClientGroup ();
-+ virtual void displayClientMenu (int index, const QPoint& pos);
-+
-+ virtual WindowOperation
-+ buttonToWindowOperation(Qt::MouseButtons button);
-+
- virtual bool eventFilter (QObject* o, QEvent* e);
-
- void handleActiveChange (void);
-@@ -191,8 +207,10 @@ class Window: public QObject, public KDecorationBridgeUnstable {
- int rightOffset);
- void updateProperty (void);
- void getWindowProtocols (void);
-+
-+ Options::MouseCommand buttonToCommand (Qt::MouseButtons button);
- void performMouseCommand (KWD::Options::MouseCommand command,
-- QMouseEvent *qme);
-+ QMouseEvent *qme);
- NET::Direction positionToDirection (int pos);
- Cursor positionToCursor (QPoint pos);
-
+++ /dev/null
-diff -uNr compiz-0.8.4.old/plugins/png.c compiz-0.8.4/plugins/png.c
---- compiz-0.8.4.old/plugins/png.c 2009-09-01 07:38:22.000000000 +0200
-+++ compiz-0.8.4/plugins/png.c 2010-02-15 22:16:30.000000000 +0100
-@@ -102,7 +102,7 @@
-
- /* expand gray bit depth if needed */
- if (color_type == PNG_COLOR_TYPE_GRAY && depth < 8)
-- png_set_gray_1_2_4_to_8 (png);
-+ png_set_expand_gray_1_2_4_to_8 (png);
-
- /* transform transparency to alpha */
- if (png_get_valid(png, info, PNG_INFO_tRNS))
-@@ -167,7 +167,7 @@
- Bool status;
-
- sig_bytes = fread (png_sig, 1, PNG_SIG_SIZE, file);
-- if (png_check_sig (png_sig, sig_bytes) == 0)
-+ if (png_sig_cmp (png_sig, 0, sig_bytes) != 0)
- return FALSE;
-
- png = png_create_read_struct (PNG_LIBPNG_VER_STRING, NULL, NULL, NULL);
-@@ -218,7 +218,7 @@
- Bool status;
-
- memcpy (png_sig, buffer, PNG_SIG_SIZE);
-- if (png_check_sig (png_sig, PNG_SIG_SIZE) == 0)
-+ if (png_sig_cmp (png_sig, 0, PNG_SIG_SIZE) != 0)
- return FALSE;
-
- png = png_create_read_struct (PNG_LIBPNG_VER_STRING, NULL, NULL, NULL);