anchor.diff:      if (r == _rotate) {
         return;
       }
  -
       _rotate = r;
       _image.rotationDeg = _cropShape.rotationDeg = 90 * r;
       var w = _handler.width;
  
positive.code: 
    void setCrop(double x, double y, double width, double height) {
      _cropShape.setCrop(x, y, width, height);
  
      if (!_cropLayer.handlerSet) {
        _handler.addLayer(_cropLayer);
  
  
negative.code:     if (properties.url == null) {
        return;
      }
  
      _handler = new CanvasHandler(canvas);
      var rotated = properties.rotate % 2 == 1;
      _originalWidth = properties.width;
      _originalHeight = properties.height;
      _handler.width = rotated?_originalHeight:_originalWidth;
      _handler.height = rotated?_originalWidth:_originalHeight;
      _handler.addLayer(_imageLayer);
      _fullImage = new ImageElement(src:"/"+properties.url);
      _fullImage.onLoad.listen((_) {
  