diff --git a/gnome-desktop.spec b/gnome-desktop.spec index 14d2642..7a94ad1 100644 --- a/gnome-desktop.spec +++ b/gnome-desktop.spec @@ -11,11 +11,13 @@ Summary: Shared code among gnome-panel, gnome-session, nautilus, etc Name: gnome-desktop -Version: 2.28.0 -Release: 1%{?dist} +Version: 2.28.1 +Release: 2%{?dist} URL: http://www.gnome.org Source0: http://download.gnome.org/sources/gnome-desktop/2.28/%{name}-%{version}.tar.bz2 Patch1: concatenate-edid-descriptors.patch +# https://bugzilla.gnome.org/show_bug.cgi?id=597874 +Patch2: randr-gamma.patch License: GPLv2+ and LGPLv2+ Group: System Environment/Libraries @@ -75,6 +77,7 @@ libgnomedesktop. %prep %setup -q %patch1 -p1 -b .concatenate-edid-descriptors +%patch2 -p1 -b .randr-gamma %build %configure --with-gnome-distributor="Red Hat, Inc" \ @@ -122,6 +125,12 @@ rm -rf $RPM_BUILD_ROOT %doc %{_datadir}/gtk-doc/html/gnome-desktop/ %changelog +* Thu Oct 22 2009 Matthias Clasen - 2.28.1-2 +- Support proper gamma setting in multihead setups + +* Thu Oct 22 2009 Matthias Clasen - 2.28.1-1 +- Update to 2.28.1, translation updates + * Mon Sep 21 2009 Matthias Clasen - 2.28.0-1 - Update to 2.28.0 diff --git a/pnpids.patch b/pnpids.patch deleted file mode 100644 index 3f35365..0000000 --- a/pnpids.patch +++ /dev/null @@ -1,62 +0,0 @@ ---- gnome-desktop-2.26.1/libgnome-desktop/display-name.c 2009-05-06 16:19:08.498375080 -0400 -+++ hacked/libgnome-desktop/display-name.c 2009-05-06 16:17:08.483375623 -0400 -@@ -182,15 +182,58 @@ - { "???", "Unknown" }, - }; - -+static GHashTable *hwdata = NULL; -+ -+#define PNP_IDS "/usr/share/hwdata/pnp.ids" -+ -+static void -+read_hwdata (void) -+{ -+ gchar *contents; -+ gchar **lines; -+ gchar *line; -+ gchar *code, *name; -+ gint i; -+ -+ if (hwdata) -+ return; -+ -+ hwdata = g_hash_table_new (g_str_hash, g_str_equal); -+ -+ if (g_file_get_contents (PNP_IDS, &contents, NULL, NULL)) { -+ lines = g_strsplit (contents, "\n", -1); -+ for (i = 0; lines[i]; i++) { -+ line = lines[i]; -+ if (line[3] == '\t') { -+ code = line; -+ line[3] = '\0'; -+ name = line + 4; -+ g_hash_table_insert (hwdata, code, name); -+ } -+ } -+ g_free (lines); -+ } -+ g_free (contents); -+} -+ -+ - static const char * - find_vendor (const char *code) - { - int i; -+ const char *vendor_name; -+ -+ read_hwdata (); -+ -+ vendor_name = g_hash_table_lookup (hwdata, code); -+ -+ if (vendor_name) -+ return vendor_name; - - for (i = 0; i < sizeof (vendors) / sizeof (vendors[0]); ++i) - { - const Vendor *v = &(vendors[i]); -- -+ - if (strcmp (v->vendor_id, code) == 0) - return v->vendor_name; - } diff --git a/slideshow-api.patch b/slideshow-api.patch deleted file mode 100644 index 7e9db17..0000000 --- a/slideshow-api.patch +++ /dev/null @@ -1,147 +0,0 @@ -diff -up gnome-desktop-2.27.5/libgnome-desktop/gnome-bg.c.slideshow-api gnome-desktop-2.27.5/libgnome-desktop/gnome-bg.c ---- gnome-desktop-2.27.5/libgnome-desktop/gnome-bg.c.slideshow-api 2009-04-26 18:40:20.000000000 -0400 -+++ gnome-desktop-2.27.5/libgnome-desktop/gnome-bg.c 2009-08-13 01:14:41.403741426 -0400 -@@ -177,7 +177,8 @@ static GdkPixbuf *create_img_thumbnail ( - GnomeDesktopThumbnailFactory *factory, - GdkScreen *screen, - int dest_width, -- int dest_height); -+ int dest_height, -+ int frame_num); - static SlideShow * get_as_slideshow (GnomeBG *bg, - const char *filename); - static Slide * get_current_slide (SlideShow *show, -@@ -1055,7 +1056,7 @@ fit_factor (int from_width, int from_hei - - GdkPixbuf * - gnome_bg_create_thumbnail (GnomeBG *bg, -- GnomeDesktopThumbnailFactory *factory, -+ GnomeDesktopThumbnailFactory *factory, - GdkScreen *screen, - int dest_width, - int dest_height) -@@ -1069,7 +1070,7 @@ gnome_bg_create_thumbnail (GnomeBG - - draw_color (bg, result); - -- thumb = create_img_thumbnail (bg, factory, screen, dest_width, dest_height); -+ thumb = create_img_thumbnail (bg, factory, screen, dest_width, dest_height, -1); - - if (thumb) { - draw_image (bg->placement, thumb, result); -@@ -1752,7 +1753,8 @@ create_img_thumbnail (GnomeBG - GnomeDesktopThumbnailFactory *factory, - GdkScreen *screen, - int dest_width, -- int dest_height) -+ int dest_height, -+ int frame_num) - { - if (bg->filename) { - GdkPixbuf *thumb = get_as_thumbnail (bg, factory, bg->filename); -@@ -1771,7 +1773,10 @@ create_img_thumbnail (GnomeBG - - slideshow_ref (show); - -- slide = get_current_slide (show, &alpha); -+ if (frame_num == -1) -+ slide = get_current_slide (show, &alpha); -+ else -+ slide = g_queue_peek_nth (show->slides, frame_num); - - if (slide->fixed) { - GdkPixbuf *tmp; -@@ -2636,3 +2641,75 @@ slideshow_changes_with_size (SlideShow * - return show->changes_with_size; - } - -+gboolean -+gnome_bg_changes_with_time (GnomeBG *bg) -+{ -+ SlideShow *show; -+ -+ g_return_val_if_fail (bg != NULL, FALSE); -+ -+ show = get_as_slideshow (bg, bg->filename); -+ if (show) -+ return g_queue_get_length (show->slides) > 1; -+ -+ return FALSE; -+} -+ -+/* frame_num is only counting static frames here, -+ * we are skipping transitions -+ * returns NULL if frame_num is out of bounds -+ */ -+GdkPixbuf * -+gnome_bg_create_frame_thumbnail (GnomeBG *bg, -+ GnomeDesktopThumbnailFactory *factory, -+ GdkScreen *screen, -+ int dest_width, -+ int dest_height, -+ int frame_num) -+{ -+ SlideShow *show; -+ GdkPixbuf *result; -+ GdkPixbuf *thumb; -+ GList *l; -+ int i, skipped; -+ gboolean found; -+ -+ g_return_val_if_fail (bg != NULL, FALSE); -+ -+ show = get_as_slideshow (bg, bg->filename); -+ -+ if (!show) -+ return NULL; -+ -+ i = 0; -+ skipped = 0; -+ found = FALSE; -+ for (l = show->slides->head; l; l = l->next) { -+ Slide *slide = l->data; -+ if (!slide->fixed) { -+ skipped++; -+ continue; -+ } -+ if (i == frame_num) { -+ found = TRUE; -+ break; -+ } -+ i++; -+ } -+ if (!found) -+ return NULL; -+ -+ result = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, dest_width, dest_height); -+ -+ draw_color (bg, result); -+ -+ thumb = create_img_thumbnail (bg, factory, screen, dest_width, dest_height, frame_num + skipped); -+ -+ if (thumb) { -+ draw_image (bg->placement, thumb, result); -+ g_object_unref (thumb); -+ } -+ -+ return result; -+} -+ -diff -up gnome-desktop-2.27.5/libgnome-desktop/libgnomeui/gnome-bg.h.slideshow-api gnome-desktop-2.27.5/libgnome-desktop/libgnomeui/gnome-bg.h ---- gnome-desktop-2.27.5/libgnome-desktop/libgnomeui/gnome-bg.h.slideshow-api 2009-04-19 13:39:06.000000000 -0400 -+++ gnome-desktop-2.27.5/libgnome-desktop/libgnomeui/gnome-bg.h 2009-08-12 23:09:11.297992749 -0400 -@@ -104,7 +104,13 @@ GdkPixbuf * gnome_bg_create_thumbna - int dest_height); - gboolean gnome_bg_is_dark (GnomeBG *bg); - gboolean gnome_bg_changes_with_size (GnomeBG *bg); -- -+gboolean gnome_bg_changes_with_time (GnomeBG *bg); -+GdkPixbuf * gnome_bg_create_frame_thumbnail (GnomeBG *bg, -+ GnomeDesktopThumbnailFactory *factory, -+ GdkScreen *screen, -+ int dest_width, -+ int dest_height, -+ int frame_num); - - /* Set a pixmap as root - not a GnomeBG method. At some point - * if we decide to stabilize the API then we may want to make diff --git a/sources b/sources index c812a5b..d98884b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -73927d3c43d783f5d7d6cdbb4359d7d6 gnome-desktop-2.28.0.tar.bz2 +6870b71b564dc902af65ddee176e603f gnome-desktop-2.28.1.tar.bz2