• Robert Knight's avatar
    Handle multi-step chapter navigations in VitalSource books · 1895eec5
    Robert Knight authored
    Navigations between sections of a book in VitalSource happen in several
    steps:
    
     1. The iframe for the previous chapter is removed
     2. An iframe is created for the new chapter. The initial load of this
        iframe contains a "blank" page with the chapter content in an
        encoded/encrypted form as hidden text in the page.
     3. The chapter content data is submitted to the VS backend via a form
        POST request, which returns the decoded content
    
    Previously the Hypothesis client would sometimes detect the new iframe
    after step 2 and inject the client before step 3 had completed. As a
    result the client would be injected into the blank frame, then
    immediately unloaded, and not re-loaded into the "real" content frame.
    
    Make injection more reliable by:
    
     1. Checking whether the content frame is a "blank" frame or not before
        injecting the client.
     2. Listening for `load` events on the frame and re-injecting the client
        if the iframe is navigated
    1895eec5
Name
Last commit
Last update
..
annotator Loading commit data...
boot Loading commit data...
images/icons Loading commit data...
shared Loading commit data...
sidebar Loading commit data...
styles Loading commit data...
test-util Loading commit data...
types Loading commit data...
.eslintrc Loading commit data...
karma.config.js Loading commit data...
tsconfig.json Loading commit data...