made responsive with swingworker