aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/assets/js/document_watcher.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/assets/js/document_watcher.js')
-rw-r--r--app/src/main/assets/js/document_watcher.js38
1 files changed, 38 insertions, 0 deletions
diff --git a/app/src/main/assets/js/document_watcher.js b/app/src/main/assets/js/document_watcher.js
new file mode 100644
index 00000000..4613dc87
--- /dev/null
+++ b/app/src/main/assets/js/document_watcher.js
@@ -0,0 +1,38 @@
+"use strict";
+
+(function () {
+ // emit key once half the viewport is covered
+ var isReady, observer;
+
+ isReady = function isReady() {
+ if (!((typeof document !== "undefined" && document !== null ? document.body : void 0) != null)) {
+ return false;
+ }
+ return document.body.scrollHeight > innerHeight + 100;
+ };
+
+ if (isReady()) {
+ console.log("Already ready");
+ if (typeof Frost !== "undefined" && Frost !== null) {
+ Frost.isReady();
+ }
+ return;
+ }
+
+ console.log("Injected document watcher");
+
+ observer = new MutationObserver(function () {
+ if (isReady()) {
+ observer.disconnect();
+ if (typeof Frost !== "undefined" && Frost !== null) {
+ Frost.isReady();
+ }
+ return console.log("Documented surpassed height in " + performance.now());
+ }
+ });
+
+ observer.observe(document, {
+ childList: true,
+ subtree: true
+ });
+}).call(undefined); \ No newline at end of file