Skip to content

Commit 076c964

Browse files
committed
Simplify JS setup
1 parent 63a64ee commit 076c964

File tree

3 files changed

+5
-40
lines changed

3 files changed

+5
-40
lines changed

app/src/main/java/com/duckduckgo/app/browser/BrowserTabFragment.kt

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3424,23 +3424,6 @@ class BrowserTabFragment :
34243424
val script =
34253425
"""
34263426
(function() {
3427-
// Capture the injected object immediately
3428-
const ddgBlob = window.ddgBlobDownloadObj;
3429-
3430-
if (!ddgBlob) {
3431-
console.error('ddgBlobDownloadObj not found');
3432-
return;
3433-
}
3434-
3435-
try {
3436-
Object.defineProperty(window, 'ddgBlobDownloadObj', {
3437-
value: ddgBlob,
3438-
writable: false,
3439-
configurable: false,
3440-
});
3441-
} catch (e) {
3442-
console.warn('Could not protect ddgBlobDownloadObj:', e);
3443-
}
34443427
34453428
const urlToBlobCollection = {};
34463429
@@ -3469,17 +3452,17 @@ class BrowserTabFragment :
34693452
}
34703453
34713454
const pingMessage = 'Ping:' + window.location.href;
3472-
ddgBlob.postMessage(pingMessage);
3455+
window.ddgBlobDownloadObj.postMessage(pingMessage);
34733456
console.log('Sent ping message for blob downloads: ' + pingMessage);
34743457
3475-
ddgBlob.addEventListener('message', function(event) {
3458+
window.ddgBlobDownloadObj.addEventListener('message', function(event) {
34763459
if (event.data.startsWith('blob:')) {
34773460
console.log(event.data);
34783461
const blob = urlToBlobCollection[event.data];
34793462
if (blob) {
34803463
blobToBase64DataUrl(blob).then((dataUrl) => {
34813464
console.log('Sending data URL back to native ' + dataUrl);
3482-
ddgBlob.postMessage(dataUrl);
3465+
window.ddgBlobDownloadObj.postMessage(dataUrl);
34833466
});
34843467
} else {
34853468
console.log('No Blob found for URL: ' + event.data);

app/src/main/java/com/duckduckgo/app/browser/WebViewCompatTestHelper.kt

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -130,13 +130,11 @@ class RealWebViewCompatTestHelper @Inject constructor(
130130
webView.context.resources?.openRawResource(R.raw.webviewcompat_test_script)
131131
?.bufferedReader().use { it?.readText() }.orEmpty()
132132
.replace(delay, config.settings?.jsInitialPingDelay?.toString() ?: "0")
133-
.replace(com.duckduckgo.app.browser.postInitialPing, config.jsSendsInitialPing.toString())
134-
.replace(com.duckduckgo.app.browser.replyToNativeMessages, config.jsRepliesToNativeMessages.toString())
133+
.replace(postInitialPing, config.jsSendsInitialPing.toString())
134+
.replace(replyToNativeMessages, config.jsRepliesToNativeMessages.toString())
135135
.replace(objectName, if (useDedicatedListener) "webViewCompatTestObj" else "ddgBlobDownloadObj")
136136
}
137137

138-
// logcat("Cris") {"Script: $script"}
139-
140138
webViewCompatWrapper.addDocumentStartJavaScript(webView, script, setOf("*"))
141139

142140
if (useDedicatedListener) {

app/src/main/res/raw/webviewcompat_test_script.js

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,6 @@
22
// Capture the injected object immediately
33
const ddgObj = window.$OBJECT_NAME$;
44

5-
if (!ddgObj) {
6-
console.error('$OBJECT_NAME$ not found');
7-
return;
8-
}
9-
10-
// Make it read-only to prevent overwrites (don't delete - other scripts may need it)
11-
try {
12-
Object.defineProperty(window, '$OBJECT_NAME$', {
13-
value: ddgObj,
14-
writable: false,
15-
configurable: false,
16-
});
17-
} catch (e) {
18-
console.warn('Could not protect $OBJECT_NAME$:', e);
19-
}
20-
215
const supportedMessages = ["ContextMenuOpened", "PageStarted"];
226

237
const delay = $DELAY$;

0 commit comments

Comments
 (0)