At least with the other backends, `canvas` objects can be embedded in other programs without having to go through our `manager` classes.  You can not assume that `canvas` has a the attribute `manager`.