That is, recreate it if we're parented to the wrong widget. This can happen with swapFrameLoaders. We could (and should, maybe) do this in SwapFrameLoaders instead. But we already have logic to re-show widgets on some situations in nsMenuPopupFrame, so seems worth reusing that. Fully move parent widget computation to nsMenuPopupFrame. Differential Revision: https://phabricator.services.mozilla.com/D231668