<?xml version="1.0"?>
<paste-with-annotations>
  <paste>
    <number>
      <integer>92392</integer>
    </number>
    <user>
      <string>mrobinson</string>
    </user>
    <title>
      <string>GTK+ and GLib header patch</string>
    </title>
    <contents>
      <string>From fcf771ab0f57c0b5cc2c308279c11aa998f3eeab Mon Sep 17 00:00:00 2001
From: Martin Robinson &lt;martin.james.robinson@gmail.com&gt;
Date: Sun, 20 Dec 2009 17:18:26 +0100
Subject: [PATCH] Remove most GTK+ and GLib includes from WebCore headers.

---
 WebCore/ChangeLog                                  |   15 +++++++++++++++
 .../cairo/GraphicsContextPlatformPrivateCairo.h    |    2 +-
 WebCore/platform/gtk/PasteboardHelper.h            |    3 ++-
 WebCore/platform/gtk/RenderThemeGtk.cpp            |    1 +
 WebCore/platform/gtk/RenderThemeGtk.h              |    7 ++++++-
 WebCore/platform/gtk/ScrollbarGtk.cpp              |    1 -
 WebCore/platform/gtk/ScrollbarThemeGtk.h           |    5 +++++
 WebCore/platform/gtk/gtk2drawing.c                 |    4 ++--
 WebCore/platform/gtk/gtkdrawing.h                  |    3 +--
 9 files changed, 33 insertions(+), 8 deletions(-)

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index e04f638..378ac76 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2009-12-20  Martin Robinson  &lt;martin.james.robinson@gmail.com&gt;
+
+        Reviewed by NOBODY (OOPS!).
+
+        Remove most GTK+ and GLib includes from WebCore headers.
+
+        * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
+        * platform/gtk/PasteboardHelper.h:
+        * platform/gtk/RenderThemeGtk.cpp:
+        * platform/gtk/RenderThemeGtk.h:
+        * platform/gtk/ScrollbarGtk.cpp:
+        * platform/gtk/ScrollbarThemeGtk.h:
+        * platform/gtk/gtk2drawing.c:
+        * platform/gtk/gtkdrawing.h:
+
 2009-12-20  Andrei Popescu  &lt;andreip@google.com&gt;
 
         Reviewed by Adam Barth.
diff --git a/WebCore/platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h b/WebCore/platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h
index 54e1217..cedc684 100644
--- a/WebCore/platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h
+++ b/WebCore/platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h
@@ -33,8 +33,8 @@
 #include &lt;wtf/MathExtras.h&gt;
 
 #if PLATFORM(GTK)
-#include &lt;gdk/gdk.h&gt;
 #include &lt;pango/pango.h&gt;
+typedef struct _GdkExposeEvent GdkExposeEvent;
 #elif PLATFORM(WIN)
 #include &lt;cairo-win32.h&gt;
 #endif
diff --git a/WebCore/platform/gtk/PasteboardHelper.h b/WebCore/platform/gtk/PasteboardHelper.h
index e589f24..fff9a9b 100644
--- a/WebCore/platform/gtk/PasteboardHelper.h
+++ b/WebCore/platform/gtk/PasteboardHelper.h
@@ -30,7 +30,8 @@
 
 #include &quot;Frame.h&quot;
 
-#include &lt;gtk/gtk.h&gt;
+typedef struct _GtkClipboard GtkClipboard;
+typedef struct _GtkTargetList GtkTargetList;
 
 namespace WebCore {
 
diff --git a/WebCore/platform/gtk/RenderThemeGtk.cpp b/WebCore/platform/gtk/RenderThemeGtk.cpp
index 3cc14f8..809aa2f 100644
--- a/WebCore/platform/gtk/RenderThemeGtk.cpp
+++ b/WebCore/platform/gtk/RenderThemeGtk.cpp
@@ -36,6 +36,7 @@
 #include &quot;UserAgentStyleSheets.h&quot;
 #include &quot;gtkdrawing.h&quot;
 
+#include &lt;gtk/gtk.h&gt;
 #include &lt;gdk/gdk.h&gt;
 
 namespace WebCore {
diff --git a/WebCore/platform/gtk/RenderThemeGtk.h b/WebCore/platform/gtk/RenderThemeGtk.h
index 6a154ad..1054b96 100644
--- a/WebCore/platform/gtk/RenderThemeGtk.h
+++ b/WebCore/platform/gtk/RenderThemeGtk.h
@@ -30,7 +30,12 @@
 
 #include &quot;RenderTheme.h&quot;
 
-#include &lt;gtk/gtk.h&gt;
+typedef struct _GtkWidget GtkWidget;
+typedef struct _GtkStyle GtkStyle;
+typedef struct _GtkContainer GtkContainer;
+typedef struct _GdkRectangle GdkRectangle;
+typedef struct _GdkDrawable GdkDrawable;
+typedef struct _GtkBorder GtkBorder;
 
 namespace WebCore {
 
diff --git a/WebCore/platform/gtk/ScrollbarGtk.cpp b/WebCore/platform/gtk/ScrollbarGtk.cpp
index d7f6d26..00c6ea0 100644
--- a/WebCore/platform/gtk/ScrollbarGtk.cpp
+++ b/WebCore/platform/gtk/ScrollbarGtk.cpp
@@ -23,7 +23,6 @@
 #include &quot;GraphicsContext.h&quot;
 #include &quot;FrameView.h&quot;
 #include &quot;ScrollbarTheme.h&quot;
-#include &quot;gtkdrawing.h&quot;
 
 #include &lt;gtk/gtk.h&gt;
 
diff --git a/WebCore/platform/gtk/ScrollbarThemeGtk.h b/WebCore/platform/gtk/ScrollbarThemeGtk.h
index 21ccb43..618da35 100644
--- a/WebCore/platform/gtk/ScrollbarThemeGtk.h
+++ b/WebCore/platform/gtk/ScrollbarThemeGtk.h
@@ -28,6 +28,11 @@
 
 #include &quot;ScrollbarTheme.h&quot;
 
+typedef struct _GtkWidget GtkWidget;
+typedef struct _GtkStyle GtkStyle;
+typedef struct _GtkContainer GtkContainer;
+typedef struct _GtkBorder GtkBorder;
+
 namespace WebCore {
 
 class ScrollbarThemeGtk : public ScrollbarTheme {
diff --git a/WebCore/platform/gtk/gtk2drawing.c b/WebCore/platform/gtk/gtk2drawing.c
index 1f62c96..8d6496d 100644
--- a/WebCore/platform/gtk/gtk2drawing.c
+++ b/WebCore/platform/gtk/gtk2drawing.c
@@ -44,14 +44,14 @@
  * Adapted from the gtkdrawing.c, and gtk+2.0 source.
  */
 
-#include &lt;gtk/gtk.h&gt;
 #include &lt;gdk/gdkprivate.h&gt;
-#include &lt;string.h&gt;
+#include &lt;gtk/gtk.h&gt;
 #include &quot;gtkdrawing.h&quot;
 
 #include &quot;Assertions.h&quot;
 
 #include &lt;math.h&gt;
+#include &lt;string.h&gt;
 
 #define XTHICKNESS(style) (style-&gt;xthickness)
 #define YTHICKNESS(style) (style-&gt;ythickness)
diff --git a/WebCore/platform/gtk/gtkdrawing.h b/WebCore/platform/gtk/gtkdrawing.h
index 1a33bfb..b418705 100644
--- a/WebCore/platform/gtk/gtkdrawing.h
+++ b/WebCore/platform/gtk/gtkdrawing.h
@@ -48,8 +48,7 @@
 #ifndef _GTK_DRAWING_H_
 #define _GTK_DRAWING_H_
 
-#include &lt;gdk/gdk.h&gt;
-#include &lt;gtk/gtk.h&gt;
+#include &lt;gtk/gtkenums.h&gt;
 
 #ifdef __cplusplus
 extern &quot;C&quot; {
-- 
1.6.0.4
</string>
    </contents>
    <universal-time>
      <integer>3470314888</integer>
    </universal-time>
    <channel>
      <string>#webkit-gtk</string>
    </channel>
    <colorization-mode>
      <string>WebKit (text or diff)</string>
    </colorization-mode>
    <maybe-spam>
      <null/>
    </maybe-spam>
    <is-unicode>
      <keyword>TRUE</keyword>
    </is-unicode>
    <deletion-requested>
      <null/>
    </deletion-requested>
    <deletion-requested-email>
      <null/>
    </deletion-requested-email>
    <expiration-time>
      <null/>
    </expiration-time>
  </paste>
  <annotation>
    <number>
      <integer>1</integer>
    </number>
    <user>
      <string>mrobinson</string>
    </user>
    <title>
      <string>Updated include removal</string>
    </title>
    <contents>
      <string>From ccc1c014501a1634559dcd8a61849a43453815a1 Mon Sep 17 00:00:00 2001
From: Martin Robinson &lt;martin.james.robinson@gmail.com&gt;
Date: Sun, 20 Dec 2009 17:18:26 +0100
Subject: [PATCH] Remove most GTK+ and GLib includes from WebCore headers.

---
 WebCore/ChangeLog                                  |   15 +++++++++++++++
 .../cairo/GraphicsContextPlatformPrivateCairo.h    |    2 +-
 WebCore/platform/gtk/PasteboardHelper.h            |    3 ++-
 WebCore/platform/gtk/RenderThemeGtk.cpp            |    1 +
 WebCore/platform/gtk/RenderThemeGtk.h              |    7 ++++++-
 WebCore/platform/gtk/ScrollbarGtk.cpp              |    1 -
 WebCore/platform/gtk/ScrollbarThemeGtk.h           |    5 +++++
 WebCore/platform/gtk/gtk2drawing.c                 |    3 +--
 WebCore/platform/gtk/gtkdrawing.h                  |    1 -
 9 files changed, 31 insertions(+), 7 deletions(-)

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index e04f638..378ac76 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2009-12-20  Martin Robinson  &lt;martin.james.robinson@gmail.com&gt;
+
+        Reviewed by NOBODY (OOPS!).
+
+        Remove most GTK+ and GLib includes from WebCore headers.
+
+        * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
+        * platform/gtk/PasteboardHelper.h:
+        * platform/gtk/RenderThemeGtk.cpp:
+        * platform/gtk/RenderThemeGtk.h:
+        * platform/gtk/ScrollbarGtk.cpp:
+        * platform/gtk/ScrollbarThemeGtk.h:
+        * platform/gtk/gtk2drawing.c:
+        * platform/gtk/gtkdrawing.h:
+
 2009-12-20  Andrei Popescu  &lt;andreip@google.com&gt;
 
         Reviewed by Adam Barth.
diff --git a/WebCore/platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h b/WebCore/platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h
index 54e1217..cedc684 100644
--- a/WebCore/platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h
+++ b/WebCore/platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h
@@ -33,8 +33,8 @@
 #include &lt;wtf/MathExtras.h&gt;
 
 #if PLATFORM(GTK)
-#include &lt;gdk/gdk.h&gt;
 #include &lt;pango/pango.h&gt;
+typedef struct _GdkExposeEvent GdkExposeEvent;
 #elif PLATFORM(WIN)
 #include &lt;cairo-win32.h&gt;
 #endif
diff --git a/WebCore/platform/gtk/PasteboardHelper.h b/WebCore/platform/gtk/PasteboardHelper.h
index e589f24..fff9a9b 100644
--- a/WebCore/platform/gtk/PasteboardHelper.h
+++ b/WebCore/platform/gtk/PasteboardHelper.h
@@ -30,7 +30,8 @@
 
 #include &quot;Frame.h&quot;
 
-#include &lt;gtk/gtk.h&gt;
+typedef struct _GtkClipboard GtkClipboard;
+typedef struct _GtkTargetList GtkTargetList;
 
 namespace WebCore {
 
diff --git a/WebCore/platform/gtk/RenderThemeGtk.cpp b/WebCore/platform/gtk/RenderThemeGtk.cpp
index 3cc14f8..809aa2f 100644
--- a/WebCore/platform/gtk/RenderThemeGtk.cpp
+++ b/WebCore/platform/gtk/RenderThemeGtk.cpp
@@ -36,6 +36,7 @@
 #include &quot;UserAgentStyleSheets.h&quot;
 #include &quot;gtkdrawing.h&quot;
 
+#include &lt;gtk/gtk.h&gt;
 #include &lt;gdk/gdk.h&gt;
 
 namespace WebCore {
diff --git a/WebCore/platform/gtk/RenderThemeGtk.h b/WebCore/platform/gtk/RenderThemeGtk.h
index 6a154ad..1054b96 100644
--- a/WebCore/platform/gtk/RenderThemeGtk.h
+++ b/WebCore/platform/gtk/RenderThemeGtk.h
@@ -30,7 +30,12 @@
 
 #include &quot;RenderTheme.h&quot;
 
-#include &lt;gtk/gtk.h&gt;
+typedef struct _GtkWidget GtkWidget;
+typedef struct _GtkStyle GtkStyle;
+typedef struct _GtkContainer GtkContainer;
+typedef struct _GdkRectangle GdkRectangle;
+typedef struct _GdkDrawable GdkDrawable;
+typedef struct _GtkBorder GtkBorder;
 
 namespace WebCore {
 
diff --git a/WebCore/platform/gtk/ScrollbarGtk.cpp b/WebCore/platform/gtk/ScrollbarGtk.cpp
index d7f6d26..00c6ea0 100644
--- a/WebCore/platform/gtk/ScrollbarGtk.cpp
+++ b/WebCore/platform/gtk/ScrollbarGtk.cpp
@@ -23,7 +23,6 @@
 #include &quot;GraphicsContext.h&quot;
 #include &quot;FrameView.h&quot;
 #include &quot;ScrollbarTheme.h&quot;
-#include &quot;gtkdrawing.h&quot;
 
 #include &lt;gtk/gtk.h&gt;
 
diff --git a/WebCore/platform/gtk/ScrollbarThemeGtk.h b/WebCore/platform/gtk/ScrollbarThemeGtk.h
index 21ccb43..618da35 100644
--- a/WebCore/platform/gtk/ScrollbarThemeGtk.h
+++ b/WebCore/platform/gtk/ScrollbarThemeGtk.h
@@ -28,6 +28,11 @@
 
 #include &quot;ScrollbarTheme.h&quot;
 
+typedef struct _GtkWidget GtkWidget;
+typedef struct _GtkStyle GtkStyle;
+typedef struct _GtkContainer GtkContainer;
+typedef struct _GtkBorder GtkBorder;
+
 namespace WebCore {
 
 class ScrollbarThemeGtk : public ScrollbarTheme {
diff --git a/WebCore/platform/gtk/gtk2drawing.c b/WebCore/platform/gtk/gtk2drawing.c
index 1f62c96..4ba4d4c 100644
--- a/WebCore/platform/gtk/gtk2drawing.c
+++ b/WebCore/platform/gtk/gtk2drawing.c
@@ -44,14 +44,13 @@
  * Adapted from the gtkdrawing.c, and gtk+2.0 source.
  */
 
-#include &lt;gtk/gtk.h&gt;
 #include &lt;gdk/gdkprivate.h&gt;
-#include &lt;string.h&gt;
 #include &quot;gtkdrawing.h&quot;
 
 #include &quot;Assertions.h&quot;
 
 #include &lt;math.h&gt;
+#include &lt;string.h&gt;
 
 #define XTHICKNESS(style) (style-&gt;xthickness)
 #define YTHICKNESS(style) (style-&gt;ythickness)
diff --git a/WebCore/platform/gtk/gtkdrawing.h b/WebCore/platform/gtk/gtkdrawing.h
index 1a33bfb..c1bec62 100644
--- a/WebCore/platform/gtk/gtkdrawing.h
+++ b/WebCore/platform/gtk/gtkdrawing.h
@@ -48,7 +48,6 @@
 #ifndef _GTK_DRAWING_H_
 #define _GTK_DRAWING_H_
 
-#include &lt;gdk/gdk.h&gt;
 #include &lt;gtk/gtk.h&gt;
 
 #ifdef __cplusplus
-- 
1.6.0.4
</string>
    </contents>
    <universal-time>
      <integer>3470317007</integer>
    </universal-time>
    <channel>
      <string>#webkit-gtk</string>
    </channel>
    <colorization-mode>
      <string></string>
    </colorization-mode>
    <maybe-spam>
      <null/>
    </maybe-spam>
    <is-unicode>
      <keyword>TRUE</keyword>
    </is-unicode>
    <deletion-requested>
      <null/>
    </deletion-requested>
    <deletion-requested-email>
      <null/>
    </deletion-requested-email>
    <expiration-time>
      <null/>
    </expiration-time>
  </annotation>
</paste-with-annotations>
