From 08baa73de86bb4d4e6311ac49008da2f30eb41f2 Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Mon, 5 Mar 2018 11:19:21 -0800 Subject: [PATCH] Extract onceDocumentLoaded to function --- extensions/markdown/preview-src/events.ts | 12 ++++++++++++ extensions/markdown/preview-src/index.ts | 13 +++---------- 2 files changed, 15 insertions(+), 10 deletions(-) create mode 100644 extensions/markdown/preview-src/events.ts diff --git a/extensions/markdown/preview-src/events.ts b/extensions/markdown/preview-src/events.ts new file mode 100644 index 00000000000..40833aca711 --- /dev/null +++ b/extensions/markdown/preview-src/events.ts @@ -0,0 +1,12 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +export function onceDocumentLoaded(f: () => void) { + if (document.readyState === 'loading' || document.readyState === 'uninitialized') { + document.addEventListener('DOMContentLoaded', f); + } else { + f(); + } +} \ No newline at end of file diff --git a/extensions/markdown/preview-src/index.ts b/extensions/markdown/preview-src/index.ts index 079709b7251..56ca09ff1ed 100644 --- a/extensions/markdown/preview-src/index.ts +++ b/extensions/markdown/preview-src/index.ts @@ -5,6 +5,7 @@ import { getSettings } from './settings'; import { postCommand, postMessage } from './messaging'; +import { onceDocumentLoaded } from './events'; // From https://remysharp.com/2010/07/21/throttling-function-calls function throttle(fn: (x: any) => any, threshhold: any, scope?: any) { @@ -182,7 +183,7 @@ var scrollDisabled = true; const marker = new ActiveLineMarker(); const settings = getSettings(); -function onLoad() { +onceDocumentLoaded(() => { if (settings.scrollPreviewWithEditor) { setTimeout(() => { const initialLine = +settings.line; @@ -192,7 +193,7 @@ function onLoad() { } }, 0); } -} +}); const onUpdateView = (() => { const doScroll = throttle((line: number) => { @@ -208,14 +209,6 @@ const onUpdateView = (() => { }; })(); - -if (document.readyState === 'loading' || document.readyState === 'uninitialized') { - document.addEventListener('DOMContentLoaded', onLoad); -} else { - onLoad(); -} - - window.addEventListener('resize', () => { scrollDisabled = true; }, true);