change crop widget interface from promises to regular methods