• Randall Leeds's avatar
    Improve symmetry for AnnotationSync · 50775462
    Randall Leeds authored
    This change simplifies the AnnotationSync events and improves the
    frame symmetry by giving the guest its own AnnotationSync setup
    function, alongside its AnnotationUISync setup, that mirrors the
    way its handled in the widget.
    
    Previously, the `loadAnnotations` and `deleteAnnotations` events
    were treated specially by AnnotationSync so that it didn't cause
    endless loops. Instead, fully embrace the fact that the guest is
    not responsible for loading or deleting annotations.
    
    - Remove the setupAnnotation and deleteAnnotation methods, as they are
      no longer used.
    
    - Factor out everything but the event publication of deleteAnnotation
      into a detach method that is the inverse of the anchor method.
    
    - Subscribe to annotationsLoaded and annotationDeleted and invoke anchor
      and detach accordingly.
    50775462
annotation-sync.coffee 6.19 KB