提交 8077bd07 编写于 作者: M Matt Bierner

Use arrow functions

上级 3f53efa5
......@@ -9,7 +9,6 @@
// @ts-ignore
const ipcRenderer = require('electron').ipcRenderer;
const registerVscodeResourceScheme = (function () {
let hasRegistered = false;
return () => {
......@@ -40,26 +39,29 @@
initialScrollProgress: undefined
};
function styleBody(body) {
/**
* @param {HTMLElement} body
*/
const styleBody = (body) => {
if (!body) {
return;
}
body.classList.remove('vscode-light', 'vscode-dark', 'vscode-high-contrast');
body.classList.add(initData.activeTheme);
}
};
function getActiveFrame() {
const getActiveFrame = () => {
return /** @type {HTMLIFrameElement} */ (document.getElementById('active-frame'));
}
};
function getPendingFrame() {
const getPendingFrame = () => {
return /** @type {HTMLIFrameElement} */ (document.getElementById('pending-frame'));
}
};
/**
* @param {MouseEvent} event
*/
function handleInnerClick(event) {
const handleInnerClick = (event) => {
if (!event || !event.view || !event.view.document) {
return;
}
......@@ -84,9 +86,9 @@
}
node = node.parentNode;
}
}
};
function onMessage(message) {
const onMessage = (message) => {
if (enableWrappedPostMessage) {
// Modern webview. Forward wrapped message
ipcRenderer.sendToHost('onmessage', message.data);
......@@ -94,10 +96,10 @@
// Old school webview. Forward exact message
ipcRenderer.sendToHost(message.data.command, message.data.data);
}
}
};
var isHandlingScroll = false;
function handleInnerScroll(event) {
const handleInnerScroll = (event) => {
if (isHandlingScroll) {
return;
}
......@@ -108,7 +110,7 @@
}
isHandlingScroll = true;
window.requestAnimationFrame(function () {
window.requestAnimationFrame(() => {
try {
ipcRenderer.sendToHost('did-scroll', progress);
} catch (e) {
......@@ -116,14 +118,14 @@
}
isHandlingScroll = false;
});
}
};
document.addEventListener('DOMContentLoaded', function () {
ipcRenderer.on('baseUrl', function (event, value) {
document.addEventListener('DOMContentLoaded', () => {
ipcRenderer.on('baseUrl', (event, value) => {
initData.baseUrl = value;
});
ipcRenderer.on('styles', function (event, variables, activeTheme) {
ipcRenderer.on('styles', (event, variables, activeTheme) => {
initData.styles = variables;
initData.activeTheme = activeTheme;
......@@ -136,13 +138,13 @@
styleBody(body[0]);
// iframe
Object.keys(variables).forEach(function (variable) {
Object.keys(variables).forEach((variable) => {
target.contentDocument.documentElement.style.setProperty(`--${variable}`, variables[variable]);
});
});
// propagate focus
ipcRenderer.on('focus', function () {
ipcRenderer.on('focus', () => {
const target = getActiveFrame();
if (target) {
target.contentWindow.focus();
......@@ -150,7 +152,7 @@
});
// update iframe-contents
ipcRenderer.on('content', function (_event, data) {
ipcRenderer.on('content', (_event, data) => {
const options = data.options;
enableWrappedPostMessage = options && options.enableWrappedPostMessage;
......@@ -210,7 +212,7 @@
const defaultStyles = newDocument.createElement('style');
defaultStyles.id = '_defaultStyles';
const vars = Object.keys(initData.styles || {}).map(function (variable) {
const vars = Object.keys(initData.styles || {}).map(variable => {
return `--${variable}: ${initData.styles[variable]};`;
});
defaultStyles.innerHTML = `
......@@ -291,7 +293,7 @@
var setInitialScrollPosition;
if (firstLoad) {
firstLoad = false;
setInitialScrollPosition = function (body) {
setInitialScrollPosition = (body) => {
if (!isNaN(initData.initialScrollProgress)) {
if (body.scrollTop === 0) {
body.scrollTop = body.clientHeight * initData.initialScrollProgress;
......@@ -300,7 +302,7 @@
};
} else {
const scrollY = frame && frame.contentDocument && frame.contentDocument.body ? frame.contentDocument.body.scrollTop : 0;
setInitialScrollPosition = function (body) {
setInitialScrollPosition = (body) => {
if (body.scrollTop === 0) {
body.scrollTop = scrollY;
}
......@@ -324,12 +326,12 @@
// write new content onto iframe
newFrame.contentDocument.open('text/html', 'replace');
newFrame.contentWindow.onbeforeunload = function () {
newFrame.contentWindow.onbeforeunload = () => {
console.log('prevented webview navigation');
return false;
};
var onLoad = function (contentDocument, contentWindow) {
var onLoad = (contentDocument, contentWindow) => {
if (contentDocument.body) {
// Workaround for https://github.com/Microsoft/vscode/issues/12865
// check new scrollTop and reset if neccessary
......@@ -349,7 +351,7 @@
newFrame.style.visibility = 'visible';
contentWindow.addEventListener('scroll', handleInnerScroll);
pendingMessages.forEach(function (data) {
pendingMessages.forEach((data) => {
contentWindow.postMessage(data, '*');
});
pendingMessages = [];
......@@ -358,7 +360,7 @@
clearTimeout(loadTimeout);
loadTimeout = undefined;
loadTimeout = setTimeout(function () {
loadTimeout = setTimeout(() => {
clearTimeout(loadTimeout);
loadTimeout = undefined;
onLoad(newFrame.contentDocument, newFrame.contentWindow);
......@@ -382,7 +384,7 @@
});
// Forward message to the embedded iframe
ipcRenderer.on('message', function (event, data) {
ipcRenderer.on('message', (event, data) => {
const pending = getPendingFrame();
if (pending) {
pendingMessages.push(data);
......@@ -394,7 +396,7 @@
}
});
ipcRenderer.on('initial-scroll-position', function (event, progress) {
ipcRenderer.on('initial-scroll-position', (event, progress) => {
initData.initialScrollProgress = progress;
});
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册