• Robert Knight's avatar
    Rewrite selection buffering implementation · f1dd2973
    Robert Knight authored
    Rewrite the selection change observer in `src/annotator/selections` to
    make it easier to understand how this functionality works and change it
    in future.
    
    The major change is to remove the dependency on the `Observable` class
    provided by `zen-observable`, which adds cognitive overhead here, isn't used
    elsewhere and is stuck on an old version due to subtle breaking changes in newer releases.
    
    Replace it instead with a `SelectionObserver` class which is modeled
    after DOM APIs like `MutationObserver`. It takes a callback in the
    constructor that is invoked with the selected `Range` or `null` when the
    selection changes and provides a `disconnect` method which stops
    watching for future changes. The implementation only uses DOM APIs.
    f1dd2973
Name
Last commit
Last update
..
anchoring Loading commit data...
components Loading commit data...
config Loading commit data...
plugin Loading commit data...
test Loading commit data...
util Loading commit data...
.eslintrc.js Loading commit data...
adder.js Loading commit data...
annotation-counts.js Loading commit data...
annotation-sync.js Loading commit data...
delegator.js Loading commit data...
features.js Loading commit data...
frame-observer.js Loading commit data...
guest.js Loading commit data...
highlighter.js Loading commit data...
icons.js Loading commit data...
index.js Loading commit data...
pdf-sidebar.js Loading commit data...
pdfjs-rendering-states.js Loading commit data...
range-util.js Loading commit data...
selection-observer.js Loading commit data...
sidebar-trigger.js Loading commit data...
sidebar.js Loading commit data...
toolbar.js Loading commit data...