summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@fedoraproject.org>2006-08-28 03:38:43 +0000
committerMatthias Clasen <mclasen@fedoraproject.org>2006-08-28 03:38:43 +0000
commit68ac211222556935b11aec2613e4966388ae53b1 (patch)
treecccba145e96d1aaacba1bb05207dd7dd76c50d26
parentf57e3eefbf282b7a9b3ac8f95009aa3c61280582 (diff)
downloadgnome-applets-68ac211222556935b11aec2613e4966388ae53b1.tar.gz
gnome-applets-68ac211222556935b11aec2613e4966388ae53b1.tar.xz
gnome-applets-68ac211222556935b11aec2613e4966388ae53b1.zip
fix some redraw issuesgnome-applets-2_15_90-4_fc6
-rw-r--r--gnome-applets.spec9
-rw-r--r--keyboard-drawing-redraw.patch48
2 files changed, 55 insertions, 2 deletions
diff --git a/gnome-applets.spec b/gnome-applets.spec
index d49dc4b..ca4a2b9 100644
--- a/gnome-applets.spec
+++ b/gnome-applets.spec
@@ -32,7 +32,7 @@
Summary: Small applications for the GNOME panel
Name: gnome-applets
Version: 2.15.90
-Release: 3%{?dist}
+Release: 4%{?dist}
Epoch: 1
License: GPL
Group: User Interface/Desktops
@@ -54,6 +54,8 @@ Patch17: keyboard-drawing-label-color.patch
Patch18: keyboard-drawing-primary.patch
# http://bugzilla.gnome.org/show_bug.cgi?id=352781
Patch19: keyboard-drawing-corner.patch
+# http://bugzilla.gnome.org/show_bug.cgi?id=353163
+Patch20: keyboard-drawing-redraw.patch
URL: http://www.gnome.org/
@@ -139,7 +141,7 @@ small utilities for the GNOME panel.
%patch17 -p1 -b .label-color
%patch18 -p1 -b .primary
%patch19 -p1 -b .corner
-
+%patch20 -p1 -b .redraw
cp gswitchit/gswitchit-applet.png gswitchit/gswitchit-properties-capplet.png
@@ -307,6 +309,9 @@ fi
%{_libdir}/pkgconfig/gweather.pc
%changelog
+* Sun Aug 27 2006 Matthias Clasen <mclasen@redhat.com> - 1:2.15.90-4.fc6
+- Fix some redraw issues in the keyboard capplet
+
* Sun Aug 27 2006 Matthias Clasen <mclasen@redhat.com> - 1:2.15.90-3.fc6
- More keyboard drawing improvements
diff --git a/keyboard-drawing-redraw.patch b/keyboard-drawing-redraw.patch
new file mode 100644
index 0000000..4637c29
--- /dev/null
+++ b/keyboard-drawing-redraw.patch
@@ -0,0 +1,48 @@
+--- control-center-2.15.92/libkbdraw/keyboard-drawing.c.redraw 2006-08-27 22:42:37.000000000 -0400
++++ control-center-2.15.92/libkbdraw/keyboard-drawing.c 2006-08-27 22:54:18.000000000 -0400
+@@ -1176,6 +1176,26 @@
+ }
+
+ static void
++redraw_overlapping_doodads (
++ KeyboardDrawing * drawing,
++ KeyboardDrawingKey * key)
++{
++ GList *list;
++ gboolean do_draw = FALSE;
++
++ for (list = drawing->keyboard_items; list; list = list->next)
++ {
++ KeyboardDrawingItem * item = list->data;
++
++ if (do_draw && item->type == KEYBOARD_DRAWING_ITEM_TYPE_DOODAD)
++ draw_doodad (drawing, (KeyboardDrawingDoodad *) item);
++
++ if (list->data == key)
++ do_draw = TRUE;
++ }
++}
++
++static void
+ draw_keyboard_item (
+ KeyboardDrawingItem * item,
+ KeyboardDrawing * drawing)
+@@ -1340,7 +1360,7 @@
+ key->pressed = (event->type == GDK_KEY_PRESS);
+
+ draw_key (drawing, key);
+-
++ redraw_overlapping_doodads (drawing, key);
+ invalidate_key_region (drawing, key);
+
+ return TRUE;
+@@ -1370,7 +1390,9 @@
+ if (drawing->keys[i].pressed)
+ {
+ drawing->keys[i].pressed = FALSE;
++
+ draw_key (drawing, drawing->keys + i);
++ redraw_overlapping_doodads (drawing, drawing->keys + i);
+ invalidate_key_region (drawing, drawing->keys + i);
+ }
+