Chromium Code Reviews| Index: chrome/common/extensions/api/tab_capture.idl |
| diff --git a/chrome/common/extensions/api/tab_capture.idl b/chrome/common/extensions/api/tab_capture.idl |
| index c6489d6f6980c167c3b898864692979588bec2d5..7fee5dcc4c4d5f6cb0364d288490297a573755c3 100644 |
| --- a/chrome/common/extensions/api/tab_capture.idl |
| +++ b/chrome/common/extensions/api/tab_capture.idl |
| @@ -66,6 +66,39 @@ namespace tabCapture { |
| // to prevent redundant requests for the same tab). |
| // |callback| : Callback invoked with CaptureInfo[] for captured tabs. |
| static void getCapturedTabs(GetCapturedTabsCallback callback); |
| + |
| + // Locates, or creates on-demand, an off-screen tab identified by a |
| + // |startUrl| and |id|. When created, the off-screen tab is automatically |
|
not at google - send to devlin
2015/09/25 16:56:03
Where does the id come from?
miu
2015/09/25 17:35:32
This is explained a few sentences later in this pa
not at google - send to devlin
2015/09/25 17:42:04
Yeah I didn't read on, but my follow-up was, it do
miu
2015/09/25 18:47:54
See line 268 in tab_capture_api.cc. It is passed
not at google - send to devlin
2015/09/25 19:13:24
ok, 3rd question: can the API generate one itself?
miu
2015/09/25 21:59:17
As I was answering your question, I'm now thinking
not at google - send to devlin
2015/09/25 22:29:55
Yes I'd like to avoid having an ID here. If you wa
miu
2015/09/26 20:40:14
Done.
However, I forgot to mention there is a sec
not at google - send to devlin
2015/09/30 01:32:11
I'll reply there.
miu
2015/09/30 19:46:38
Didn't see a comment there. Does that mean this i
|
| + // navigated to the given |startUrl|. Then, capture is started and a |
| + // MediaStream is returned via |callback|. |id| can be any client-provided |
| + // string. It is used only to disambiguate off-screen tabs with the same |
| + // |startUrl|. |
| + // |
| + // Off-screen tabs are isolated from the user's normal browser experience. |
| + // They do not show up in the browser window or tab strip, nor are they |
| + // visible to extensions (e.g., via the chrome.tabs.* APIs). |
| + // |
| + // An off-screen tab remains alive until one of three events occurs: 1. All |
| + // MediaStreams providing its captured content are closed; 2. the page |
| + // self-closes (e.g., via window.close()); 3. the extension that called |
| + // captureOffscreenTab() is unloaded. |
| + // |
| + // Sandboxing: The off-screen tab does not have any access whatsoever to the |
| + // local user profile (including cookies, HTTP auth, etc.). Instead, it is |
| + // provided its own dedicated, non-shared off-the-record profile. Also, it |
|
not at google - send to devlin
2015/09/25 22:29:55
Can we say "sandboxed" instead of "off-the-record"
miu
2015/09/26 20:40:14
Done.
|
| + // cannot access any interactive resources such as keyboard/mouse input, |
| + // media recording devices (e.g., web cams), copy/paste to/from the system |
| + // clipboard, etc. |
| + // |
| + // Note: This is a new API, currently only available via whitelisting, and |
|
not at google - send to devlin
2015/09/25 22:29:55
whitelisting? This is dev channel now right? The d
miu
2015/09/26 20:40:14
I wasn't sure we were ready for dev-channel yet, g
not at google - send to devlin
2015/09/30 01:32:11
Makes sense. Just double checking.
|
| + // may change without notice. |
| + // |
| + // |options| : Constraints for the capture and returned MediaStream. |
| + // |callback| : <code>null</code> on error. |
| + static void captureOffscreenTab(DOMString startUrl, |
| + DOMString id, |
| + CaptureOptions options, |
| + GetTabMediaCallback callback); |
| }; |
| interface Events { |