diff --git a/app-addon/transitions/move-over.js b/app-addon/transitions/move-over.js
index <HASH>..<HASH> 100644
--- a/app-addon/transitions/move-over.js
+++ b/app-addon/transitions/move-over.js
@@ -1,18 +1,25 @@
-import { stop, animate, Promise } from "vendor/liquid-fire";
+import { stop, animate, Promise, isAnimating, finish } from "vendor/liquid-fire";
 
 export default function moveOver(oldView, insertNewView, dimension, direction, opts) {
   var property  = 'translate' + dimension.toUpperCase(),
       oldParams = {},
-      newParams = {};
+      newParams = {},
+      firstStep;
+
+  if (isAnimating(oldView, 'moving-in')) {
+    firstStep = finish(oldView, 'moving-in');
+  } else {
+    stop(oldView);
+    firstStep = Promise.cast();
+  }
 
   oldParams[property] = (100 * direction) + '%';
   newParams[property] = ["0%", (-100 * direction) + '%'];
 
-  stop(oldView);
-  return insertNewView().then(function(newView){
+  return firstStep.then(insertNewView).then(function(newView){
     return Promise.all([
       animate(oldView, oldParams, opts),
-      animate(newView, newParams, opts)
+      animate(newView, newParams, opts, 'moving-in')
     ]);
   });
 }
More graceful interruptions for move-over

Related to #<I>