fix text rendering on the effects tab

This commit is contained in:
Matthias Clasen 2010-03-19 19:50:11 +00:00
parent 6d5cda13fd
commit 4b7c0408c4
2 changed files with 42 additions and 1 deletions

35
cheese-effects-i18n.patch Normal file
View File

@ -0,0 +1,35 @@
diff --git a/src/cheese-effect-chooser.c b/src/cheese-effect-chooser.c
index 8716117..61aeacb 100644
--- a/src/cheese-effect-chooser.c
+++ b/src/cheese-effect-chooser.c
@@ -178,18 +178,20 @@ cheese_cairo_draw_card (cairo_t *cr, const GstEffect *card, gboolean highlight)
if (card->is_black)
cairo_set_source_rgb (cr, 1, 1, 1);
- double x, y;
- cairo_select_font_face (cr, "Sans",
- CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL);
-
- cairo_set_font_size (cr, 0.09);
+ PangoLayout *layout = pango_cairo_create_layout (cr);
gchar *name = gettext (card->name);
- cairo_text_extents (cr, name, &extents);
- x = 0.5 - (extents.width / 2 + extents.x_bearing);
- y = 0.92 - (extents.height / 2 + extents.y_bearing);
-
+ pango_layout_set_text (layout, name, -1);
+ PangoFontDescription *desc = pango_font_description_from_string ("Sans 0.09");
+ pango_layout_set_font_description (layout, desc);
+ pango_font_description_free (desc);
+ int width, height;
+ pango_layout_get_size (layout, &width, &height);
+ double x, y;
+ x = 0.5 - ((double)width / PANGO_SCALE) / 2;
+ y = 0.92 - ((double)height / PANGO_SCALE) / 2;
cairo_move_to (cr, x, y);
- cairo_show_text (cr, name);
+ pango_cairo_show_layout (cr, layout);
+ g_object_unref (layout);
if (highlight)
{

View File

@ -1,6 +1,6 @@
Name: cheese
Version: 2.29.92
Release: 2%{?dist}
Release: 3%{?dist}
Summary: Application for taking pictures and movies from a webcam
Group: Amusements/Graphics
@ -10,6 +10,8 @@ URL: http://projects.gnome.org/cheese/
Source0: http://download.gnome.org/sources/cheese/2.29/%{name}-%{version}.tar.bz2
# https://bugzilla.gnome.org/show_bug.cgi?id=613067
Patch0: no-webcam.patch
# https://bugzilla.gnome.org/show_bug.cgi?id=613287
Patch1: cheese-effects-i18n.patch
BuildRequires: gtk2-devel >= 2.19.1
BuildRequires: dbus-devel
@ -64,6 +66,7 @@ for writing applications that require a webcam display widget.
%prep
%setup -q
%patch0 -p1 -b .no-webcam
%patch1 -p1 -b .effects-i18n
%build
%configure --disable-static
@ -167,6 +170,9 @@ fi
%{_libdir}/pkgconfig/cheese-gtk.pc
%changelog
* Fri Mar 19 2010 Matthias Clasen <mclasen@redhat.com> 2.29.92-3
- Fix text rendering issues on the effects tab
* Tue Mar 16 2010 Matthias Clasen <mclasen@redhat.com> 2.29.92-2
- Use an existing icon