-
Robert Knight authored
Fix an issue where multiple Hypothesis sidebar (and possibly notebook, profile etc.) iframes could get created when saving a local snapshot of a web page where Hypothesis was loaded. This would lead to one of the sidebars not functioning because the host frame only allows one sidebar to connect. Aside from there being multiple sidebars, there are other problems in such an environment, such as the URL not matching the original page URL. Hence this commit handles this scenario by detecting it when the annotator bundle loads, removing the existing `<hypothesis-sidebar>` element and then aborting startup. The end result for the user is that if they save a snapshot of a page with Hypothesis loaded and later reload it, the visible highlights will still appear in the page but other Hypothesis UI elements will not be visible. The scenario described here applies in Chrome when saving a snapshot with the "Web Page, Complete" file type. If the user instead selects "Web Page, HTML only" or "Web Page, single file" they will get different results, but those were already not problematic because no JS was executed. Fixes https://github.com/hypothesis/client/issues/5827
a7239d05