I think it might be worth defining a isCropOverlayShown() method to go along with hideCropOverlay() and showCropOverlay(). You could use that instead of this.cropCanvas() here and elswhere int he file.