fixes bug where sometimes changes to `frame` does not implicitly yield a `bounds` change notification