Skip to content

Commit 6b9e711

Browse files
committed
Bug 1871135 - Add content analysis support to clipboard operations r=edgar,nika,masayuki,devtools-reviewers
When content analysis is on, pastes will be checked by the CA agent while tab input is blocked. The synchronous nsIClipboard.getData() method must block until the analysis result is received, so this requires doing a SpinEventLoopUntil. Differential Revision: https://phabricator.services.mozilla.com/D196997
1 parent 765c537 commit 6b9e711

40 files changed

+561
-100
lines changed

accessible/tests/mochitest/common.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -848,7 +848,11 @@ function getTextFromClipboard() {
848848
}
849849

850850
trans.addDataFlavor("text/plain");
851-
Services.clipboard.getData(trans, Services.clipboard.kGlobalClipboard);
851+
Services.clipboard.getData(
852+
trans,
853+
Services.clipboard.kGlobalClipboard,
854+
SpecialPowers.wrap(window).browsingContext.currentWindowContext
855+
);
852856

853857
var str = {};
854858
trans.getTransferData("text/plain", str);

browser/base/content/test/general/browser_bug1297539.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,11 @@ function getTransferableFromClipboard(asHTML) {
3131
} else {
3232
trans.addDataFlavor("text/plain");
3333
}
34-
Services.clipboard.getData(trans, Ci.nsIClipboard.kGlobalClipboard);
34+
Services.clipboard.getData(
35+
trans,
36+
Ci.nsIClipboard.kGlobalClipboard,
37+
SpecialPowers.wrap(window).browsingContext.currentWindowContext
38+
);
3539
return trans;
3640
}
3741

browser/components/screenshots/tests/browser/head.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -688,7 +688,11 @@ function getRawClipboardData(flavor) {
688688
);
689689
xferable.init(null);
690690
xferable.addDataFlavor(flavor);
691-
Services.clipboard.getData(xferable, whichClipboard);
691+
Services.clipboard.getData(
692+
xferable,
693+
whichClipboard,
694+
SpecialPowers.wrap(window).browsingContext.currentWindowContext
695+
);
692696
let data = {};
693697
try {
694698
// xferable.getTransferData(flavor, data);

browser/components/textrecognition/tests/browser/head.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,11 @@ function getTextFromClipboard() {
2020
);
2121
transferable.init(window.docShell.QueryInterface(Ci.nsILoadContext));
2222
transferable.addDataFlavor("text/plain");
23-
Services.clipboard.getData(transferable, Services.clipboard.kGlobalClipboard);
23+
Services.clipboard.getData(
24+
transferable,
25+
Services.clipboard.kGlobalClipboard,
26+
SpecialPowers.wrap(window).browsingContext.currentWindowContext
27+
);
2428

2529
const results = {};
2630
transferable.getTransferData("text/plain", results);

browser/extensions/screenshots/test/browser/head.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,11 @@ function getRawClipboardData(flavor) {
131131
);
132132
xferable.init(null);
133133
xferable.addDataFlavor(flavor);
134-
Services.clipboard.getData(xferable, whichClipboard);
134+
Services.clipboard.getData(
135+
xferable,
136+
whichClipboard,
137+
SpecialPowers.wrap(window).browsingContext.currentWindowContext
138+
);
135139
let data = {};
136140
try {
137141
xferable.getTransferData(flavor, data);

devtools/client/webconsole/test/browser/head.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1838,7 +1838,11 @@ async function getImageSizeFromClipboard() {
18381838
trans.init(null);
18391839
trans.addDataFlavor(flavor);
18401840

1841-
clip.getData(trans, clipid.kGlobalClipboard);
1841+
clip.getData(
1842+
trans,
1843+
clipid.kGlobalClipboard,
1844+
SpecialPowers.wrap(window).browsingContext.currentWindowContext
1845+
);
18421846
const data = {};
18431847
trans.getTransferData(flavor, data);
18441848

dom/base/test/copypaste.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,11 @@ async function testCopyPaste(isXHTML) {
9999
].createInstance(SpecialPowers.Ci.nsITransferable);
100100
transferable.init(getLoadContext());
101101
transferable.addDataFlavor(mime);
102-
clipboard.getData(transferable, 1);
102+
clipboard.getData(
103+
transferable,
104+
1,
105+
SpecialPowers.wrap(window).browsingContext.currentWindowContext
106+
);
103107
var data = SpecialPowers.createBlankObject();
104108
transferable.getTransferData(mime, data);
105109
return data;

dom/base/test/test_bug166235.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@
5858
.createInstance(SpecialPowers.Ci.nsITransferable);
5959
transferable.init(getLoadContext());
6060
transferable.addDataFlavor(mime);
61-
clipboard.getData(transferable, 1);
61+
clipboard.getData(transferable, 1, SpecialPowers.wrap(window).browsingContext.currentWindowContext);
6262
var data = SpecialPowers.createBlankObject();
6363
transferable.getTransferData(mime, data) ;
6464
return SpecialPowers.wrap(data);

dom/base/test/test_copyimage.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
.QueryInterface(Ci.nsILoadContext);
3131
transferable.init(loadingContext);
3232
transferable.addDataFlavor(mime);
33-
clipboard.getData(transferable, 1);
33+
clipboard.getData(transferable, 1, SpecialPowers.wrap(window).browsingContext.currentWindowContext);
3434
var data = SpecialPowers.createBlankObject();
3535
transferable.getTransferData(mime, data);
3636
return data;

dom/base/test/test_copypaste_disabled.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
].createInstance(SpecialPowers.Ci.nsITransferable);
6060
transferable.init(getLoadContext());
6161
transferable.addDataFlavor(mime);
62-
clipboard.getData(transferable, 1);
62+
clipboard.getData(transferable, 1, SpecialPowers.wrap(window).browsingContext.currentWindowContext);
6363
var data = SpecialPowers.createBlankObject();
6464
transferable.getTransferData(mime, data);
6565
return data;

0 commit comments

Comments
 (0)