improve markdown preview scroll sync (#58852)

* improve markdown preview scroll sync
This commit is contained in:
SteVen Batten
2018-09-18 15:08:37 -07:00
committed by GitHub
parent 0f4893299a
commit f8f4d3af30
7 changed files with 112 additions and 11 deletions

View File

@@ -27,6 +27,10 @@ const messaging = createPosterForVsCode(vscode);
window.cspAlerter.setPoster(messaging);
window.styleLoadingMonitor.setPoster(messaging);
window.onload = () => {
updateImageSizes();
};
onceDocumentLoaded(() => {
if (settings.scrollPreviewWithEditor) {
setTimeout(() => {
@@ -53,8 +57,32 @@ const onUpdateView = (() => {
};
})();
let updateImageSizes = throttle(() => {
const imageInfo: { id: string, height: number, width: number }[] = [];
let images = document.getElementsByTagName('img');
if (images) {
let i;
for (i = 0; i < images.length; i++) {
const img = images[i];
if (img.classList.contains('loading')) {
img.classList.remove('loading');
}
imageInfo.push({
id: img.id,
height: img.height,
width: img.width
});
}
messaging.postMessage('cacheImageSizes', imageInfo);
}
}, 50);
window.addEventListener('resize', () => {
scrollDisabled = true;
updateImageSizes();
}, true);
window.addEventListener('message', event => {