Try to only refresh UI when neeed #46