static void selection_box_draw(selection_box_t *box, cairo_t *cr)
 {
-    cairo_rectangle (cr, box->x1, box->y1, box->x2 -box->x1, box->y2 - box->y1);
+    cairo_rectangle (cr, box->x1, box->y1, box->x2 - box->x1, box->y2 - box->y1);
     cairo_set_source_rgba(cr, 0.0, 0.1, 0.2, 0.5);
     cairo_fill (cr);
 }
        int height = abs(box->y2 - box->y1);
 
        box->visible = 0;       
-       gtk_widget_queue_draw_area (widget, x - 1, y - 1, width - 2, height + 2);
+       gtk_widget_queue_draw_area (widget, x, y, width, height);
 
        tile_group_t group;
        group.num_tiles = 0;
        gtk_widget_queue_draw_area ( widget,  MIN(box->x1, box->x2), MIN(box->y1, box->y2), abs(box->x2 - box->x1), abs(box->y2 - box->y1) );
 
        box->x2 = event->x;
-       box->x2 = event->y;
+       box->y2 = event->y;
 
        gtk_widget_queue_draw_area ( widget, MIN(box->x1, box->x2), MIN(box->y1, box->y2), abs(box->x2 - box->x1), abs(box->y2 - box->y1) );
     }