code: @Override
  	public void registerAnimation(NavigationAnimation animation) {
  		// boolean cancelSupport = configuration.getHintValue(MapConfiguration.ANIMATION_CANCEL_SUPPORT);
  		// if (!cancelSupport && currentAnimation != null) {
  		// return;
  		// }
  
  		if (currentAnimation != null) {
  			currentAnimation.cancel();
  		}
  		this.currentAnimation = animation;
  
  		// Schedule the animation from the moment the browser event loop returns:
  		Scheduler.get().scheduleDeferred(new ScheduledCommand() {
  
  			@Override
  			public void execute() {
  				if (currentAnimation != null) {
  					if (Dom.isTransformationSupported()) {
  						currentAnimation.run();
  					} else {
  						applyView(currentAnimation.getEndView());
  						currentAnimation = null;
  					}
  				}
  			}
  		});
  	}
docs: -------------------------------------------------------------------------