change to DISPOSE_ON_CLOSE