Added rendering window observers and improved event handling