bug: cross threading GUI call fixed