always invoke reflective method calls on event dispatch thread