ask method wait results before close, and add a spinner

Not ready to merge
It is really awesome idea! \o/