--- Desktop/ardour/gtk_ardour/editor_mouse.cc	Fri Aug  6 14:33:12 2004
+++ cvs/ardour/gtk_ardour/editor_mouse.cc	Sat Aug  7 03:57:06 2004
@@ -2845,24 +2845,21 @@
 	case SelectionStartTrim:
 		clicked_trackview->order_selection_trims (item, true);
 		start_grab (event, trimmer_cursor);
+		show_verbose_time_cursor(selection->time[clicked_selection].start, 10);
 		break;
 		
 	case SelectionEndTrim:
 		clicked_trackview->order_selection_trims (item, false);
 		start_grab (event, trimmer_cursor);
+		show_verbose_time_cursor(selection->time[clicked_selection].end, 10);
 		break;
 
 	case SelectionMove:
 		start = selection->time[clicked_selection].start;
 		start_grab (event);
-		drag_info.pointer_frame_offset = drag_info.grab_frame - start;	
-		break;
-	}
-
-	if (selection_op == SelectionMove) {
+		drag_info.pointer_frame_offset = drag_info.grab_frame - start;
 		show_verbose_time_cursor(start, 10);	
-	} else {
-		show_verbose_time_cursor(drag_info.current_pointer_frame, 10);	
+		break;
 	}
 }
 
@@ -2872,8 +2869,9 @@
 	jack_nframes_t start = 0;
 	jack_nframes_t end = 0;
 	jack_nframes_t length;
+	bool obey_snap = !Keyboard::modifier_state_contains (event->button.state, Keyboard::snap_modifier());
 
-	if (!Keyboard::modifier_state_contains (event->button.state, Keyboard::snap_modifier())) {
+	if (obey_snap) {
 		snap_to (drag_info.current_pointer_frame);
 	}
 
@@ -2914,7 +2912,8 @@
 				/* new selection-> */
 				clicked_selection = selection->set (clicked_trackview, start, end);
 			}
-		} 
+		}
+		show_verbose_time_cursor(drag_info.current_pointer_frame, 10); 
 		break;
 		
 	case SelectionStartTrim:
@@ -2931,6 +2930,7 @@
 		} else {
 			start = drag_info.current_pointer_frame;
 		}
+		show_verbose_time_cursor(start, 10);
 		break;
 		
 	case SelectionEndTrim:
@@ -2947,6 +2947,7 @@
 		} else {
 			end = drag_info.current_pointer_frame;
 		}
+		show_verbose_time_cursor(end, 10);
 		break;
 		
 	case SelectionMove:
@@ -2962,12 +2963,15 @@
 		
 		if ((long) drag_info.current_pointer_frame > drag_info.pointer_frame_offset) {
 			start = drag_info.current_pointer_frame - drag_info.pointer_frame_offset;
-			snap_to (start);
+			if (obey_snap) {
+				snap_to (start);
+			}
 		} else {
 			start = 0;
 		}
 		
 		end = start + length;
+		show_verbose_time_cursor(start, 10);
 		
 		break;
 	}
@@ -2984,11 +2988,6 @@
 	drag_info.last_pointer_frame = drag_info.current_pointer_frame;
 	drag_info.first_move = false;
 
-	if (selection_op == SelectionMove) {
-		show_verbose_time_cursor(start, 10);	
-	} else {
-		show_verbose_time_cursor(drag_info.current_pointer_frame, 10);	
-	}
 }
 
 void
