|
|
@@ -21,12 +21,13 @@
|
|
|
* Source.
|
|
|
*/
|
|
|
|
|
|
-/* global browser, document, matchMedia, addEventListener, navigator */
|
|
|
+/* global browser, document, matchMedia, addEventListener, navigator, setInterval */
|
|
|
|
|
|
import * as download from "../../core/common/download.js";
|
|
|
import { onError } from "./../common/content-error.js";
|
|
|
|
|
|
const FOREGROUND_SAVE = /Safari/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent);
|
|
|
+const PING_BG_PAGE = /Safari/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent);
|
|
|
|
|
|
const editorElement = document.querySelector(".editor");
|
|
|
const toolbarElement = document.querySelector(".toolbar");
|
|
|
@@ -333,6 +334,9 @@ browser.runtime.onMessage.addListener(message => {
|
|
|
tabDataContents = [];
|
|
|
editorElement.contentWindow.postMessage(JSON.stringify({ method: "init", content: tabData.content }), "*");
|
|
|
editorElement.contentWindow.focus();
|
|
|
+ if (PING_BG_PAGE) {
|
|
|
+ setInterval(() => browser.runtime.sendMessage({ method: "editor.ping" }), 15000);
|
|
|
+ }
|
|
|
delete tabData.content;
|
|
|
}
|
|
|
return Promise.resolve({});
|