diff --git a/0001-New-tooltip-style.patch b/0001-New-tooltip-style.patch new file mode 100644 index 0000000..c9335ed --- /dev/null +++ b/0001-New-tooltip-style.patch @@ -0,0 +1,327 @@ +diff -up gtk+-2.91.3/gtk/gtktooltip.c.fresh-tooltips gtk+-2.91.3/gtk/gtktooltip.c +--- gtk+-2.91.3/gtk/gtktooltip.c.fresh-tooltips 2010-10-31 14:28:19.000000000 -0400 ++++ gtk+-2.91.3/gtk/gtktooltip.c 2010-11-01 14:12:41.027410023 -0400 +@@ -35,6 +35,9 @@ + #include "gtkalignment.h" + #include "gtksizerequest.h" + ++#ifdef GDK_WINDOWING_X11 ++#include "gdk/x11/gdkx.h" ++#endif + + /** + * SECTION:gtktooltip +@@ -165,6 +168,7 @@ static void gtk_tooltip_display_cl + GtkTooltip *tooltip); + static void gtk_tooltip_set_last_window (GtkTooltip *tooltip, + GdkWindow *window); ++static void update_shape (GtkTooltip *tooltip); + + + G_DEFINE_TYPE (GtkTooltip, gtk_tooltip, G_TYPE_OBJECT); +@@ -180,6 +184,40 @@ gtk_tooltip_class_init (GtkTooltipClass + } + + static void ++on_composited_changed (GtkWidget *window, ++ GtkTooltip *tooltip) ++{ ++ update_shape (tooltip); ++} ++ ++static void ++on_screen_changed (GtkWidget *window, ++ GdkScreen *previous, ++ GtkTooltip *tooltip) ++{ ++ GdkScreen *screen; ++ GdkVisual *visual; ++ ++ screen = gtk_widget_get_screen (window); ++ ++ ++ visual = NULL; ++ if (gdk_screen_is_composited (screen)) ++ visual = gdk_screen_get_rgba_visual (screen); ++ if (visual == NULL) ++ visual = gdk_screen_get_system_visual (screen); ++ ++ gtk_widget_set_visual (window, visual); ++} ++ ++static void ++on_realized (GtkWidget *window, ++ GtkTooltip *tooltip) ++{ ++ update_shape (tooltip); ++} ++ ++static void + gtk_tooltip_init (GtkTooltip *tooltip) + { + GtkStyle *style; +@@ -199,8 +237,12 @@ gtk_tooltip_init (GtkTooltip *tooltip) + tooltip->last_window = NULL; + + tooltip->window = g_object_ref (gtk_window_new (GTK_WINDOW_POPUP)); ++ ++ on_screen_changed (tooltip->window, NULL, tooltip); ++ + gtk_window_set_type_hint (GTK_WINDOW (tooltip->window), + GDK_WINDOW_TYPE_HINT_TOOLTIP); ++ + gtk_widget_set_app_paintable (tooltip->window, TRUE); + gtk_window_set_resizable (GTK_WINDOW (tooltip->window), FALSE); + gtk_widget_set_name (tooltip->window, "gtk-tooltip"); +@@ -234,6 +276,13 @@ gtk_tooltip_init (GtkTooltip *tooltip) + gtk_box_pack_start (GTK_BOX (tooltip->box), tooltip->label, + FALSE, FALSE, 0); + ++ g_signal_connect (tooltip->window, "composited-changed", ++ G_CALLBACK (on_composited_changed), tooltip); ++ g_signal_connect (tooltip->window, "screen-changed", ++ G_CALLBACK (on_screen_changed), tooltip); ++ g_signal_connect (tooltip->window, "realize", ++ G_CALLBACK (on_realized), tooltip); ++ + tooltip->custom_widget = NULL; + } + +@@ -583,19 +632,209 @@ gtk_tooltip_window_style_set (GtkTooltip + gtk_widget_queue_draw (tooltip->window); + } + ++static void ++draw_round_rect (cairo_t *cr, ++ gdouble aspect, ++ gdouble x, ++ gdouble y, ++ gdouble corner_radius, ++ gdouble width, ++ gdouble height) ++{ ++ gdouble radius = corner_radius / aspect; ++ ++ cairo_move_to (cr, x + radius, y); ++ ++ /* top-right, left of the corner */ ++ cairo_line_to (cr, x + width - radius, y); ++ ++ /* top-right, below the corner */ ++ cairo_arc (cr, ++ x + width - radius, y + radius, radius, ++ -90.0f * G_PI / 180.0f, 0.0f * G_PI / 180.0f); ++ ++ /* bottom-right, above the corner */ ++ cairo_line_to (cr, x + width, y + height - radius); ++ ++ /* bottom-right, left of the corner */ ++ cairo_arc (cr, ++ x + width - radius, y + height - radius, radius, ++ 0.0f * G_PI / 180.0f, 90.0f * G_PI / 180.0f); ++ ++ /* bottom-left, right of the corner */ ++ cairo_line_to (cr, x + radius, y + height); ++ ++ /* bottom-left, above the corner */ ++ cairo_arc (cr, ++ x + radius, y + height - radius, radius, ++ 90.0f * G_PI / 180.0f, 180.0f * G_PI / 180.0f); ++ ++ /* top-left, below the corner */ ++ cairo_line_to (cr, x, y + radius); ++ ++ /* top-left, right of the corner */ ++ cairo_arc (cr, ++ x + radius, y + radius, radius, ++ 180.0f * G_PI / 180.0f, 270.0f * G_PI / 180.0f); ++ ++ cairo_close_path (cr); ++} ++ ++static void ++fill_background (GtkWidget *widget, ++ cairo_t *cr) ++{ ++ GdkColor color; ++ gdouble r, g, b; ++ gint radius; ++ gdouble background_alpha; ++ GtkStyle *style; ++ GtkAllocation allocation; ++ ++ if (gdk_screen_is_composited (gtk_widget_get_screen (widget))) ++ background_alpha = 0.90; ++ else ++ background_alpha = 1.0; ++ ++ style = gtk_widget_get_style (widget); ++ ++ radius = MIN (style->xthickness, style->ythickness); ++ radius = MAX (radius, 1); ++ ++ cairo_set_operator (cr, CAIRO_OPERATOR_CLEAR); ++ cairo_paint (cr); ++ cairo_set_operator (cr, CAIRO_OPERATOR_OVER); ++ ++ gtk_widget_get_allocation (widget, &allocation); ++ ++ draw_round_rect (cr, ++ 1.0, 0.5, 0.5, radius, ++ allocation.width - 1, ++ allocation.height - 1); ++ ++ color = style->bg [GTK_STATE_NORMAL]; ++ r = (float)color.red / 65535.0; ++ g = (float)color.green / 65535.0; ++ b = (float)color.blue / 65535.0; ++ cairo_set_source_rgba (cr, r, g, b, background_alpha); ++ cairo_fill_preserve (cr); ++ ++ color = style->bg [GTK_STATE_SELECTED]; ++ r = (float) color.red / 65535.0; ++ g = (float) color.green / 65535.0; ++ b = (float) color.blue / 65535.0; ++ ++ cairo_set_source_rgba (cr, r, g, b, background_alpha); ++ cairo_set_line_width (cr, 1.0); ++ cairo_stroke (cr); ++} ++ ++static void ++update_shape (GtkTooltip *tooltip) ++{ ++ GdkScreen *screen; ++ cairo_t *cr; ++ cairo_surface_t *surface; ++ cairo_region_t *region; ++ gint width, height; ++ gboolean new_style; ++ gint radius; ++ GtkStyle *style; ++ ++ gtk_widget_style_get (tooltip->window, "new-tooltip-style", &new_style, NULL); ++ ++ if (!new_style) ++ { ++ gtk_widget_shape_combine_region (tooltip->window, NULL); ++ return; ++ } ++ ++ screen = gtk_widget_get_screen (tooltip->window); ++ style = gtk_widget_get_style (tooltip->window); ++ ++ gtk_window_get_size (GTK_WINDOW (tooltip->window), &width, &height); ++ ++ if (gdk_screen_is_composited (screen)) ++ { ++ const char *wm; ++ ++ gtk_widget_shape_combine_region (tooltip->window, NULL); ++#ifdef GDK_WINDOWING_X11 ++ /* This is a hack to keep the Metacity compositor from slapping a ++ * non-shaped shadow around the shaped tooltip ++ */ ++ if (!gtk_widget_get_mapped (tooltip->window)) ++ { ++ wm = gdk_x11_screen_get_window_manager_name (screen); ++ if (g_strcmp0 (wm, "Metacity") == 0) ++ gtk_window_set_type_hint (GTK_WINDOW (tooltip->window), ++ GDK_WINDOW_TYPE_HINT_DND); ++ } ++#endif ++ return; ++ } ++ ++ radius = MIN (style->xthickness, style->ythickness); ++ radius = MAX (radius, 1); ++ surface = cairo_image_surface_create (CAIRO_FORMAT_A8, width, height); ++ cr = cairo_create (surface); ++ if (cairo_status (cr) == CAIRO_STATUS_SUCCESS) ++ { ++ cairo_set_operator (cr, CAIRO_OPERATOR_CLEAR); ++ cairo_paint (cr); ++ ++ cairo_set_operator (cr, CAIRO_OPERATOR_OVER); ++ cairo_set_source_rgb (cr, 1.0, 1.0, 1.0); ++ draw_round_rect (cr, 1.0, 0, 0, radius + 1, width, height); ++ cairo_fill (cr); ++ region = gdk_cairo_region_create_from_surface (surface); ++ gtk_widget_shape_combine_region (tooltip->window, region); ++ cairo_region_destroy (region); ++ } ++ cairo_destroy (cr); ++ cairo_surface_destroy (surface); ++} ++ + static gboolean + gtk_tooltip_paint_window (GtkTooltip *tooltip, +- cairo_t *cr) ++ cairo_t *context) + { +- gtk_paint_flat_box (gtk_widget_get_style (tooltip->window), +- cr, +- GTK_STATE_NORMAL, +- GTK_SHADOW_OUT, +- tooltip->window, +- "tooltip", +- 0, 0, +- gtk_widget_get_allocated_width (tooltip->window), +- gtk_widget_get_allocated_height (tooltip->window)); ++ gboolean new_style; ++ ++ gtk_widget_style_get (tooltip->window, "new-tooltip-style", &new_style, NULL); ++ ++ if (new_style) ++ { ++ cairo_surface_t *surface; ++ cairo_t *cr; ++ ++ cairo_set_operator (context, CAIRO_OPERATOR_SOURCE); ++ surface = cairo_surface_create_similar (cairo_get_target (context), ++ CAIRO_CONTENT_COLOR_ALPHA, ++ gtk_widget_get_allocated_width (tooltip->window), ++ gtk_widget_get_allocated_height (tooltip->window)); ++ cr = cairo_create (surface); ++ fill_background (tooltip->window, cr); ++ cairo_destroy (cr); ++ ++ cairo_set_source_surface (context, surface, 0, 0); ++ cairo_paint (context); ++ cairo_surface_destroy (surface); ++ ++ update_shape (tooltip); ++ } ++ else ++ { ++ gtk_paint_flat_box (gtk_widget_get_style (tooltip->window), ++ context, ++ GTK_STATE_NORMAL, ++ GTK_SHADOW_OUT, ++ tooltip->window, ++ "tooltip", ++ 0, 0, ++ gtk_widget_get_allocated_width (tooltip->window), ++ gtk_widget_get_allocated_height (tooltip->window)); ++ } + + return FALSE; + } +diff -up gtk+-2.91.3/gtk/gtkwidget.c.fresh-tooltips gtk+-2.91.3/gtk/gtkwidget.c +--- gtk+-2.91.3/gtk/gtkwidget.c.fresh-tooltips 2010-11-01 09:17:21.000000000 -0400 ++++ gtk+-2.91.3/gtk/gtkwidget.c 2010-11-01 14:11:38.921410003 -0400 +@@ -3190,6 +3190,14 @@ gtk_widget_class_init (GtkWidgetClass *k + 1, G_MAXINT, 16, + GTK_PARAM_READABLE)); + ++ gtk_widget_class_install_style_property (klass, ++ g_param_spec_boolean ("new-tooltip-style", ++ NULL, ++ NULL, ++ FALSE, ++ GTK_PARAM_READABLE)); ++ ++ + g_type_class_add_private (klass, sizeof (GtkWidgetPrivate)); + } + diff --git a/README.md b/README.md index b3a973b..f727622 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,7 @@ # libgtk +The gtk+ package contains the GIMP ToolKit (GTK+), a library for creating graphical user interfaces for the X Window System. +GTK+ was originally written for the GIMP (GNU Image Manipulation Program) image processing program, but is now used by several other programs as well. + +If you are planning on using the GIMP or another program that uses GTK+, you'll need to have the gtk+ package installed. + diff --git a/db2html b/db2html new file mode 100644 index 0000000..5eef680 --- /dev/null +++ b/db2html @@ -0,0 +1,34 @@ +#! /bin/sh + +ADMON_GRAPHICS=/usr/share/sgml/docbook/dsssl-stylesheets-1.79/images/*.gif + +output=docbook2html-dir +skip=0 +for arg in "$@" +do + if [ $skip -gt 0 ] + then + skip=$(($skip - 1)) + continue + fi + case $arg in + -h|--help|-v|--version) break + ;; + -n|--nostd|-u|--nochunks) ;; + -*) skip=1 + ;; + *) output="$(echo $arg | sed 's,\.sgml$,,;s,\.sgm$,,;s,\.xml,,')" + echo "output is $output" + break + ;; + esac +done +if [ -d ${output} ] +then + rm -rf ${output}.junk + mv ${output} ${output}.junk +fi +mkdir ${output} +mkdir ${output}/stylesheet-images +cp ${ADMON_GRAPHICS} ${output}/stylesheet-images +jw -f docbook -b html -o ${output} "$@" \ No newline at end of file diff --git a/im-cedilla.conf b/im-cedilla.conf new file mode 100644 index 0000000..d8a1976 --- /dev/null +++ b/im-cedilla.conf @@ -0,0 +1,6 @@ +XIM=none +XIM_PROGRAM=/bin/true +XIM_ARGS= +SHORT_DESC=im-cedilla +GTK_IM_MODULE=cedilla +QT_IM_MODULE=xim diff --git a/libgtk.spec b/libgtk.spec new file mode 100644 index 0000000..780c3e6 --- /dev/null +++ b/libgtk.spec @@ -0,0 +1,675 @@ +%define majver %(echo %version | cut -d. -f 1-2) +%define libver 3.0 +%define binver 3.0.0 +%define atk_version 2.5.3 +%define glib_version 2.33.1 +%define pango_version 1.30.0 +%define cairo_version 1.10.0 +%define gdk_pixbuf_version 2.26.0 + +Name: libgtk +Version: 3.12.1 +Release: 1mamba +Summary: The GIMP ToolKit (GTK+), a library for creating GUIs +Group: System/Libraries +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: http://www.gtk.org +# bugfixes: http://ftp.acc.umu.se/pub/GNOME/sources/%{pkgname} +Source0: http://ftp.gnome.org/pub/GNOME/sources/gtk+/%{majver}/gtk+-%{version}.tar.xz +Source1: db2html +Source2: im-cedilla.conf +# https://bugzilla.gnome.org/show_bug.cgi?id=583273 +Patch0: 0001-New-tooltip-style.patch +Patch1: libgtk3-fix-gtk-show-uri-crash.patch +License: LGPL +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +BuildRequires: gtk-doc +BuildRequires: libatk-devel >= %atk_version +BuildRequires: libcairo-devel >= %cairo_version +BuildRequires: libcups-devel +BuildRequires: libe2fs-devel +BuildRequires: libexpat-devel +BuildRequires: libfontconfig-devel +BuildRequires: libfreetype-devel +BuildRequires: libgdk-pixbuf-devel >= %gdk_pixbuf_version +BuildRequires: libglib-devel >= %glib_version +BuildRequires: libkrb5-devel +BuildRequires: libopenssl-devel +BuildRequires: libpango-devel >= %pango_version +BuildRequires: libpixman-devel +BuildRequires: libpng-devel +BuildRequires: libpthread-stubs-devel +BuildRequires: libselinux-devel +BuildRequires: libstdc++6-devel +BuildRequires: libX11-devel +BuildRequires: libXau-devel +BuildRequires: libxcb-devel +BuildRequires: libXcomposite-devel +BuildRequires: libXcursor-devel +BuildRequires: libXdamage-devel +BuildRequires: libXdmcp-devel +BuildRequires: libXext-devel +BuildRequires: libXfixes-devel +BuildRequires: libXi-devel +BuildRequires: libXinerama-devel +BuildRequires: libXrandr-devel +BuildRequires: libXrender-devel +BuildRequires: libz-devel +## AUTOBUILDREQ-END +##BuildRequires: libimsettings-devel +BuildRequires: bash +BuildRequires: binutils +BuildRequires: coreutils +BuildRequires: glib-dconf >= %glib_version +BuildRequires: gettext-devel +BuildRequires: glib-gettextize >= %glib_version +BuildRequires: libtasn1-devel +BuildRequires: python-glib >= %glib_version +BuildRequires: gobject-introspection-devel +BuildRequires: colord-devel +BuildRequires: libkeyutils-devel +BuildRequires: libgcrypt-devel +BuildRequires: libglitz-devel +BuildRequires: libgnutls-devel +BuildRequires: libgpg-error-devel +BuildRequires: libjasper-devel +BuildRequires: libjpeg-devel +BuildRequires: libtiff-devel +BuildRequires: libat-spi2-atk-devel +BuildRequires: pkgconfig +Requires(post):libglib >= %glib_version +Requires(post):libgdk-pixbuf >= %gdk_pixbuf_version +Requires: shared-mime-info +Provides: gtk3 = %{?epoch:%epoch:}%{version}-%{release} +Provides: gtk3+ = %{?epoch:%epoch:}%{version}-%{release} +Provides: libgtk3 +Obsoletes: libgtk3 +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +# FIXME: +# checking for db2html... false +# checking libpapi... checking for papiServiceCreate in -lpapi... no +# checking if is needed for xReply... no + +# GTK+ 3.0.0 +# =========== + +# GDK backends: x11 +# X11 extensions: XKB Xinerama XI2 XRANDR XFIXES Composite DAMAGE +# Print backends: file lpr cups +# Dynamic modules: yes +# Included immodules: none +# PackageKit support: yes +# Introspection: yes +# Debugging: minimum +# Documentation: no + + +%description +The gtk+ package contains the GIMP ToolKit (GTK+), a library for creating graphical user interfaces for the X Window System. +GTK+ was originally written for the GIMP (GNU Image Manipulation Program) image processing program, but is now used by several other programs as well. + +If you are planning on using the GIMP or another program that uses GTK+, you'll need to have the gtk+ package installed. + +%package devel +Summary: Devel package for GTK+ +Group: Development/Libraries +Requires: pkgconfig +Requires: libglib-devel +Requires: libatk-devel +Requires: libcairo-devel +Requires: libpango-devel +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} +Provides: libgtk3-devel +Obsoletes: libgtk3-devel + +%description devel +The gtk+ package contains the GIMP ToolKit (GTK+), a library for creating graphical user interfaces for the X Window System. +GTK+ was originally written for the GIMP (GNU Image Manipulation Program) image processing program, but is now used by several other programs as well. + +If you are planning on using the GIMP or another program that uses GTK+, you'll need to have the gtk+ package installed. + +This package contains static libraries and header files need for development. + +%package apidocs +Summary: libgtk API documentation +Group: Documentation +Requires: gtk-doc +Provides: libgtk3-apidocs +Obsoletes: libgtk3-apidocs + +%description apidocs +gtk+ API documentation. + +#%package immodules +#Summary: Input methods for GTK+ +#Group: System/Libraries +#Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} +#Requires: imsettings + +#%description immodules +#The gtk+ package contains the GIMP ToolKit (GTK+), a library for creating graphical user interfaces for the X Window System. +#GTK+ was originally written for the GIMP (GNU Image Manipulation Program) image processing program, but is now used by several other programs as well. + +#If you are planning on using the GIMP or another program that uses GTK+, you'll need to have the gtk+ package installed. +#The %{name}-immodules package contains standalone input methods that are shipped as part of GTK+ 3. + +%prep +%setup -q -n gtk+-%{version} +#%patch0 -p1 +#%patch1 -p1 -b .gtk-show-uri-gdk-screen + +#sed -i "s|#!/usr/bin/env python|#!%{__python}|" gtk/gtk-builder-convert-%{libver} + +%build +#autoreconf -f +%configure \ + --enable-gtk2-dependency \ + --enable-xkb \ + --enable-xinerama \ + --enable-xinput \ + --enable-xrandr \ + --enable-xfixes \ + --enable-xcomposite \ + --enable-xdamage \ + --enable-x11-backend + +sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + +%make + +%install +[ "%{buildroot}" != / ] && rm -rf %{buildroot} +%makeinstall \ + RUN_QUERY_IMMODULES_TEST=false + +install -d %{buildroot}%{_sysconfdir}/gtk-%{libver} + +# todo mkdir p %{buildroot}%{_sysconfdir}/X11/xinit/xinput.d +# todo install -pm 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/X11/xinit/xinput.d/im-cedilla.conf + +touch %{buildroot}%{_libdir}/gtk-%{libver}/%{binver}/immodules.cache + +# todo conflict with pkg libgtk vs 2.x +# mv %{buildroot}%{_bindir}/gtk-update-icon-cache %{buildroot}%{_bindir}/gtk-update-icon-cache-%{libver} +# mv %{buildroot}%{_mandir}/man1/gtk-update-icon-cache.1 %{buildroot}%{_mandir}/man1/gtk-update-icon-cache-%{libver}.1 +rm -rf %{buildroot}%{_mandir}/man1/gtk-update-icon-cache.1* +# mv %{buildroot}%{_bindir}/gtk-builder-convert %{buildroot}%{_bindir}/gtk-builder-convert-%{libver} +# mv %{buildroot}%{_mandir}/man1/gtk-builder-convert.1 %{buildroot}%{_mandir}/man1/gtk-builder-convert-%{libver}.1 + +%find_lang gtk30 +%find_lang gtk30-properties + + +%clean +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +%post +/sbin/ldconfig +%{_bindir}/gtk-query-immodules-%{libver} --update-cache +%{_bindir}/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || : + +%postun +/sbin/ldconfig +if [ $1 -gt 0 ]; then + %{_bindir}/gtk-query-immodules-%{libver} --update-cache +fi +%{_bindir}/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || : + +%posttrans +FS=`stat -c %s %{_sysconfdir}/gtk-%{libver}/gtk-pixbuf.loaders 2>/dev/null` +[ "$FS" == "0" -o ! "$FS" ] && \ + %{_bindir}/gdk-pixbuf-query-loaders > %{_sysconfdir}/gtk-%{libver}/gdk-pixbuf.loaders +FS=`stat -c %s %{_sysconfdir}/gtk-%{libver}/gtk.immodules 2>/dev/null` +[ "$FS" == "0" -o ! "$FS" ] && \ + %{_bindir}/gtk-query-immodules-%{libver} > %{_sysconfdir}/gtk-%{libver}/gtk.immodules +exit 0 + +%files -f gtk30.lang +%defattr(-,root,root) +%dir %{_sysconfdir}/gtk-%{libver} +%config(noreplace) %{_sysconfdir}/gtk-%{libver}/im-multipress.conf +%{_bindir}/gtk-launch +#sysconfdir}/X11/xinit/xinput.d/im-cedilla.conf +%{_bindir}/gtk-query-immodules-%{libver} +#%{_bindir}/gtk-update-icon-cache-%{libver} +%{_libdir}/libgailutil-*.so.* +%{_libdir}/libgdk-*.so.* +%{_libdir}/libgtk-*.so.* +%dir %{_libdir}/gtk-%{libver} +%dir %{_libdir}/gtk-%{libver}/%{binver} +%ghost %{_libdir}/gtk-%{libver}/%{binver}/immodules.cache +%dir %{_libdir}/gtk-%{libver}/%{binver}/immodules +%{_libdir}/gtk-%{libver}/%{binver}/immodules/im-*.la +%{_libdir}/gtk-%{libver}/%{binver}/immodules/im-*.so +#%dir %{_libdir}/gtk-%{libver}/modules +#%{_libdir}/gtk-%{libver}/modules/libferret.la +#%{_libdir}/gtk-%{libver}/modules/libferret.so +#%{_libdir}/gtk-%{libver}/modules/libgail.la +#%{_libdir}/gtk-%{libver}/modules/libgail.so +%dir %{_libdir}/gtk-%{libver}/%{binver}/printbackends +%{_libdir}/gtk-%{libver}/%{binver}/printbackends/libprintbackend-*.la +%{_libdir}/gtk-%{libver}/%{binver}/printbackends/libprintbackend-*.so +%{_libdir}/girepository-1.0/Gdk-%{libver}.typelib +%{_libdir}/girepository-1.0/GdkX11-%{libver}.typelib +%{_libdir}/girepository-1.0/Gtk-%{libver}.typelib +%dir %{_datadir}/themes/Default/gtk-%{libver} +%{_datadir}/themes/Default/gtk-%{libver}/* +%dir %{_datadir}/themes/Emacs/gtk-%{libver} +%{_datadir}/themes/Emacs/gtk-%{libver}/* +#%dir %{_datadir}/themes/Raleigh/gtk-%{libver} +#%{_datadir}/themes/Raleigh/gtk-%{libver}/* +%{_datadir}/glib-2.0/schemas/org.gtk.Settings.ColorChooser.gschema.xml +%{_datadir}/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml +%{_datadir}/glib-2.0/schemas/org.gtk.exampleapp.gschema.xml +%{_mandir}/man1/broadwayd.1* +%{_mandir}/man1/gtk-query-immodules-%{libver}.1* +%{_mandir}/man1/gtk-launch.1* +%doc AUTHORS COPYING + +%files devel -f gtk30-properties.lang +%defattr(-,root,root) +%{_bindir}/gtk3-demo +%{_bindir}/gtk3-demo-application +%{_bindir}/gtk3-widget-factory +#%{_bindir}/gtk-builder-convert-%{libver} +#%dir %{_includedir}/gail-%{libver}/gail +#%{_includedir}/gail-%{libver}/gail/*.h +%dir %{_includedir}/gail-%{libver}/libgail-util +%{_includedir}/gail-%{libver}/libgail-util/*.h +%dir %{_includedir}/gtk-%{libver} +%dir %{_includedir}/gtk-%{libver}/gtk +%dir %{_includedir}/gtk-%{libver}/gtk/a11y +%{_includedir}/gtk-%{libver}/gtk/a11y/*.h +%dir %{_includedir}/gtk-%{libver}/gdk +%{_includedir}/gtk-%{libver}/gdk/*.h +%dir %{_includedir}/gtk-%{libver}/gtk +%{_includedir}/gtk-%{libver}/gtk/*.h +%dir %{_includedir}/gtk-%{libver}/gtk/deprecated +%{_includedir}/gtk-%{libver}/gtk/deprecated/*.h +%dir %{_includedir}/gtk-%{libver}/unix-print +%dir %{_includedir}/gtk-%{libver}/unix-print/gtk +%{_includedir}/gtk-%{libver}/unix-print/gtk/*.h +%dir %{_includedir}/gtk-%{libver}/gdk/x11 +%{_includedir}/gtk-%{libver}/gdk/x11/*.h +%{_libdir}/libgailutil-*.la +%{_libdir}/libgailutil-*.so +%{_libdir}/libgdk-*.la +%{_libdir}/libgdk-*.so +%{_libdir}/libgtk-*.la +%{_libdir}/libgtk-*.so +%{_datadir}/aclocal/gtk-%{libver}.m4 +%{_datadir}/gir-1.0/Gdk-%{libver}.gir +%{_datadir}/gir-1.0/GdkX11-%{libver}.gir +%{_datadir}/gir-1.0/Gtk-%{libver}.gir +%{_datadir}/glib-2.0/schemas/org.gtk.Demo.gschema.xml +%{_datadir}/gtk-3.0/gtkbuilder.rng +%{_datadir}/icons/hicolor/*/apps/gtk3-demo.png +%{_datadir}/icons/hicolor/*/apps/gtk3-widget-factory.png +%{_datadir}/applications/gtk3-demo.desktop +%{_datadir}/applications/gtk3-widget-factory.desktop +%{_libdir}/pkgconfig/gail-%{libver}.pc +%{_libdir}/pkgconfig/gdk-%{libver}.pc +%{_libdir}/pkgconfig/gdk-x11-%{libver}.pc +%{_libdir}/pkgconfig/gtk+-%{libver}.pc +%{_libdir}/pkgconfig/gtk+-unix-print-%{libver}.pc +%{_libdir}/pkgconfig/gtk+-x11-%{libver}.pc +%doc ChangeLog HACKING NEWS README + +%files apidocs +%defattr(-,root,root) +%dir %{_datadir}/gtk-doc/html/gail-libgail-util3 +%{_datadir}/gtk-doc/html/gail-libgail-util3/* +%dir %{_datadir}/gtk-doc/html/gdk3 +%{_datadir}/gtk-doc/html/gdk3/* +%dir %{_datadir}/gtk-doc/html/gtk3 +%{_datadir}/gtk-doc/html/gtk3/* + +%changelog +* Sat Apr 12 2014 Automatic Build System 3.12.1-1mamba +- automatic version update by autodist + +* Tue Apr 01 2014 Automatic Build System 3.12.0-1mamba +- automatic version update by autodist + +* Tue Jan 28 2014 Automatic Build System 3.10.7-1mamba +- automatic version update by autodist + +* Thu Dec 05 2013 Automatic Build System 3.10.6-1mamba +- automatic version update by autodist + +* Wed Nov 27 2013 Automatic Build System 3.10.5-1mamba +- automatic version update by autodist + +* Sat Nov 16 2013 Automatic Build System 3.10.4-1mamba +- automatic version update by autodist + +* Mon Nov 11 2013 Automatic Build System 3.10.3-1mamba +- automatic version update by autodist + +* Tue Oct 29 2013 Automatic Build System 3.10.2-1mamba +- automatic version update by autodist + +* Sat Aug 31 2013 Automatic Build System 3.8.4-1mamba +- automatic version update by autodist + +* Mon May 13 2013 Automatic Build System 3.8.2-1mamba +- automatic version update by autodist + +* Tue Apr 16 2013 Automatic Build System 3.8.1-1mamba +- automatic version update by autodist + +* Wed Mar 27 2013 Automatic Build System 3.8.0-1mamba +- automatic version update by autodist + +* Mon Jan 07 2013 Automatic Build System 3.6.4-1mamba +- automatic version update by autodist + +* Fri Jan 04 2013 Automatic Build System 3.6.3-1mamba +- automatic version update by autodist + +* Fri Dec 07 2012 Automatic Build System 3.6.2-1mamba +- automatic version update by autodist + +* Tue Oct 16 2012 Automatic Build System 3.6.1-1mamba +- automatic version update by autodist + +* Thu Sep 27 2012 Automatic Build System 3.6.0-1mamba +- automatic version update by autodist + +* Mon Aug 06 2012 Silvan Calarco 3.4.4-2mamba +- require shared-mime-info; if missing all images and more will be broken + +* Sun Jul 15 2012 Automatic Build System 3.4.4-1mamba +- automatic version update by autodist + +* Sat May 12 2012 Automatic Build System 3.4.3-1mamba +- automatic version update by autodist + +* Thu May 03 2012 Automatic Build System 3.4.2-1mamba +- automatic version update by autodist + +* Sat Apr 14 2012 Automatic Build System 3.4.1-1mamba +- automatic version update by autodist + +* Tue Apr 03 2012 Automatic Build System 3.4.0-1mamba +- automatic version update by autodist + +* Wed Nov 09 2011 Automatic Build System 3.3.2-1mamba +- automatic version update by autodist + +* Sat Oct 15 2011 Automatic Build System 3.2.1-1mamba +- automatic version update by autodist + +* Mon Oct 03 2011 Automatic Build System 3.2.0-1mamba +- automatic version update by autodist + +* Thu Jul 28 2011 Automatic Build System 3.0.12-1mamba +- automatic update by autodist + +* Mon Jul 25 2011 Silvan Calarco 3.0.11-2mamba +- rename dconf requirement into glib-dconf + +* Sun Jun 26 2011 Automatic Build System 3.0.11-1mamba +- update to 3.0.11 + +* Mon May 23 2011 Automatic Build System 3.0.10-1mamba +- automatic update by autodist + +* Sat Apr 16 2011 Automatic Build System 3.0.9-1mamba +- automatic update by autodist + +* Mon Apr 11 2011 Silvan Calarco 3.0.8-1mamba +- update to 3.0.8 +- renamed from libgtk3 to libgtk + +* Mon Mar 14 2011 Automatic Build System 3.0.2-1mamba +- automatic update by autodist + +* Fri Feb 25 2011 Automatic Build System 3.0.1-1mamba +- automatic update by autodist + +* Mon Feb 14 2011 gil 3.0.0-1mamba +- update to 3.0.0 + +* Sun Jan 30 2011 gil 2.99.2-1mamba +- update to 2.99.2 + +* Mon Dec 06 2010 gil 2.91.5-1mamba +- update to 2.91.5 +- rename libgtk3 + +* Mon Nov 15 2010 Automatic Build System 2.22.1-1mamba +- automatic update to 2.22.1 by autodist + +* Mon Oct 04 2010 Silvan Calarco 2.22.0-1mamba +- update to 2.22.0 + +* Fri Jul 02 2010 Silvan Calarco 2.20.1-5mamba +- rebuilt with libpng 1.4 + +* Fri Jun 25 2010 Automatic Build System 2.20.1-4mamba +- automatic rebuild by autodist + +* Fri Jun 18 2010 Silvan Calarco 2.20.1-3mamba +- fixed typo in posttrans script +- added PreReq for libglib + +* Sat May 22 2010 Silvan Calarco 2.20.1-2mamba +- added posttrans script to double check that modules files are not null + +* Mon May 03 2010 Automatic Build System 2.20.1-1mamba +- automatic update to 2.20.1 by autodist + +* Fri Apr 02 2010 Automatic Build System 2.20.0-1mamba +- automatic update to 2.20.0 by autodist + +* Wed Mar 17 2010 Automatic Build System 2.18.9-1mamba +- automatic update to 2.18.9 by autodist + +* Tue Mar 16 2010 Automatic Build System 2.18.8-1mamba +- automatic update to 2.18.8 by autodist + +* Sun Mar 14 2010 Automatic Build System 2.18.7-1mamba +- automatic update to 2.18.7 by autodist + +* Mon Feb 01 2010 Silvan Calarco 2.18.6-3mamba +- added (brutal) patch to fix crash with nautilus and lxpanel + +* Sat Jan 30 2010 Silvan Calarco 2.18.6-2mamba +- rebuilt with debug package + +* Tue Jan 12 2010 Automatic Build System 2.18.6-1mamba +- automatic update to 2.18.6 by autodist + +* Wed Dec 09 2009 Automatic Build System 2.18.5-1mamba +- automatic update to 2.18.5 by autodist + +* Tue Dec 01 2009 Automatic Build System 2.18.4-1mamba +- automatic update to 2.18.4 by autodist + +* Sat Oct 17 2009 Automatic Build System 2.18.3-1mamba +- automatic update to 2.18.3 by autodist + +* Tue Oct 06 2009 Automatic Build System 2.18.2-1mamba +- automatic update to 2.18.2 by autodist + +* Thu Oct 01 2009 Automatic Build System 2.18.1-1mamba +- automatic update to 2.18.1 by autodist + +* Sun Sep 27 2009 Automatic Build System 2.18.0-1mamba +- automatic update to 2.18.0 by autodist + +* Fri Sep 11 2009 Automatic Build System 2.16.6-1mamba +- automatic update to 2.16.6 by autodist + +* Sat Jul 18 2009 Automatic Build System 2.16.5-1mamba +- automatic update to 2.16.5 by autodist + +* Mon Jul 06 2009 Silvan Calarco 2.16.4-3mamba +- added better patch to prevent loss of events (e.g. cut/paste) + +* Thu Jul 02 2009 Silvan Calarco 2.16.4-2mamba +- added gdk_x11_atom_to_xatom_for_display_tra patch (http://bugzilla.gnome.org/show_bug.cgi?id=580511) + +* Thu Jul 02 2009 Automatic Build System 2.16.4-1mamba +- automatic update to 2.16.4 by autodist + +* Sun Jun 28 2009 Automatic Build System 2.16.3-1mamba +- automatic update to 2.16.3 by autodist + +* Sun Jun 07 2009 Automatic Build System 2.16.2-1mamba +- automatic update to 2.16.2 by autodist + +* Wed May 20 2009 Automatic Build System 2.16.1-2mamba +- automatic rebuild by autodist + +* Sun Apr 12 2009 Silvan Calarco 2.16.1-1mamba +- automatic update to 2.16.1 by autodist + +* Thu Mar 19 2009 Silvan Calarco 2.16.0-1mamba +- automatic update to 2.16.0 by autodist + +* Thu Jan 08 2009 Silvan Calarco 2.14.7-1mamba +- automatic update to 2.14.7 by autodist + +* Tue Dec 16 2008 Silvan Calarco 2.14.6-1mamba +- automatic update to 2.14.6 by autodist + +* Tue Nov 25 2008 Silvan Calarco 2.14.5-1mamba +- automatic update to 2.14.5 by autodist + +* Fri Nov 14 2008 Silvan Calarco 2.14.4-2mamba +- libgtk-devel: added requirement for libcairo-devel + +* Sat Oct 18 2008 Silvan Calarco 2.14.4-1mamba +- automatic update to 2.14.4 by autodist + +* Fri Sep 26 2008 Silvan Calarco 2.14.3-1mamba +- automatic update to 2.14.3 by autodist + +* Fri Sep 19 2008 Silvan Calarco 2.14.2-1mamba +- automatic update to 2.14.2 by autodist + +* Fri Jul 04 2008 gil 2.12.11-1mamba +- update to 2.12.11 +- build with: glib-2.16.4-1mamba + +* Thu Mar 13 2008 Silvan Calarco 2.12.9-1mamba +- update to 2.12.9 + +* Sat Dec 01 2007 Silvan Calarco 2.12.2-1mamba +- update to 2.12.2 +- fix %%{includedir}/gtk related entries in devel files list + +* Thu Sep 27 2007 Silvan Calarco 2.12.0-2mamba +- added workaround for flash plugin crash in konqueror and opera + +* Wed Sep 26 2007 Silvan Calarco 2.12.0-1mamba +- update to 2.12.0 + +* Mon Mar 26 2007 Davide Madrisan 2.10.11-1qilnx +- update to version 2.10.11 by autospec + +* Tue Jan 23 2007 Davide Madrisan 2.10.9-1qilnx +- update to version 2.10.9 by autospec + +* Fri Jan 05 2007 Davide Madrisan 2.10.6-2qilnx +- new package for API documentation + +* Thu Jan 04 2007 Davide Madrisan 2.10.6-1qilnx +- update to version 2.10.6 by autospec +- updated Xorg build requirements +- added build requirement for cups + +* Tue Jul 04 2006 Davide Madrisan 2.8.17-4qilnx +- create gdk-pixbuf.loaders and gtk.immodules during package upgrade + +* Thu May 25 2006 Silvan Calarco 2.8.17-3qilnx +- make symlink /usr/include/gtk point to /usr/include/gtk-2.0 simply + +* Wed May 24 2006 Silvan Calarco 2.8.17-2qilnx +- add /usr/include/gtk symlink pointing to /usr/include/gtk-2.0/gtk + +* Thu Apr 27 2006 Davide Madrisan 2.8.17-1qilnx +- update to version 2.8.17 by autospec + +* Sun Mar 19 2006 Silvan Calarco 2.8.16-1qilnx +- update to version 2.8.16 by autospec +- added libgtk2 and gtk2 provides for compatibility with other distributions + +* Mon Mar 13 2006 Davide Madrisan 2.8.14-1qilnx +- update to version 2.8.14 by autospec + +* Tue Nov 29 2005 Davide Madrisan 2.8.8-1qilnx +- update to version 2.8.8 by autospec + +* Mon Nov 21 2005 Davide Madrisan 2.8.7-1qilnx +- update to version 2.8.7 by autospec + +* Fri Oct 28 2005 Davide Madrisan 2.8.6-2qilnx +- %{_bindir}/gdk-pixbuf-csource executable moved to devel package +- %{_libdir}/gtk-2.0/include moved to devel package +- gtk documentation moved to devel package +- man pages moved to devel package +- use %%find_lang + +* Tue Oct 04 2005 Davide Madrisan 2.8.6-1qilnx +- update to version 2.8.6 by autospec + +* Wed Sep 28 2005 Davide Madrisan 2.8.4-1qilnx +- update to version 2.8.4 by autospec + +* Wed Sep 14 2005 Alessandro Ramazzina 2.8.3-1qilnx +- update to version 2.8.3 by autospec + +* Wed Aug 10 2005 Davide Madrisan 2.6.9-1qilnx +- update to version 2.6.9 by autospec + +* Fri Jun 17 2005 Davide Madrisan 2.6.8-1qilnx +- update to version 2.6.8 by autospec + +* Thu Apr 14 2005 Davide Madrisan 2.6.7-1qilnx +- update to version 2.6.7 by autospec + +* Tue Apr 12 2005 Davide Madrisan 2.6.6-1qilnx +- update to version 2.6.6 by autospec + +* Tue Apr 12 2005 Davide Madrisan 2.6.0-2qilnx +- fix security issue QSA-2005-040 (CAN-2005-0891) +- specfile updates +- added missing build requirements + +* Mon Dec 20 2004 Silvan Calarco 2.6.0-1qilnx +- update to version 2.6.0 by autospec + +* Tue Jul 13 2004 Silvan Calarco 2.4.4-1qilnx +- new version build + +* Mon Jun 28 2004 Silvan Calarco 2.4.3-3qilnx +- added missing %%defattr for devel package + +* Tue Jun 22 2004 Silvan Calarco 2.4.3-2qilnx +- added creation of gtk.immodules on %%post and %%postun scripts + +* Tue Jun 22 2004 Silvan Calarco 2.4.3-1qilnx +- new version build + +* Fri Nov 21 2003 Silvan Calarco 2.2.4-3qilnx +- moved /usr/share/gtk-2.0/demo files from devel to main package + +* Mon Nov 03 2003 Silvan Calarco 2.2.4-2qilnx +- removed XFree-pkgconfig dependancy now that libfontconfig is stand-alone + +* Mon Oct 27 2003 Silvan Calarco 2.2.4-1qilnx +- new version rebuild + +* Fri Jun 13 2003 Silvan Calarco 2.2.1-2qilnx +- added devel package requirements +- added gdk-pixbuf.loaders automatic creation + +* Fri Jun 13 2003 Silvan Calarco 2.2.1-1qilnx +- creation of gtk package diff --git a/libgtk3-fix-gtk-show-uri-crash.patch b/libgtk3-fix-gtk-show-uri-crash.patch new file mode 100644 index 0000000..928e268 --- /dev/null +++ b/libgtk3-fix-gtk-show-uri-crash.patch @@ -0,0 +1,33 @@ +From 7e29fc5b421a049c2b88453232eddeefed9f1b7b Mon Sep 17 00:00:00 2001 +From: Cosimo Cecchi +Date: Thu, 13 Jan 2011 15:03:49 +0000 +Subject: gtkshow: don't call _get_display() on a NULL GdkScreen + +gtk_show_uri() is documented to accept a NULL screen to mean the default +one. Calling gdk_screen_get_display() on a NULL object will cause +segfaults. +--- +diff --git a/gtk/gtkshow.c b/gtk/gtkshow.c +index ac3d1ac..ad396a2 100644 +--- a/gtk/gtkshow.c ++++ b/gtk/gtkshow.c +@@ -63,10 +63,16 @@ gtk_show_uri (GdkScreen *screen, + { + GdkAppLaunchContext *context; + gboolean ret; ++ GdkDisplay *display; + + g_return_val_if_fail (uri != NULL, FALSE); + +- context = gdk_display_get_app_launch_context (gdk_screen_get_display (screen)); ++ if (screen != NULL) ++ display = gdk_screen_get_display (screen); ++ else ++ display = gdk_display_get_default (); ++ ++ context = gdk_display_get_app_launch_context (display); + gdk_app_launch_context_set_screen (context, screen); + gdk_app_launch_context_set_timestamp (context, timestamp); + +-- +cgit v0.8.3.1