56 lines
2.2 KiB
Diff
56 lines
2.2 KiB
Diff
--- libgnomekbd-2.17.2/libgnomekbd/gkbd-keyboard-drawing.c.primary 2007-01-24 14:41:18.000000000 -0500
|
|
+++ libgnomekbd-2.17.2/libgnomekbd/gkbd-keyboard-drawing.c 2007-01-24 14:47:27.000000000 -0500
|
|
@@ -677,9 +677,22 @@
|
|
shape->num_outlines);
|
|
#endif
|
|
|
|
- for (i = 0; i < 1 /* shape->num_outlines */ ; i++)
|
|
- draw_outline (drawing, shape->outlines + i, color,
|
|
- key->angle, key->origin_x, key->origin_y);
|
|
+ /* draw the primary outline */
|
|
+ draw_outline (drawing, shape->primary ? shape->primary : shape->outlines,
|
|
+ color, key->angle, key->origin_x, key->origin_y);
|
|
+#if 0
|
|
+ /* don't draw other outlines for now, since
|
|
+ * the text placement does not take them into account
|
|
+ */
|
|
+ for (i = 0; i < shape->num_outlines; i++)
|
|
+ {
|
|
+ if (shape->outlines + i == shape->approx ||
|
|
+ shape->outlines + i == shape->primary)
|
|
+ continue;
|
|
+ draw_outline (drawing, shape->outlines + i, NULL,
|
|
+ key->angle, key->origin_x, key->origin_y);
|
|
+ }
|
|
+#endif
|
|
|
|
draw_key_label (drawing, key->keycode, key->angle, key->origin_x,
|
|
key->origin_y, shape->bounds.x2, shape->bounds.y2);
|
|
@@ -822,11 +835,21 @@
|
|
shape = drawing->xkb->geom->shapes + shape_doodad->shape_ndx;
|
|
color = drawing->colors + shape_doodad->color_ndx;
|
|
|
|
- for (i = 0; i < shape->num_outlines; i++)
|
|
- draw_outline (drawing, shape->outlines + i, color,
|
|
- doodad->angle,
|
|
- doodad->origin_x + shape_doodad->left,
|
|
- doodad->origin_y + shape_doodad->top);
|
|
+ /* draw the primary outline filled */
|
|
+ draw_outline (drawing, shape->primary ? shape->primary : shape->outlines,
|
|
+ color, doodad->angle,
|
|
+ doodad->origin_x + shape_doodad->left,
|
|
+ doodad->origin_y + shape_doodad->top);
|
|
+
|
|
+ /* stroke the other outlines */
|
|
+ for (i = 0; i < shape->num_outlines; i++) {
|
|
+ if (shape->outlines + i == shape->approx ||
|
|
+ shape->outlines + i == shape->primary)
|
|
+ continue;
|
|
+ draw_outline (drawing, shape->outlines + i, NULL, doodad->angle,
|
|
+ doodad->origin_x + shape_doodad->left,
|
|
+ doodad->origin_y + shape_doodad->top);
|
|
+ }
|
|
}
|
|
|
|
static void
|