summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/gtk/RedirectedXCompositeWindow.h
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@digia.com>2012-10-17 16:21:14 +0200
committerSimon Hausmann <simon.hausmann@digia.com>2012-10-17 16:21:14 +0200
commit8995b83bcbfbb68245f779b64e5517627c6cc6ea (patch)
tree17985605dab9263cc2444bd4d45f189e142cca7c /Source/WebCore/platform/gtk/RedirectedXCompositeWindow.h
parentb9c9652036d5e9f1e29c574f40bc73a35c81ace6 (diff)
Imported WebKit commit cf4f8fc6f19b0629f51860cb2d4b25e139d07e00 (http://svn.webkit.org/repository/webkit/trunk@131592)
New snapshot that includes the build fixes for Mac OS X 10.6 and earlier as well as the previously cherry-picked changes
Diffstat (limited to 'Source/WebCore/platform/gtk/RedirectedXCompositeWindow.h')
-rw-r--r--Source/WebCore/platform/gtk/RedirectedXCompositeWindow.h25
1 files changed, 16 insertions, 9 deletions
diff --git a/Source/WebCore/platform/gtk/RedirectedXCompositeWindow.h b/Source/WebCore/platform/gtk/RedirectedXCompositeWindow.h
index e5db0fa7e..7a98c3768 100644
--- a/Source/WebCore/platform/gtk/RedirectedXCompositeWindow.h
+++ b/Source/WebCore/platform/gtk/RedirectedXCompositeWindow.h
@@ -27,14 +27,16 @@
#ifndef RedirectedXCompositeWindow_h
#define RedirectedXCompositeWindow_h
-#if USE(GLX)
+#if PLATFORM(X11)
-#include "GLContextGLX.h"
+#include "GLContext.h"
#include "IntSize.h"
#include "RefPtrCairo.h"
typedef unsigned long Pixmap;
typedef unsigned long Window;
+typedef unsigned long Damage;
+typedef void (*DamageNotifyCallback)(void*);
namespace WebCore {
@@ -42,24 +44,25 @@ class RedirectedXCompositeWindow {
public:
static PassOwnPtr<RedirectedXCompositeWindow> create(const IntSize&);
virtual ~RedirectedXCompositeWindow();
-
- const IntSize& usableSize() { return m_usableSize; }
const IntSize& size() { return m_size; }
void resize(const IntSize& newSize);
GLContext* context();
cairo_surface_t* cairoSurfaceForWidget(GtkWidget*);
Window windowId() { return m_window; }
+ void callDamageNotifyCallback();
+
+ void setDamageNotifyCallback(DamageNotifyCallback callback, void* data)
+ {
+ m_damageNotifyCallback = callback;
+ m_damageNotifyData = data;
+ }
private:
RedirectedXCompositeWindow(const IntSize&);
-
- static gboolean resizeLaterCallback(RedirectedXCompositeWindow*);
- void resizeLater();
void cleanupPixmapAndPixmapSurface();
IntSize m_size;
- IntSize m_usableSize;
Window m_window;
Window m_parentWindow;
Pixmap m_pixmap;
@@ -67,10 +70,14 @@ private:
RefPtr<cairo_surface_t> m_surface;
unsigned int m_pendingResizeSourceId;
bool m_needsNewPixmapAfterResize;
+
+ Damage m_damage;
+ DamageNotifyCallback m_damageNotifyCallback;
+ void* m_damageNotifyData;
};
} // namespace WebCore
-#endif // USE(GLX)
+#endif // PLATFORM(X11)
#endif // RedirectedXCompositeWindow_h