From b98bb238693c6ed782dc7c893986c5b106e8291e Mon Sep 17 00:00:00 2001
From: James Meyer <james.meyer@operamail.com>
Date: Tue, 7 Aug 2012 14:48:39 -0500
Subject: gtk3 3.4.4.

---
 abs/extra/gtk3/PKGBUILD     | 42 ++++++++++++++++++++++++++++++++++++++++++
 abs/extra/gtk3/gtk3.install | 16 ++++++++++++++++
 abs/extra/gtk3/settings.ini |  2 ++
 abs/extra/gtk3/wacom.patch  | 12 ++++++++++++
 4 files changed, 72 insertions(+)
 create mode 100644 abs/extra/gtk3/PKGBUILD
 create mode 100644 abs/extra/gtk3/gtk3.install
 create mode 100644 abs/extra/gtk3/settings.ini
 create mode 100644 abs/extra/gtk3/wacom.patch

diff --git a/abs/extra/gtk3/PKGBUILD b/abs/extra/gtk3/PKGBUILD
new file mode 100644
index 0000000..9d4a7a1
--- /dev/null
+++ b/abs/extra/gtk3/PKGBUILD
@@ -0,0 +1,42 @@
+# $Id: PKGBUILD 163899 2012-07-21 19:20:27Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+
+pkgname=gtk3
+pkgver=3.4.4
+pkgrel=1
+pkgdesc="GObject-based multi-platform GUI toolkit (v3)"
+arch=('i686' 'x86_64')
+url="http://www.gtk.org/"
+install=gtk3.install
+depends=('atk' 'cairo' 'gtk-update-icon-cache' 'libcups' 'libxcursor' 'libxinerama' 'libxrandr' 'libxi' 'libxcomposite' 'libxdamage' 'pango' 'shared-mime-info' 'colord')
+makedepends=('gobject-introspection')
+options=('!libtool')
+backup=(etc/gtk-3.0/settings.ini)
+license=('LGPL')
+source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/${pkgver%.*}/gtk+-$pkgver.tar.xz
+        settings.ini wacom.patch)
+sha256sums=('f154e460075034da4c0ce89c320025dcd459da2a1fdf32d92a09522eaca242c7'
+            'c214d3dcdcadda3d642112287524ab3e526ad592b70895c9f3e3733c23701621'
+            '86bda95a14a99d0f596c4ecb2ed715689f71c207c65dfc90a39d4ae7f1c0c0f5')
+build() {
+    cd "gtk+-$pkgver"
+
+    # Partially revert BGO#673440 in order to fix BGO#674157
+    patch -Np1 -i ../wacom.patch
+
+    CXX=/bin/false ./configure --prefix=/usr \
+        --sysconfdir=/etc \
+        --localstatedir=/var \
+        --enable-gtk2-dependency \
+        --disable-schemas-compile
+    #https://bugzilla.gnome.org/show_bug.cgi?id=655517
+    sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+    make
+}
+
+package() {
+    cd "gtk+-$pkgver"
+    make DESTDIR="$pkgdir" install
+
+    install -Dm644 "$srcdir/settings.ini" "$pkgdir/etc/gtk-3.0/settings.ini"
+}
diff --git a/abs/extra/gtk3/gtk3.install b/abs/extra/gtk3/gtk3.install
new file mode 100644
index 0000000..ca20d28
--- /dev/null
+++ b/abs/extra/gtk3/gtk3.install
@@ -0,0 +1,16 @@
+post_install() {
+    /usr/bin/gtk-query-immodules-3.0 --update-cache
+    /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas
+}
+
+post_upgrade() {
+    post_install
+}
+
+pre_remove() {
+    rm -f /usr/lib/gtk-3.0/3.0.0/immodules.cache
+}
+
+post_remove() {
+    /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas
+}
diff --git a/abs/extra/gtk3/settings.ini b/abs/extra/gtk3/settings.ini
new file mode 100644
index 0000000..039000d
--- /dev/null
+++ b/abs/extra/gtk3/settings.ini
@@ -0,0 +1,2 @@
+[Settings]
+gtk-fallback-icon-theme = gnome
diff --git a/abs/extra/gtk3/wacom.patch b/abs/extra/gtk3/wacom.patch
new file mode 100644
index 0000000..79ad84f
--- /dev/null
+++ b/abs/extra/gtk3/wacom.patch
@@ -0,0 +1,12 @@
+diff -u -r gtk+-3.4.2/gdk/x11/gdkdevicemanager-xi2.c gtk+-3.4.2-wacom/gdk/x11/gdkdevicemanager-xi2.c
+--- gtk+-3.4.2/gdk/x11/gdkdevicemanager-xi2.c	2012-05-02 14:45:04.000000000 +0200
++++ gtk+-3.4.2-wacom/gdk/x11/gdkdevicemanager-xi2.c	2012-05-03 18:34:18.034807644 +0200
+@@ -331,6 +331,8 @@
+         input_source = GDK_SOURCE_ERASER;
+       else if (strstr (tmp_name, "cursor"))
+         input_source = GDK_SOURCE_CURSOR;
++      else if (strstr (tmp_name, "finger"))
++        input_source = GDK_SOURCE_TOUCHSCREEN;
+       else if (strstr (tmp_name, "wacom") ||
+                strstr (tmp_name, "pen"))
+         input_source = GDK_SOURCE_PEN;
-- 
cgit v0.12

