Bug#634679: sweep: Pointer artifacts persist on GTK ruler
Package: sweep
Version: 0.9.3-4
Severity: minor
Tags: patch
User: ubuntu-devel@lists.ubuntu.com
Usertags: origin-ubuntu oneiric ubuntu-patch
In Ubuntu, the attached patch was applied to achieve the following:
* Add patch from Philippe Gauthier that removes crufty code,
thereby resolving visual artifacts in the waveform area.
Thanks, Philippe! (LP: #800945)
Thanks for considering the patch.
-- System Information:
Debian Release: wheezy/sid
APT prefers oneiric-updates
APT policy: (500, 'oneiric-updates'), (500, 'oneiric-security'), (500, 'oneiric-proposed'), (500, 'oneiric')
Architecture: amd64 (x86_64)
Kernel: Linux 3.0.0-5-generic (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff -u sweep-0.9.3/debian/patches/series sweep-0.9.3/debian/patches/series
--- sweep-0.9.3/debian/patches/series
+++ sweep-0.9.3/debian/patches/series
@@ -3,0 +4 @@
+04-lp800945_prevent_time_ruler_trails.patch
only in patch2:
unchanged:
--- sweep-0.9.3.orig/debian/patches/04-lp800945_prevent_time_ruler_trails.patch
+++ sweep-0.9.3/debian/patches/04-lp800945_prevent_time_ruler_trails.patch
@@ -0,0 +1,76 @@
+--- sweep-0.9.3/src/time_ruler.c 2011-06-22 17:05:45.334749547 -0400
++++ sweep-0.9.3-ruler/src/time_ruler.c 2011-06-22 17:06:30.337713359 -0400
+@@ -104,7 +104,6 @@
+ widget_class->motion_notify_event = time_ruler_motion_notify;
+
+ ruler_class->draw_ticks = time_ruler_draw_ticks;
+- ruler_class->draw_pos = time_ruler_draw_pos;
+ }
+
+ static gfloat ruler_scale[MAXIMUM_SCALES] =
+@@ -318,65 +317,6 @@
+ }
+ }
+
+-static void
+-time_ruler_draw_pos (GtkRuler *ruler)
+-{
+- GtkWidget *widget;
+- GdkGC *gc;
+- int i;
+- gint x, y;
+- gint width, height;
+- gint bs_width, bs_height;
+- gint xthickness;
+- gint ythickness;
+- gfloat increment;
+-
+- g_return_if_fail (ruler != NULL);
+- g_return_if_fail (GTK_IS_TIME_RULER (ruler));
+-
+- if (GTK_WIDGET_DRAWABLE (ruler))
+- {
+- widget = GTK_WIDGET (ruler);
+-
+- gc = widget->style->fg_gc[GTK_STATE_NORMAL];
+- xthickness = widget->style->xthickness;
+- ythickness = widget->style->ythickness;
+- width = widget->allocation.width;
+- height = widget->allocation.height - ythickness * 2;
+-
+- bs_width = height / 2;
+- bs_width |= 1; /* make sure it's odd */
+- bs_height = bs_width / 2 + 1;
+-
+- if ((bs_width > 0) && (bs_height > 0))
+- {
+- /* If a backing store exists, restore the ruler */
+- if (ruler->backing_store && ruler->non_gr_exp_gc)
+- gdk_draw_drawable (ruler->widget.window,
+- ruler->non_gr_exp_gc,
+- ruler->backing_store,
+- ruler->xsrc, ruler->ysrc,
+- ruler->xsrc, ruler->ysrc,
+- bs_width, bs_height);
+-
+- increment = (gfloat) width / (ruler->upper - ruler->lower);
+-
+- x = ROUND ((ruler->position - ruler->lower) * increment) +
+- (xthickness - bs_width) / 2 - 1;
+- y = (height + bs_height) / 2 + ythickness;
+-
+- for (i = 0; i < bs_height; i++)
+- gdk_draw_line (widget->window, gc,
+- x + i, y + i,
+- x + bs_width - 1 - i, y + i);
+-
+-
+- ruler->xsrc = x;
+- ruler->ysrc = y;
+- }
+- }
+-}
+-
+ void
+ time_ruler_set_format (TimeRuler * time_ruler, sw_format * f)
+ {
Reply to: