I have two cases in my own work, and this makes me question what I thought was the case.
My first use-case, like it seems is yours, is simply to have my content, which extends past the simple view of the launch iframe, be fit into the parent window without any scrolling, so that the main site scrolling is all there is, and there's no double-scrolling. For that use-case I also use `lti.frameResize`, and it works for me. I would also switch if there were a new message so that I no longer needed to send in the exactly size, and Canvas would just figure that out for me.
My second use-case, however, doesn't currently have a solution. I thought it did from updates on an issue on GitHub, but this conversation makes me believe that I was mistaken, and since I didn't try it out for myself, that's not all too surprising. The behavior that my second use-case requires is that the iframe be resized to fill as much of the parent window as is available _without_ causing the parent window to scroll. I need this because my application implements it's own scrolling, so I need for the Canvas launch frame to _not_ scroll. Because my iframe can't find out anything about the dimensions of the page that it's embedded into, it's not possible to use `lti.frameResize`; there's no way for me to know the right number to send.
Ryan