Index: gtk2_ardour/audio_region_view.cc
===================================================================
--- gtk2_ardour/audio_region_view.cc	(revision 7741)
+++ gtk2_ardour/audio_region_view.cc	(working copy)
@@ -329,11 +329,11 @@
 	if (audio_region()->fade_in_active()) {
 		fade_in_shape->property_fill_color_rgba() = RGBA_TO_UINT(45,45,45,90);				// FIXME make a themeable colour
 		fade_in_shape->property_width_pixels() = 1;
-		fade_in_shape->property_outline_color_rgba() = RGBA_TO_UINT(180,180,180,190);			// FIXME make a themeable colour
+//		fade_in_shape->property_outline_color_rgba() = RGBA_TO_UINT(180,180,180,190);			// FIXME make a themeable colour
 	} else {
 		fade_in_shape->property_fill_color_rgba() = RGBA_TO_UINT(45,45,45,20);				// FIXME make a themeable colour
 		fade_in_shape->property_width_pixels() = 1;
-		fade_in_shape->property_outline_color_rgba() = RGBA_TO_UINT(45,45,45,150);			// FIXME make a themeable colour
+//		fade_in_shape->property_outline_color_rgba() = RGBA_TO_UINT(45,45,45,150);			// FIXME make a themeable colour
 	}
 }
 
@@ -347,11 +347,13 @@
 	if (audio_region()->fade_out_active()) {
 		fade_out_shape->property_fill_color_rgba() = RGBA_TO_UINT(45,45,45,90);				// FIXME make a themeable colour
 		fade_out_shape->property_width_pixels() = 1;
-		fade_out_shape->property_outline_color_rgba() = RGBA_TO_UINT(180,180,180,200);			// FIXME make a themeable colour
+		//fade_out_shape->property_outline_color_rgba() = RGBA_TO_UINT(180,180,180,200);			// FIXME make a themeable colour
+		
 	} else {
 		fade_out_shape->property_fill_color_rgba() = RGBA_TO_UINT(45,45,45,20);				// FIXME make a themeable colour
 		fade_out_shape->property_width_pixels() = 1;
-		fade_out_shape->property_outline_color_rgba() = RGBA_TO_UINT(45,45,45,200);			// FIXME make a themeable colour
+		//fade_out_shape->property_outline_color_rgba() = RGBA_TO_UINT(45,45,45,200);			// FIXME make a themeable colour
+		
 	}
 }
 
@@ -436,19 +438,9 @@
 	}
 
 	if (fade_in_handle) {
-		if (pixel_width <= 6.0) {
+		if (pixel_width <= 6.0 || _height < 5.0 || !trackview.session()->config.get_show_region_fades()) {
 			fade_in_handle->hide();
 			fade_out_handle->hide();
-		} else {
-			if (_height < 5.0) {
-				fade_in_handle->hide();
-				fade_out_handle->hide();
-			} else {
-				if (trackview.session()->config.get_show_region_fades()) {
-					fade_in_handle->show();
-					fade_out_handle->show();
-				}
-			}
 		}
 	}
 
@@ -589,6 +581,7 @@
 	width = std::max ((nframes_t) 64, width);
 
 	Points* points;
+	
 	double pwidth = width / samples_per_unit;
 	uint32_t npoints = std::min (gdk_screen_width(), (int) pwidth);
 	double h;
@@ -626,7 +619,7 @@
 	points = get_canvas_points ("fade in shape", npoints + 3);
 
 	if (_height >= NAME_HIGHLIGHT_THRESH) {
-		h = _height - NAME_HIGHLIGHT_SIZE;
+		h = _height - NAME_HIGHLIGHT_SIZE - 2;
 	} else {
 		h = _height;
 	}
@@ -694,7 +687,7 @@
 	handle_center = (_region->length() - width) / samples_per_unit;
 
 	if (handle_center > 7.0) {
-		handle_center -= 3.0;
+		handle_center += 3.0;
 	} else {
 		handle_center = 3.0;
 	}
@@ -717,7 +710,7 @@
 	audio_region()->fade_out()->curve().get_vector (0, audio_region()->fade_out()->back()->when, curve, npoints);
 
 	if (_height >= NAME_HIGHLIGHT_THRESH) {
-		h = _height - NAME_HIGHLIGHT_SIZE;
+		h = _height - NAME_HIGHLIGHT_SIZE - 2;
 	} else {
 		h = _height;
 	}
@@ -730,7 +723,7 @@
 	double xdelta = pwidth/npoints;
 
 	for (pi = 0, pc = 0; pc < npoints; ++pc) {
-		(*points)[pi].set_x(_pixel_width - 1 - pwidth + (pc*xdelta));
+		(*points)[pi].set_x(_pixel_width - pwidth + (pc * xdelta));
 		(*points)[pi++].set_y(2 + (h - (curve[pc] * h)));
 	}
 
