keep GUI state instead of refreshing, add clear button