- gnome_canvas_request_redraw (item->canvas, a - 1, item->y1, b + 1, item->y2);
- }
-
- if (item->x2 != old_x2) {
-
- /* right edge changed. redraw the area that altered */
-
- a = MIN(item->x2, old_x2);
- b = MAX(item->x2, old_x2);
- gnome_canvas_request_redraw (item->canvas, a - 1, item->y1, b + 1, item->y2);
- }
-
- if (item->y1 != old_y1) {
-
- /* top edge changed. redraw the area that altered */
-
- a = MIN(item->y1, old_y1);
- b = MAX(item->y1, old_y1);
- gnome_canvas_request_redraw (item->canvas, item->x1, a - 1, item->x2, b + 1);
- }
-
- if (item->y2 != old_y2) {
-
- /* lower edge changed. redraw the area that altered */
-
- a = MIN(item->y2, old_y2);
- b = MAX(item->y2, old_y2);
- gnome_canvas_request_redraw (item->canvas, item->x1, a - 1, item->x2, b + 1);
- }
+
+ a = MIN(a, item->x2);
+ a = MIN(a, old_x2);
+ b = MAX(b, item->x2);
+ b = MAX(b, old_x2);
+
+ c = MIN(item->y1, old_y1);
+ d = MAX(item->y1, old_y1);
+
+ c = MIN(c,item->y2);
+ c = MIN(c, old_y2);
+ d = MAX(d,item->y2);
+ d = MAX(d, old_y2);
+
+ gnome_canvas_request_redraw (item->canvas, a, c, b + 0.5, d + 0.5);