Moved Listener to seperated thread