2.21.4
This commit is contained in:
parent
ad77166186
commit
8bb95af832
@ -1,42 +0,0 @@
|
||||
--- libgnomekbd-0.1/test/Makefile.in.werror 2006-11-02 21:51:53.000000000 -0500
|
||||
+++ libgnomekbd-0.1/test/Makefile.in 2006-11-02 21:52:13.000000000 -0500
|
||||
@@ -250,7 +250,7 @@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
gkbd_config_registry_server_CFLAGS = \
|
||||
- $(WARN_CFLAGS) -I$(top_srcdir) -Wall -Werror \
|
||||
+ $(WARN_CFLAGS) -I$(top_srcdir) -Wall \
|
||||
$(DBUS_CFLAGS) \
|
||||
$(LIBXKLAVIER_CFLAGS)
|
||||
|
||||
@@ -260,7 +260,7 @@
|
||||
$(top_builddir)/libgnomekbd/libgnomekbd.la
|
||||
|
||||
gkbd_indicator_test_CFLAGS = \
|
||||
- $(WARN_CFLAGS) -I$(top_srcdir) -Wall -Werror \
|
||||
+ $(WARN_CFLAGS) -I$(top_srcdir) -Wall \
|
||||
$(GTK_CFLAGS) \
|
||||
$(LIBGLADE_CFLAGS) \
|
||||
$(LIBGNOME_CFLAGS) \
|
||||
--- libgnomekbd-0.1/libgnomekbd/Makefile.in.werror 2006-11-02 21:27:19.000000000 -0500
|
||||
+++ libgnomekbd-0.1/libgnomekbd/Makefile.in 2006-11-02 21:27:34.000000000 -0500
|
||||
@@ -267,7 +267,7 @@
|
||||
target_alias = @target_alias@
|
||||
lib_LTLIBRARIES = libgnomekbd.la libgnomekbdui.la
|
||||
common_CFLAGS = \
|
||||
- -I$(top_srcdir) -Wall -Werror \
|
||||
+ -I$(top_srcdir) -Wall \
|
||||
$(GDK_CFLAGS) \
|
||||
$(DBUS_CFLAGS) \
|
||||
$(GCONF_CFLAGS) \
|
||||
--- libgnomekbd-0.1/capplet/Makefile.in.werror 2006-11-02 22:18:32.000000000 -0500
|
||||
+++ libgnomekbd-0.1/capplet/Makefile.in 2006-11-02 22:18:43.000000000 -0500
|
||||
@@ -266,7 +266,7 @@
|
||||
Desktop_in_files = gkbd-indicator-plugins-capplet.desktop.in
|
||||
desktop_DATA = $(Desktop_in_files:.desktop.in=.desktop)
|
||||
gkbd_indicator_plugins_capplet_CFLAGS = \
|
||||
- -I$(top_srcdir) -Wall -Werror \
|
||||
+ -I$(top_srcdir) -Wall \
|
||||
$(LIBGLADE_CFLAGS) \
|
||||
$(LIBGNOME_CFLAGS) \
|
||||
$(LIBGNOMEUI_CFLAGS) \
|
@ -1,45 +0,0 @@
|
||||
--- libgnomekbd-2.17.2/libgnomekbd/gkbd-keyboard-drawing.c.redraw 2007-01-24 15:29:25.000000000 -0500
|
||||
+++ libgnomekbd-2.17.2/libgnomekbd/gkbd-keyboard-drawing.c 2007-01-24 15:30:03.000000000 -0500
|
||||
@@ -1121,6 +1121,25 @@
|
||||
}
|
||||
|
||||
static void
|
||||
+redraw_overlapping_doodads (GkbdKeyboardDrawing * drawing,
|
||||
+ GkbdKeyboardDrawingKey * key)
|
||||
+{
|
||||
+ GList *list;
|
||||
+ gboolean do_draw = FALSE;
|
||||
+
|
||||
+ for (list = drawing->keyboard_items; list; list = list->next)
|
||||
+ {
|
||||
+ GkbdKeyboardDrawingItem * item = list->data;
|
||||
+
|
||||
+ if (do_draw && item->type == GKBD_KEYBOARD_DRAWING_ITEM_TYPE_DOODAD)
|
||||
+ draw_doodad (drawing, (GkbdKeyboardDrawingDoodad *) item);
|
||||
+
|
||||
+ if (list->data == key)
|
||||
+ do_draw = TRUE;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
draw_keyboard_item (GkbdKeyboardDrawingItem * item,
|
||||
GkbdKeyboardDrawing * drawing)
|
||||
{
|
||||
@@ -1279,7 +1298,7 @@
|
||||
key->pressed = (event->type == GDK_KEY_PRESS);
|
||||
|
||||
draw_key (drawing, key);
|
||||
-
|
||||
+ redraw_overlapping_doodads (drawing, key);
|
||||
invalidate_key_region (drawing, key);
|
||||
|
||||
return TRUE;
|
||||
@@ -1309,6 +1328,7 @@
|
||||
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);
|
||||
}
|
||||
|
38
libgnomekbd-2.21.4-redraw.patch
Normal file
38
libgnomekbd-2.21.4-redraw.patch
Normal file
@ -0,0 +1,38 @@
|
||||
diff -up libgnomekbd-2.21.4/libgnomekbd/gkbd-keyboard-drawing.c.redraw libgnomekbd-2.21.4/libgnomekbd/gkbd-keyboard-drawing.c
|
||||
--- libgnomekbd-2.21.4/libgnomekbd/gkbd-keyboard-drawing.c.redraw 2007-12-15 20:22:24.000000000 -0500
|
||||
+++ libgnomekbd-2.21.4/libgnomekbd/gkbd-keyboard-drawing.c 2007-12-15 20:28:08.000000000 -0500
|
||||
@@ -1229,6 +1229,26 @@ typedef struct {
|
||||
} DrawKeyboardItemData;
|
||||
|
||||
static void
|
||||
+redraw_overlapping_doodads (GkbdKeyboardDrawingRenderContext * context,
|
||||
+ GkbdKeyboardDrawing * drawing,
|
||||
+ GkbdKeyboardDrawingKey * key)
|
||||
+{
|
||||
+ GList *list;
|
||||
+ gboolean do_draw = FALSE;
|
||||
+
|
||||
+ for (list = drawing->keyboard_items; list; list = list->next)
|
||||
+ {
|
||||
+ GkbdKeyboardDrawingItem * item = list->data;
|
||||
+
|
||||
+ if (do_draw && item->type == GKBD_KEYBOARD_DRAWING_ITEM_TYPE_DOODAD)
|
||||
+ draw_doodad (context, drawing, (GkbdKeyboardDrawingDoodad *) item);
|
||||
+
|
||||
+ if (list->data == key)
|
||||
+ do_draw = TRUE;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
draw_keyboard_item (GkbdKeyboardDrawingItem * item,
|
||||
DrawKeyboardItemData *data)
|
||||
{
|
||||
@@ -1463,6 +1483,7 @@ key_event (GtkWidget * widget,
|
||||
|
||||
create_cairo (drawing);
|
||||
draw_key (drawing->renderContext, drawing, key);
|
||||
+ redraw_overlapping_doodads (drawing->renderContext, drawing, key);
|
||||
destroy_cairo (drawing);
|
||||
|
||||
invalidate_key_region (drawing, key);
|
@ -7,10 +7,8 @@ Group: System Environment/Libraries
|
||||
License: LGPLv2+
|
||||
URL: http://gswitchit.sourceforge.net
|
||||
Source0: http://download.gnome.org/sources/libgnomekbd/2.21/libgnomekbd-%{version}.tar.bz2
|
||||
# http://bugzilla.gnome.org/show_bug.cgi?id=365590
|
||||
Patch1: libgnomekbd-0.1-werror.patch
|
||||
# http://bugzilla.gnome.org/show_bug.cgi?id=353163
|
||||
Patch5: libgnomekbd-2.17.2-redraw.patch
|
||||
Patch0: libgnomekbd-2.21.4-redraw.patch
|
||||
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
|
||||
@ -54,8 +52,7 @@ developing applications that use libgnomekbd.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
#%patch1 -p1 -b .werror
|
||||
%patch5 -p1 -b .redraw
|
||||
%patch0 -p1 -b .redraw
|
||||
|
||||
%build
|
||||
%configure --disable-static --enable-compile-warnings=no
|
||||
|
Loading…
Reference in New Issue
Block a user