Try to disable caching in the simple browser's iframes

This commit is contained in:
Matt Bierner 2021-02-08 21:31:04 -08:00
parent 518097377d
commit 87a3effc79
4 changed files with 28 additions and 6 deletions

View file

@ -194,9 +194,19 @@ events_1.onceDocumentLoaded(() => {
iframe.src = input.value;
});
navigateTo(settings.url);
input.value = settings.url;
toggleFocusLockIndicatorEnabled(settings.focusLockIndicatorEnabled);
function navigateTo(url) {
iframe.src = url;
function navigateTo(rawUrl) {
try {
const url = new URL(rawUrl);
// Try to bust the cache for the iframe
// There does not appear to be any way to reliably do this except modifying the url
url.searchParams.append('vscodeBrowserReqId', Date.now().toString());
iframe.src = url.toString();
}
catch (_a) {
iframe.src = rawUrl;
}
}
});
function toggleFocusLockIndicatorEnabled(enabled) {

File diff suppressed because one or more lines are too long

View file

@ -84,10 +84,22 @@ onceDocumentLoaded(() => {
});
navigateTo(settings.url);
input.value = settings.url;
toggleFocusLockIndicatorEnabled(settings.focusLockIndicatorEnabled);
function navigateTo(url: string): void {
iframe.src = url;
function navigateTo(rawUrl: string): void {
try {
const url = new URL(rawUrl);
// Try to bust the cache for the iframe
// There does not appear to be any way to reliably do this except modifying the url
url.searchParams.append('vscodeBrowserReqId', Date.now().toString());
iframe.src = url.toString();
} catch {
iframe.src = rawUrl;
}
}
});

View file

@ -129,7 +129,7 @@ export class SimpleBrowserView extends Disposable {
class="reload-button icon"><i class="codicon codicon-refresh"></i></button>
</nav>
<input class="url-input" type="text" value=${url}>
<input class="url-input" type="text">
<nav class="controls">
<button