Accepting request 356555 from GNOME:Factory
1 OBS-URL: https://build.opensuse.org/request/show/356555 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gtk3?expand=0&rev=88
This commit is contained in:
commit
56ab0ba7fd
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:78cabf0fd5a662f8723f62d5ac633072c76c557c1d700454c9c3deaa37e441ef
|
|
||||||
size 18990472
|
|
3
gtk+-3.18.7.tar.xz
Normal file
3
gtk+-3.18.7.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:a76e1cb0ac45ce5c2734f6778f2731a5c6a23d1ff6bd4db357774f014ee68820
|
||||||
|
size 16815772
|
@ -1,91 +0,0 @@
|
|||||||
From 2cbc2972ea58ec9dae5481fc4930f0cd13f21da9 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Lars Uebernickel <lars.uebernickel@canonical.com>
|
|
||||||
Date: Wed, 9 Dec 2015 17:48:26 +0100
|
|
||||||
Subject: gdk_pixbuf_get_from_surface: restore old behavior
|
|
||||||
|
|
||||||
A previous commit changed this function to return a pixbuf that is
|
|
||||||
larger than the passed (width, height) when the surface has a device
|
|
||||||
scale > 1. It's easy enough to take care of a scaled surface before
|
|
||||||
calling this function.
|
|
||||||
|
|
||||||
Revert to the old behaviour, but change gdk_pixbuf_get_from_window() to
|
|
||||||
return a scaled version when the underlying surface is scaled. We need
|
|
||||||
this because there's no other way to get to the unscaled window
|
|
||||||
contents.
|
|
||||||
|
|
||||||
https://bugzilla.gnome.org/show_bug.cgi?id=757147
|
|
||||||
---
|
|
||||||
gdk/gdkpixbuf-drawable.c | 31 +++++++++++++++++++++----------
|
|
||||||
1 file changed, 21 insertions(+), 10 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/gdk/gdkpixbuf-drawable.c b/gdk/gdkpixbuf-drawable.c
|
|
||||||
index 0647e3c..bae643a 100644
|
|
||||||
--- a/gdk/gdkpixbuf-drawable.c
|
|
||||||
+++ b/gdk/gdkpixbuf-drawable.c
|
|
||||||
@@ -56,8 +56,9 @@
|
|
||||||
* This allows you to efficiently read individual pixels on the client side.
|
|
||||||
*
|
|
||||||
* This function will create an RGB pixbuf with 8 bits per channel with
|
|
||||||
- * the same size specified by the @width and @height arguments. The pixbuf
|
|
||||||
- * will contain an alpha channel if the @window contains one.
|
|
||||||
+ * the size specified by the @width and @height arguments scaled by the
|
|
||||||
+ * scale factor of @window. The pixbuf will contain an alpha channel if
|
|
||||||
+ * the @window contains one.
|
|
||||||
*
|
|
||||||
* If the window is off the screen, then there is no image data in the
|
|
||||||
* obscured/offscreen regions to be placed in the pixbuf. The contents of
|
|
||||||
@@ -87,6 +88,8 @@ gdk_pixbuf_get_from_window (GdkWindow *src,
|
|
||||||
gint height)
|
|
||||||
{
|
|
||||||
cairo_surface_t *surface;
|
|
||||||
+ cairo_surface_t *copy;
|
|
||||||
+ cairo_t *cr;
|
|
||||||
GdkPixbuf *dest;
|
|
||||||
gint scale;
|
|
||||||
|
|
||||||
@@ -104,9 +107,22 @@ gdk_pixbuf_get_from_window (GdkWindow *src,
|
|
||||||
*/
|
|
||||||
cairo_surface_mark_dirty (surface);
|
|
||||||
|
|
||||||
- dest = gdk_pixbuf_get_from_surface (surface,
|
|
||||||
- scale * src_x, scale * src_y,
|
|
||||||
- scale * width, scale * height);
|
|
||||||
+ if (cairo_surface_get_content (surface) & CAIRO_CONTENT_ALPHA)
|
|
||||||
+ copy = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, width * scale, height * scale);
|
|
||||||
+ else
|
|
||||||
+ copy = cairo_image_surface_create (CAIRO_FORMAT_RGB24, width * scale, height * scale);
|
|
||||||
+
|
|
||||||
+ cairo_surface_set_device_scale (copy, scale, scale);
|
|
||||||
+
|
|
||||||
+ cr = cairo_create (copy);
|
|
||||||
+ cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
|
|
||||||
+ cairo_set_source_surface (cr, surface, -src_x, -src_y);
|
|
||||||
+ cairo_paint (cr);
|
|
||||||
+ cairo_destroy (cr);
|
|
||||||
+
|
|
||||||
+ dest = gdk_pixbuf_get_from_surface (copy, 0, 0, width * scale, height * scale);
|
|
||||||
+
|
|
||||||
+ cairo_surface_destroy (copy);
|
|
||||||
cairo_surface_destroy (surface);
|
|
||||||
|
|
||||||
return dest;
|
|
||||||
@@ -137,16 +153,11 @@ gdk_cairo_surface_coerce_to_image (cairo_surface_t *surface,
|
|
||||||
{
|
|
||||||
cairo_surface_t *copy;
|
|
||||||
cairo_t *cr;
|
|
||||||
- double sx, sy;
|
|
||||||
-
|
|
||||||
- cairo_surface_get_device_scale (surface, &sx, &sy);
|
|
||||||
|
|
||||||
copy = cairo_image_surface_create (gdk_cairo_format_for_content (content),
|
|
||||||
width,
|
|
||||||
height);
|
|
||||||
|
|
||||||
- cairo_surface_set_device_scale (copy, sx, sy);
|
|
||||||
-
|
|
||||||
cr = cairo_create (copy);
|
|
||||||
cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
|
|
||||||
cairo_set_source_surface (cr, surface, -src_x, -src_y);
|
|
||||||
--
|
|
||||||
cgit v0.11.2
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
|||||||
Index: gtk+-3.18.6/gdk/x11/gdkdevicemanager-xi2.c
|
|
||||||
===================================================================
|
|
||||||
--- gtk+-3.18.6.orig/gdk/x11/gdkdevicemanager-xi2.c
|
|
||||||
+++ gtk+-3.18.6/gdk/x11/gdkdevicemanager-xi2.c
|
|
||||||
@@ -428,6 +428,7 @@ create_device (GdkDeviceManager *device_
|
|
||||||
input_source = GDK_SOURCE_PEN;
|
|
||||||
else if (!strstr (tmp_name, "mouse") &&
|
|
||||||
!strstr (tmp_name, "pointer") &&
|
|
||||||
+ !strstr (tmp_name, "qemu usb tablet") &&
|
|
||||||
has_abs_axes (display, dev->classes, dev->num_classes))
|
|
||||||
input_source = GDK_SOURCE_TOUCHSCREEN;
|
|
||||||
else
|
|
13
gtk3.changes
13
gtk3.changes
@ -1,3 +1,16 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jan 28 12:25:00 UTC 2016 - zaitor@opensuse.org
|
||||||
|
|
||||||
|
- Update to version 3.18.7:
|
||||||
|
+ Bugs fixed: bgo#688524, bgo#722937, bgo#728344, bgo#754868,
|
||||||
|
bgo#757147, bgo#758908, bgo#758929, bgo#759079, bgo#759081,
|
||||||
|
bgo#759091, bgo#759260, bgo#759757, bgo#760141, bgo#760169,
|
||||||
|
bgo#760416, bgo#760445, bgo#760615, bgo#760680, bgo#760891,
|
||||||
|
bgo#760897, bgo#760964, bgo#761005, bgo#761095.
|
||||||
|
+ Updated translations.
|
||||||
|
- Drop gtk3-qemu-usb-tablet-is-no-real-touchscreen.patch and
|
||||||
|
gtk3-gdk_pixbuf_get_from_surface.patch: Fixed upstream.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Jan 11 10:24:48 UTC 2016 - dimstar@opensuse.org
|
Mon Jan 11 10:24:48 UTC 2016 - dimstar@opensuse.org
|
||||||
|
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
|
|
||||||
Name: gtk3
|
Name: gtk3
|
||||||
%define _name gtk+
|
%define _name gtk+
|
||||||
Version: 3.18.6
|
Version: 3.18.7
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: The GTK+ toolkit library (version 3)
|
Summary: The GTK+ toolkit library (version 3)
|
||||||
License: LGPL-2.1+
|
License: LGPL-2.1+
|
||||||
@ -47,10 +47,6 @@ Patch1: gtk3-path-local.patch
|
|||||||
## PATCH-DISABLED gtk3-bnc130159-bgo319483-async-font-selection.patch - Upstream bug was closed as obsolete in 2011, lets see if anyone complains.
|
## PATCH-DISABLED gtk3-bnc130159-bgo319483-async-font-selection.patch - Upstream bug was closed as obsolete in 2011, lets see if anyone complains.
|
||||||
# PATCH-FIX-UPSTREAM gtk3-bnc130159-bgo319483-async-font-selection.patch bnc130159 bgo319483 federico@novell.com - Load fonts asynchronously in GtkFontSelection to make it appear faster for CJK languages
|
# PATCH-FIX-UPSTREAM gtk3-bnc130159-bgo319483-async-font-selection.patch bnc130159 bgo319483 federico@novell.com - Load fonts asynchronously in GtkFontSelection to make it appear faster for CJK languages
|
||||||
Patch3: gtk3-bnc130159-bgo319483-async-font-selection.patch
|
Patch3: gtk3-bnc130159-bgo319483-async-font-selection.patch
|
||||||
# PATCH-FIX-UPSTREAM gtk3-gdk_pixbuf_get_from_surface.patch bgo#757147 zaitor@opensuse.org -- Restore old behavior to return a scaled version when the underlying surface is scaled. From upstream git.
|
|
||||||
Patch4: gtk3-gdk_pixbuf_get_from_surface.patch
|
|
||||||
# PATCH-FIX-UPSTREAM gtk3-qemu-usb-tablet-is-no-real-touchscreen.patch bgo#760445 dimstar@opensuse.org -- The QEMU USB Tablet device is no real touchscreen; fixes issues in openQA where ctrl-alt-del was not accepted
|
|
||||||
Patch5: gtk3-qemu-usb-tablet-is-no-real-touchscreen.patch
|
|
||||||
BuildRequires: cups-devel >= 1.2
|
BuildRequires: cups-devel >= 1.2
|
||||||
BuildRequires: docbook-xsl-stylesheets
|
BuildRequires: docbook-xsl-stylesheets
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
@ -342,8 +338,6 @@ cp -a %{S:1} .
|
|||||||
%patch1 -p0
|
%patch1 -p0
|
||||||
## PATCH-DISABLED - Upstream bug was closed as obsolete in 2011, as there was a new fontchooser, lets disable the patch and see if anyone complains.
|
## PATCH-DISABLED - Upstream bug was closed as obsolete in 2011, as there was a new fontchooser, lets disable the patch and see if anyone complains.
|
||||||
#%%patch3 -p1
|
#%%patch3 -p1
|
||||||
%patch4 -p1
|
|
||||||
%patch5 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
# Needed for patch1
|
# Needed for patch1
|
||||||
|
Loading…
Reference in New Issue
Block a user