Bug1087494-[Gallery]-Update Image Edit Crop Flow

This new function seems like it works, but it feels to me that you could refactor a little bit more and end up with something cleaner.  Right now it seems like a hack that you have to call resetCropRegion in order to generate the new preview you want. How about creating some other way to specify the size of hte preview you need.  For example, what if you rename resetPreview to requestNewPreview(). And pass an object that specifies the rectangle of the original that you want. Here you'd pass the full dimensions of the original image.  When the user finished a crop, you'd call requestNewPreview() with the cropped dimensions (is that the this.source object maybe?) I think that would go a long way to making the code cleaner and you wouldn't have to reset a crop region.

And if you don't have to call resetCropRegion at the start of this function, then you don't need to re-calculate the crop region in retainCropRegion, right?  In that case you could just pass an existing object to showCropOverlay, I think.