]> git.street.me.uk Git - andy/viking.git/commitdiff
If a route or track creation is cancelled with the Escape key with just the initial...
authorRob Norris <rw_norris@hotmail.com>
Sun, 11 May 2014 21:05:49 +0000 (22:05 +0100)
committerRob Norris <rw_norris@hotmail.com>
Thu, 5 Jun 2014 19:45:42 +0000 (20:45 +0100)
 assume it's not really wanted and delete it.

src/viktrwlayer.c

index 67dc77f14bbc379af1d1109b15e9552b935757c6..09e30fb729122f793bb00a6d88d6e6fd748b6c1a 100644 (file)
@@ -9606,6 +9606,13 @@ static void undo_trackpoint_add ( VikTrwLayer *vtl )
 static gboolean tool_new_track_key_press ( VikTrwLayer *vtl, GdkEventKey *event, VikViewport *vvp )
 {
   if ( vtl->current_track && event->keyval == GDK_Escape ) {
+    // Bin track if only one point as it's not very useful
+    if ( vik_track_get_tp_count(vtl->current_track) == 1 ) {
+      if ( vtl->current_track->is_route )
+        vik_trw_layer_delete_route ( vtl, vtl->current_track );
+      else
+        vik_trw_layer_delete_track ( vtl, vtl->current_track );
+    }
     vtl->current_track = NULL;
     vik_layer_emit_update ( VIK_LAYER(vtl) );
     return TRUE;