Bug1087494-[Gallery]-Update Image Edit Crop Flow

Thanks David for the feedback, Quick clarification about resetCropRegion which is confusing and looks as if we are resetting this.cropRegion object (an object with left, top, right and bottom that's used to show crop overlay).

What resetCropRegion method does is setting this.source values to the original image
https://github.com/punamdahiya/gaia/blob/master/apps/gallery/js/ImageEditor.js#L653

We have a method  generateNewPreview similar to requestNewPreview that generates new preview by values in this.source object.
https://github.com/punamdahiya/gaia/blob/master/apps/gallery/js/ImageEditor.js#L471
So when entering crop tool from main edit screen,  it first calls resetCropRegion and than generate new preview for the original image. 
When the user finished a crop,we call generateNewPreview() with the cropped dimensions in this.source object 

I agree I don't need to re-calculate this.cropRegion object in retainCropRegion. With the new flow, we no longer need to match this.cropRegion object to new image size (see L1008  below) and should keep cropRegion object with cropped dimensions to be used in showCropOverlay. 

https://github.com/punamdahiya/gaia/blob/master/apps/gallery/js/ImageEditor.js#L1008
https://github.com/punamdahiya/gaia/blob/master/apps/gallery/js/ImageEditor.js#L632