* commit '92a175ca6fae7b607d81f632b14b2219c64dc791': Avoid memory leak by only registering callback while attached to window.
* commit '92a175ca6fae7b607d81f632b14b2219c64dc791': Avoid memory leak by only registering callback while attached to window.