Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(135)

Issue 11093080: <webview>: First stab at implementing media permission request for guests. (Closed)

Created:
8 years, 2 months ago by lazyboy
Modified:
7 years, 9 months ago
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, jam
Visibility:
Public.

Description

<webview>: First stab at implementing media permission request for guests. We allow/deny the media permission on embedder's WebContents when a guest's WebContents requests for the permission. The embedder js api looks like: 1. <webview id="webview1" src=...></webview> webview1.addEventListener('permissionrequest', function(e) { if (e.permission == 'media') e.request.allow(); // Or e.request.deny(); // if no listener call allow/deny, the request is auto denied. }); 2. If embedder wants to defer on deciding, they must call preventDefault(); <webview ...> webview.addEventListener('permissionrequest', function(e) { e.preventDefault(); setTimeout(function() { e.request.allow(); }, 10000); }); 3. If there are no listeners attached, request is auto denied. 4. If there are multiple listeners attached and each are trying to call allow/deny, we implement 'first call wins', subsequent calls to allow/deny will throw exception. <webview ...> webview.addEventListener('permissionrequest', function(e) { // assume this listener fires first. e.request.allow(); }); webview.addEventListener('permissionrequest', function(e) { // Assume this listener fires later. // Calling e.request.allow() or e.request.deny() will throw exception. }); 5. Deferring on calling allow/deny can be done indefinitely and once the event.request object goes out of scope, we auto deny if decision has not yet been made: <webview ...> webview.addEventListener('permissionrequest', function(e) { e.preventDefault(); setTimeout(function() { if (e.type == 'something') do_something_else; // so 'e.request' is still live. }, 2000); // After 2000ms, e/e.request goes out of scope == auto deny on next gc. }); When the guest requests a permission (BrowserPluginGuest.RequestMediaAccessPermission()), we send the info to the renderer BrowserPlugin, which runs the embedder js api function as above. BUG=141197, 153540 TEST=Added browser_tests: WebViewTest.MediaAccess* Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=185503

Patch Set 1 : #

Patch Set 2 : Use correct base for upload. #

Total comments: 2

Patch Set 3 : Address comments from fsamuel@ #

Total comments: 24

Patch Set 4 : Sync check only. #

Patch Set 5 : Address comments from creis@ #

Patch Set 6 : Remove exposing permission callback + import refactors from other CL. #

Patch Set 7 : Use v8::String::New(char*, len) instead of v8::String::New(char*) #

Patch Set 8 : Add tests + @tott #

Patch Set 9 : Reup patch, with new style event handling + fix tests. #

Total comments: 7

Patch Set 10 : Address comments. #

Patch Set 11 : Sync and reup patch for review. #

Total comments: 25

Patch Set 12 : Address comments. #

Patch Set 13 : Behind dev channel only permission flag now + make it work @tott. #

Patch Set 14 : Forgot to add new js filej' #

Patch Set 15 : Nit fix #

Total comments: 18

Patch Set 16 : Address comments from Fady. #

Patch Set 17 : Add todo for auto deny when no listeners attached. #

Total comments: 34

Patch Set 18 : Address comments + sync @tott. #

Patch Set 19 : Handle multiple listeners based on our discussion, requires 2 webkit changes. #

Total comments: 1

Patch Set 20 : Implement first allow/deny wins, still requires preventDefault impl + now tests pass. #

Total comments: 8

Patch Set 21 : Fix tests locally. #

Patch Set 22 : Fix tests again, ready for trybot. #

Patch Set 23 : Patch for trybot again #1 #

Patch Set 24 : Remove hanging request on garbage collection, yay! #

Total comments: 24

Patch Set 25 : Address comments from Fady, fix tests. #

Total comments: 2

Patch Set 26 : Plugin can be destroyed before we get Weak Callback, fixed. #

Total comments: 38

Patch Set 27 : Address comments from creis@ #

Total comments: 22

Patch Set 28 : Address comments from fsamuel@ #

Total comments: 8

Patch Set 29 : Address comments from Fady. #

Total comments: 12

Patch Set 30 : Rewrite tests for trybots + Address comments from creis@ #

Patch Set 31 : Clean up the tests a bit. #

Total comments: 10

Patch Set 32 : Address comment from creis@ #

Total comments: 5

Patch Set 33 : Address comments from mpcomplete@ #

Total comments: 2

Patch Set 34 : Add period at the end of sentence. #

Total comments: 6

Patch Set 35 : Address comments from abarth@, call map.erase asynchronously. #

Total comments: 1

Patch Set 36 : Upload #

Patch Set 37 : Sync. #

Total comments: 4

Patch Set 38 : Address comments from cdn@, use enums for permission_type. #

Total comments: 2

Patch Set 39 : Address comments from fsamuel@, separate enum to different file. #

Patch Set 40 : Fix header guard name. #

Total comments: 30

Patch Set 41 : Address comments from abarth@ #

Total comments: 2

Patch Set 42 : Sync @tott. #

Patch Set 43 : Sync + remove one incorrect DCHECK. #

Patch Set 44 : Fix copyright header. #

Patch Set 45 : Fix file name in chrome_renderer.gypi #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1070 lines, -14 lines) Patch
M chrome/browser/extensions/web_view_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 4 chunks +80 lines, -0 lines 0 comments Download
M chrome/chrome_renderer.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 1 chunk +1 line, -0 lines 0 comments Download
M chrome/renderer/extensions/dispatcher.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 2 chunks +6 lines, -0 lines 0 comments Download
M chrome/renderer/resources/extensions/web_view.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 2 chunks +10 lines, -1 line 0 comments Download
A chrome/renderer/resources/extensions/web_view_experimental.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 1 chunk +76 lines, -0 lines 0 comments Download
M chrome/renderer/resources/renderer_resources.grd View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 1 chunk +1 line, -0 lines 0 comments Download
A + chrome/test/data/extensions/platform_apps/web_view/media_access/allow/embedder.html View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 1 chunk +2 lines, -1 line 0 comments Download
A chrome/test/data/extensions/platform_apps/web_view/media_access/allow/embedder.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 1 chunk +245 lines, -0 lines 0 comments Download
A + chrome/test/data/extensions/platform_apps/web_view/media_access/allow/manifest.json View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 1 chunk +2 lines, -1 line 0 comments Download
A + chrome/test/data/extensions/platform_apps/web_view/media_access/allow/test.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 1 chunk +1 line, -1 line 0 comments Download
A + chrome/test/data/extensions/platform_apps/web_view/media_access/deny/embedder.html View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 1 chunk +2 lines, -1 line 0 comments Download
A chrome/test/data/extensions/platform_apps/web_view/media_access/deny/embedder.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 1 chunk +187 lines, -0 lines 0 comments Download
A + chrome/test/data/extensions/platform_apps/web_view/media_access/deny/manifest.json View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 1 chunk +2 lines, -1 line 0 comments Download
A + chrome/test/data/extensions/platform_apps/web_view/media_access/deny/test.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 1 chunk +1 line, -1 line 0 comments Download
A chrome/test/data/extensions/platform_apps/web_view/media_access/media_access_guest.html View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 1 chunk +50 lines, -0 lines 0 comments Download
M content/browser/browser_plugin/browser_plugin_embedder.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/browser_plugin/browser_plugin_guest.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 6 chunks +26 lines, -0 lines 0 comments Download
M content/browser/browser_plugin/browser_plugin_guest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 7 chunks +61 lines, -2 lines 0 comments Download
A content/common/browser_plugin_message_enums.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 1 chunk +16 lines, -0 lines 0 comments Download
M content/common/browser_plugin_messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 4 chunks +24 lines, -0 lines 0 comments Download
M content/content_common.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/browser_plugin/browser_plugin.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 8 chunks +54 lines, -2 lines 0 comments Download
M content/renderer/browser_plugin/browser_plugin.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 6 chunks +156 lines, -1 line 0 comments Download
M content/renderer/browser_plugin/browser_plugin_bindings.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 4 chunks +48 lines, -2 lines 0 comments Download
M content/renderer/browser_plugin/browser_plugin_constants.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 3 chunks +8 lines, -0 lines 0 comments Download
M content/renderer/browser_plugin/browser_plugin_constants.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 3 chunks +8 lines, -0 lines 0 comments Download
M content/renderer/browser_plugin/browser_plugin_manager_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 79 (0 generated)
lazyboy
(Adding Fady for taking initial look)
8 years, 2 months ago (2012-10-11 21:21:01 UTC) #1
Fady Samuel
From an overall perspective, this is really cool! What happens in Chrome Apps though?
8 years, 2 months ago (2012-10-11 21:29:28 UTC) #2
Fady Samuel
http://codereview.chromium.org/11093080/diff/5001/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (right): http://codereview.chromium.org/11093080/diff/5001/content/renderer/browser_plugin/browser_plugin.cc#newcode77 content/renderer/browser_plugin/browser_plugin.cc:77: if (instance_id != -1 && request_id != -1) { ...
8 years, 2 months ago (2012-10-11 21:41:00 UTC) #3
lazyboy
Adding creis@ for review. https://chromiumcodereview.appspot.com/11093080/diff/5001/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (right): https://chromiumcodereview.appspot.com/11093080/diff/5001/content/renderer/browser_plugin/browser_plugin.cc#newcode77 content/renderer/browser_plugin/browser_plugin.cc:77: if (instance_id != -1 && ...
8 years, 2 months ago (2012-10-11 23:05:07 UTC) #4
Charlie Reis
Sorry for the long delay here, but things got crazy right around the time of ...
8 years, 2 months ago (2012-10-17 06:18:45 UTC) #5
lazyboy
I've trimmed the CL description a bit. I will remove the long TEST=description after I've ...
8 years, 2 months ago (2012-10-17 09:09:53 UTC) #6
lazyboy
I've updated the CL to *not* expose the permission api flow. Video/webcam also works now ...
8 years, 2 months ago (2012-10-19 19:52:49 UTC) #7
Fady Samuel
I haven't done a thorough review yet (will do so tomorrow), but this looks cool. ...
8 years, 1 month ago (2012-11-16 03:42:59 UTC) #8
sadrul
I looked at the shim and the code in renderer/browser_plugin/. I think this looks good. ...
8 years, 1 month ago (2012-11-16 03:59:53 UTC) #9
lazyboy
https://chromiumcodereview.appspot.com/11093080/diff/37001/chrome/renderer/resources/extensions/web_view.js File chrome/renderer/resources/extensions/web_view.js (right): https://chromiumcodereview.appspot.com/11093080/diff/37001/chrome/renderer/resources/extensions/web_view.js#newcode132 chrome/renderer/resources/extensions/web_view.js:132: WebView.prototype.setupPermissionRequestEvent_ = function(mutation) { On 2012/11/16 03:59:53, sadrul wrote: ...
8 years, 1 month ago (2012-11-16 06:27:09 UTC) #10
lazyboy
Charlie, this should be good to review now. I'm not having much luck running the ...
8 years, 1 month ago (2012-11-19 21:17:15 UTC) #11
Charlie Reis
This is looking pretty good! A few comments and questions below. https://chromiumcodereview.appspot.com/11093080/diff/37003/chrome/renderer/resources/extensions/web_view.js File chrome/renderer/resources/extensions/web_view.js (right): ...
8 years, 1 month ago (2012-11-20 01:54:00 UTC) #12
lazyboy
https://chromiumcodereview.appspot.com/11093080/diff/37003/chrome/renderer/resources/extensions/web_view.js File chrome/renderer/resources/extensions/web_view.js (right): https://chromiumcodereview.appspot.com/11093080/diff/37003/chrome/renderer/resources/extensions/web_view.js#newcode124 chrome/renderer/resources/extensions/web_view.js:124: ['reason'], On 2012/11/20 01:54:00, creis wrote: > The API ...
8 years, 1 month ago (2012-11-20 02:55:20 UTC) #13
lazyboy
Moved the permission api behind flag/dev channel as we discussed, should be good to be ...
8 years ago (2012-12-04 23:08:28 UTC) #14
Fady Samuel
You mentioned that one of the tests don't work on the bots. Could you please ...
8 years ago (2012-12-05 22:14:32 UTC) #15
Fady Samuel
https://codereview.chromium.org/11093080/diff/55001/content/browser/browser_plugin/browser_plugin_guest.cc File content/browser/browser_plugin/browser_plugin_guest.cc (right): https://codereview.chromium.org/11093080/diff/55001/content/browser/browser_plugin/browser_plugin_guest.cc#newcode80 content/browser/browser_plugin/browser_plugin_guest.cc:80: media_requests_map_.clear(); I believe this is unnecessary.
8 years ago (2012-12-05 22:47:31 UTC) #16
lazyboy
https://chromiumcodereview.appspot.com/11093080/diff/55001/chrome/renderer/resources/extensions/web_view_permission_api.js File chrome/renderer/resources/extensions/web_view_permission_api.js (right): https://chromiumcodereview.appspot.com/11093080/diff/55001/chrome/renderer/resources/extensions/web_view_permission_api.js#newcode30 chrome/renderer/resources/extensions/web_view_permission_api.js:30: // TODO(lazyboy): Also fill in webViewEvt.url and webViewEvt.details (see ...
8 years ago (2012-12-06 00:05:52 UTC) #17
lazyboy
Charlie, this should be good to take another look.
8 years ago (2012-12-06 20:28:42 UTC) #18
Charlie Reis
Thanks. Can you further update the CL description? We should change "type" to "permission," and ...
8 years ago (2012-12-07 19:16:25 UTC) #19
lazyboy
Updated the CL description. https://chromiumcodereview.appspot.com/11093080/diff/71001/chrome/common/extensions/permissions/api_permission.h File chrome/common/extensions/permissions/api_permission.h (right): https://chromiumcodereview.appspot.com/11093080/diff/71001/chrome/common/extensions/permissions/api_permission.h#newcode117 chrome/common/extensions/permissions/api_permission.h:117: kWebViewPermissionAPI, On 2012/12/07 19:16:25, creis ...
8 years ago (2012-12-07 22:50:44 UTC) #20
lazyboy
Hey, I've updated the CL to handle multiple event listeners as we discussed. PTAL. Couple ...
8 years ago (2012-12-10 22:21:37 UTC) #21
Charlie Reis
On 2012/12/10 22:21:37, lazyboy wrote: > Hey, > I've updated the CL to handle multiple ...
8 years ago (2012-12-13 00:48:04 UTC) #22
Charlie Reis
The code looks mostly ready, but there are still two big questions about how an ...
8 years ago (2012-12-17 22:28:09 UTC) #23
Fady Samuel
Some nits I noticed. This doesn't match the API we discussed with abarth@ quite yet. ...
7 years, 10 months ago (2013-02-05 17:53:26 UTC) #24
lazyboy
Fady: Can you take a look again? I've included the garbage collection stuff for event.request ...
7 years, 10 months ago (2013-02-07 04:38:42 UTC) #25
Fady Samuel
This looks great! I'm really excited by this. This API is beautiful thanks to you, ...
7 years, 10 months ago (2013-02-07 15:40:34 UTC) #26
lazyboy
https://chromiumcodereview.appspot.com/11093080/diff/112002/chrome/test/data/extensions/platform_apps/web_view/media_access/embedder_has_no_permission/embedder.js File chrome/test/data/extensions/platform_apps/web_view/media_access/embedder_has_no_permission/embedder.js (right): https://chromiumcodereview.appspot.com/11093080/diff/112002/chrome/test/data/extensions/platform_apps/web_view/media_access/embedder_has_no_permission/embedder.js#newcode44 chrome/test/data/extensions/platform_apps/web_view/media_access/embedder_has_no_permission/embedder.js:44: webview.contentWindow.frames.postMessage( On 2013/02/07 15:40:34, Fady Samuel wrote: > webview.contentWindow.postMessage ...
7 years, 10 months ago (2013-02-07 21:24:41 UTC) #27
Fady Samuel
https://codereview.chromium.org/11093080/diff/115007/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (right): https://codereview.chromium.org/11093080/diff/115007/content/renderer/browser_plugin/browser_plugin.cc#newcode856 content/renderer/browser_plugin/browser_plugin.cc:856: void BrowserPlugin::WeakCallbackForPersistObject( It just occurred to me: what happens ...
7 years, 10 months ago (2013-02-07 21:41:24 UTC) #28
lazyboy
https://codereview.chromium.org/11093080/diff/115007/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (right): https://codereview.chromium.org/11093080/diff/115007/content/renderer/browser_plugin/browser_plugin.cc#newcode856 content/renderer/browser_plugin/browser_plugin.cc:856: void BrowserPlugin::WeakCallbackForPersistObject( On 2013/02/07 21:41:24, Fady Samuel wrote: > ...
7 years, 10 months ago (2013-02-07 22:59:27 UTC) #29
lazyboy
Charlie, can you take a look again? The API now is aligned with what we ...
7 years, 10 months ago (2013-02-07 23:48:47 UTC) #30
Charlie Reis
On 2013/02/07 23:48:47, lazyboy wrote: > Charlie, can you take a look again? > The ...
7 years, 10 months ago (2013-02-09 01:20:18 UTC) #31
lazyboy
On 2013/02/09 01:20:18, creis wrote: > On 2013/02/07 23:48:47, lazyboy wrote: > > Charlie, can ...
7 years, 10 months ago (2013-02-09 03:01:51 UTC) #32
Charlie Reis
Making some good progress. Main high level question: have you thought about how this will ...
7 years, 10 months ago (2013-02-11 22:20:56 UTC) #33
lazyboy
re: generalizing to other permissions: yes Fady and I talked about this (Fady feels strongly ...
7 years, 10 months ago (2013-02-12 05:03:45 UTC) #34
Fady Samuel
https://codereview.chromium.org/11093080/diff/113006/content/browser/browser_plugin/browser_plugin_guest.cc File content/browser/browser_plugin/browser_plugin_guest.cc (right): https://codereview.chromium.org/11093080/diff/113006/content/browser/browser_plugin/browser_plugin_guest.cc#newcode50 content/browser/browser_plugin/browser_plugin_guest.cc:50: const size_t kNumMaxOutstandingMediaRequests = 1024; Hmm, I feel like ...
7 years, 10 months ago (2013-02-12 16:13:20 UTC) #35
lazyboy
https://chromiumcodereview.appspot.com/11093080/diff/113006/content/browser/browser_plugin/browser_plugin_guest.cc File content/browser/browser_plugin/browser_plugin_guest.cc (right): https://chromiumcodereview.appspot.com/11093080/diff/113006/content/browser/browser_plugin/browser_plugin_guest.cc#newcode50 content/browser/browser_plugin/browser_plugin_guest.cc:50: const size_t kNumMaxOutstandingMediaRequests = 1024; On 2013/02/12 16:13:20, Fady ...
7 years, 10 months ago (2013-02-12 18:57:51 UTC) #36
Fady Samuel
Just a few nits until Charlie gives this another look. https://chromiumcodereview.appspot.com/11093080/diff/116009/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (right): https://chromiumcodereview.appspot.com/11093080/diff/116009/content/renderer/browser_plugin/browser_plugin.cc#newcode541 ...
7 years, 10 months ago (2013-02-12 19:13:09 UTC) #37
lazyboy
https://chromiumcodereview.appspot.com/11093080/diff/116009/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (right): https://chromiumcodereview.appspot.com/11093080/diff/116009/content/renderer/browser_plugin/browser_plugin.cc#newcode541 content/renderer/browser_plugin/browser_plugin.cc:541: void BrowserPlugin::OnRequestPermission( On 2013/02/12 19:13:09, Fady Samuel wrote: > ...
7 years, 10 months ago (2013-02-12 22:14:33 UTC) #38
Charlie Reis
https://chromiumcodereview.appspot.com/11093080/diff/120008/content/browser/browser_plugin/browser_plugin_guest.cc File content/browser/browser_plugin/browser_plugin_guest.cc (right): https://chromiumcodereview.appspot.com/11093080/diff/120008/content/browser/browser_plugin/browser_plugin_guest.cc#newcode750 content/browser/browser_plugin/browser_plugin_guest.cc:750: // decision has not been made. I thought we ...
7 years, 10 months ago (2013-02-13 01:44:47 UTC) #39
lazyboy
I've rewritten tests to mock out requesting for media devices, trybots are expected to pass ...
7 years, 10 months ago (2013-02-13 04:07:47 UTC) #40
Charlie Reis
Ok, LGTM with the nits below. Please make sure http://crbug.com/175230 gets fixed before landing this, ...
7 years, 10 months ago (2013-02-13 21:08:05 UTC) #41
lazyboy
+abarth for v8 Persistent.MakeWeak changes and checking security issues with dom traversal, specifically: a) browser_plugin.cc: ...
7 years, 10 months ago (2013-02-13 22:17:34 UTC) #42
Matt Perry
https://chromiumcodereview.appspot.com/11093080/diff/137002/chrome/renderer/extensions/dispatcher.cc File chrome/renderer/extensions/dispatcher.cc (right): https://chromiumcodereview.appspot.com/11093080/diff/137002/chrome/renderer/extensions/dispatcher.cc#newcode834 chrome/renderer/extensions/dispatcher.cc:834: extension->HasAPIPermission(APIPermission::kExperimental)) { We actually deprecated the "experimental" permission. Instead, ...
7 years, 10 months ago (2013-02-13 23:20:08 UTC) #43
lazyboy
https://chromiumcodereview.appspot.com/11093080/diff/137002/chrome/renderer/extensions/dispatcher.cc File chrome/renderer/extensions/dispatcher.cc (right): https://chromiumcodereview.appspot.com/11093080/diff/137002/chrome/renderer/extensions/dispatcher.cc#newcode834 chrome/renderer/extensions/dispatcher.cc:834: extension->HasAPIPermission(APIPermission::kExperimental)) { On 2013/02/13 23:20:08, Matt Perry wrote: > ...
7 years, 10 months ago (2013-02-14 00:09:46 UTC) #44
Fady Samuel
Just a small nit until abarth@ reviews. https://codereview.chromium.org/11093080/diff/138001/chrome/renderer/resources/extensions/web_view_experimental.js File chrome/renderer/resources/extensions/web_view_experimental.js (right): https://codereview.chromium.org/11093080/diff/138001/chrome/renderer/resources/extensions/web_view_experimental.js#newcode21 chrome/renderer/resources/extensions/web_view_experimental.js:21: 'Permission has ...
7 years, 10 months ago (2013-02-14 00:11:36 UTC) #45
lazyboy
https://codereview.chromium.org/11093080/diff/138001/chrome/renderer/resources/extensions/web_view_experimental.js File chrome/renderer/resources/extensions/web_view_experimental.js (right): https://codereview.chromium.org/11093080/diff/138001/chrome/renderer/resources/extensions/web_view_experimental.js#newcode21 chrome/renderer/resources/extensions/web_view_experimental.js:21: 'Permission has already been decided for this "permissionrequest" event'; ...
7 years, 10 months ago (2013-02-14 00:13:56 UTC) #46
Matt Perry
lgtm https://chromiumcodereview.appspot.com/11093080/diff/137002/chrome/renderer/extensions/dispatcher.cc File chrome/renderer/extensions/dispatcher.cc (right): https://chromiumcodereview.appspot.com/11093080/diff/137002/chrome/renderer/extensions/dispatcher.cc#newcode834 chrome/renderer/extensions/dispatcher.cc:834: extension->HasAPIPermission(APIPermission::kExperimental)) { On 2013/02/14 00:09:46, lazyboy wrote: > ...
7 years, 10 months ago (2013-02-14 00:22:46 UTC) #47
abarth-chromium
Some comments below. I'll try to give you more comments later today. The general approach ...
7 years, 10 months ago (2013-02-14 18:56:53 UTC) #48
abarth-chromium
Maybe a good approach here is to call OnRequestObjectGarbageCollected asynchronously? That will solve the re-entrancy ...
7 years, 10 months ago (2013-02-14 20:46:45 UTC) #49
lazyboy
On 2013/02/14 20:46:45, abarth wrote: > Maybe a good approach here is to call OnRequestObjectGarbageCollected ...
7 years, 10 months ago (2013-02-14 21:03:56 UTC) #50
abarth-chromium
> Out of curiosity, if we don't iterate the map, then would this code be ...
7 years, 10 months ago (2013-02-14 21:15:50 UTC) #51
lazyboy
"It was a little worrying that you needed to walk the ancestor list. I didn't ...
7 years, 10 months ago (2013-02-14 21:47:19 UTC) #52
Fady Samuel
https://codereview.chromium.org/11093080/diff/131013/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (right): https://codereview.chromium.org/11093080/diff/131013/content/renderer/browser_plugin/browser_plugin.cc#newcode904 content/renderer/browser_plugin/browser_plugin.cc:904: MessageLoop::current()->PostTask( Hmm, the obligatory "What happens if you remove ...
7 years, 10 months ago (2013-02-14 21:54:45 UTC) #53
abarth-chromium
> We want to check if plugin or any ancestors of the plugin has any ...
7 years, 10 months ago (2013-02-14 21:59:23 UTC) #54
lazyboy
On 2013/02/14 21:59:23, abarth wrote: > > We want to check if plugin or any ...
7 years, 10 months ago (2013-02-14 22:06:01 UTC) #55
lazyboy
On 2013/02/14 21:54:45, Fady Samuel wrote: > https://codereview.chromium.org/11093080/diff/131013/content/renderer/browser_plugin/browser_plugin.cc > File content/renderer/browser_plugin/browser_plugin.cc (right): > > https://codereview.chromium.org/11093080/diff/131013/content/renderer/browser_plugin/browser_plugin.cc#newcode904 ...
7 years, 10 months ago (2013-02-14 23:04:01 UTC) #56
Fady Samuel
On 2013/02/14 23:04:01, lazyboy wrote: > On 2013/02/14 21:54:45, Fady Samuel wrote: > > > ...
7 years, 10 months ago (2013-02-14 23:17:35 UTC) #57
lazyboy
Adding Cris for reviewing browser_plugin_messages.h while abarth@ is reviewing the other bits.
7 years, 10 months ago (2013-02-19 16:21:23 UTC) #58
abarth-chromium
Thanks for addressing my comments.
7 years, 10 months ago (2013-02-19 17:44:12 UTC) #59
Cris Neckar
https://codereview.chromium.org/11093080/diff/152001/content/common/browser_plugin_messages.h File content/common/browser_plugin_messages.h (right): https://codereview.chromium.org/11093080/diff/152001/content/common/browser_plugin_messages.h#newcode248 content/common/browser_plugin_messages.h:248: std::string /* permission_type */, It seems like this should ...
7 years, 10 months ago (2013-02-19 19:40:56 UTC) #60
lazyboy
https://chromiumcodereview.appspot.com/11093080/diff/152001/content/common/browser_plugin_messages.h File content/common/browser_plugin_messages.h (right): https://chromiumcodereview.appspot.com/11093080/diff/152001/content/common/browser_plugin_messages.h#newcode248 content/common/browser_plugin_messages.h:248: std::string /* permission_type */, On 2013/02/19 19:40:56, Cris Neckar ...
7 years, 10 months ago (2013-02-19 21:38:40 UTC) #61
Fady Samuel
https://chromiumcodereview.appspot.com/11093080/diff/156001/content/common/browser_plugin_messages.h File content/common/browser_plugin_messages.h (right): https://chromiumcodereview.appspot.com/11093080/diff/156001/content/common/browser_plugin_messages.h#newcode35 content/common/browser_plugin_messages.h:35: enum BrowserPluginPermissionType { This seems messy. Could we move ...
7 years, 10 months ago (2013-02-19 21:44:33 UTC) #62
lazyboy
Added new file, PTAL. https://chromiumcodereview.appspot.com/11093080/diff/156001/content/common/browser_plugin_messages.h File content/common/browser_plugin_messages.h (right): https://chromiumcodereview.appspot.com/11093080/diff/156001/content/common/browser_plugin_messages.h#newcode35 content/common/browser_plugin_messages.h:35: enum BrowserPluginPermissionType { On 2013/02/19 ...
7 years, 10 months ago (2013-02-19 22:08:47 UTC) #63
Cris Neckar
ipc changes lgtm
7 years, 10 months ago (2013-02-20 20:10:24 UTC) #64
abarth-chromium
This seems fine. I think you've got some memory leaks, however. https://codereview.chromium.org/11093080/diff/158031/chrome/renderer/resources/extensions/web_view_experimental.js File chrome/renderer/resources/extensions/web_view_experimental.js (right): ...
7 years, 10 months ago (2013-02-20 20:46:43 UTC) #65
lazyboy
https://chromiumcodereview.appspot.com/11093080/diff/158031/chrome/renderer/resources/extensions/web_view_experimental.js File chrome/renderer/resources/extensions/web_view_experimental.js (right): https://chromiumcodereview.appspot.com/11093080/diff/158031/chrome/renderer/resources/extensions/web_view_experimental.js#newcode49 chrome/renderer/resources/extensions/web_view_experimental.js:49: objectNode['-internal-setPermission'](requestId, true); On 2013/02/20 20:46:44, abarth wrote: > Do ...
7 years, 10 months ago (2013-02-20 22:09:35 UTC) #66
lazyboy
https://chromiumcodereview.appspot.com/11093080/diff/158031/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (right): https://chromiumcodereview.appspot.com/11093080/diff/158031/content/renderer/browser_plugin/browser_plugin.cc#newcode578 content/renderer/browser_plugin/browser_plugin.cc:578: base::Value::CreateIntegerValue(request_id); On 2013/02/20 22:09:36, lazyboy wrote: > On 2013/02/20 ...
7 years, 10 months ago (2013-02-20 23:15:33 UTC) #67
lazyboy
On 2013/02/20 23:15:33, lazyboy wrote: > https://chromiumcodereview.appspot.com/11093080/diff/158031/content/renderer/browser_plugin/browser_plugin.cc > File content/renderer/browser_plugin/browser_plugin.cc (right): > > https://chromiumcodereview.appspot.com/11093080/diff/158031/content/renderer/browser_plugin/browser_plugin.cc#newcode578 > ...
7 years, 10 months ago (2013-02-22 17:05:04 UTC) #68
Fady Samuel
https://codereview.chromium.org/11093080/diff/167002/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (right): https://codereview.chromium.org/11093080/diff/167002/content/renderer/browser_plugin/browser_plugin.cc#newcode891 content/renderer/browser_plugin/browser_plugin.cc:891: if (plugin) { What's the point of the if ...
7 years, 10 months ago (2013-02-22 18:39:51 UTC) #69
lazyboy
https://codereview.chromium.org/11093080/diff/167002/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (right): https://codereview.chromium.org/11093080/diff/167002/content/renderer/browser_plugin/browser_plugin.cc#newcode891 content/renderer/browser_plugin/browser_plugin.cc:891: if (plugin) { On 2013/02/22 18:39:51, Fady Samuel wrote: ...
7 years, 10 months ago (2013-02-22 19:14:43 UTC) #70
abarth-chromium
I'm sorry that I don't have time to review this patch again.
7 years, 10 months ago (2013-02-22 20:49:37 UTC) #71
lazyboy
+ben@ for chrome/* changes, specifically: ** Presubmit Messages ** Missing OWNER reviewers for these files: ...
7 years, 9 months ago (2013-02-27 21:15:30 UTC) #72
Ben Goodger (Google)
lgtm
7 years, 9 months ago (2013-02-28 17:49:13 UTC) #73
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/lazyboy@chromium.org/11093080/180001
7 years, 9 months ago (2013-03-01 05:59:15 UTC) #74
commit-bot: I haz the power
Presubmit check for 11093080-180001 failed and returned exit status 1. INFO:root:Found 27 file(s). Running presubmit ...
7 years, 9 months ago (2013-03-01 05:59:25 UTC) #75
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/lazyboy@chromium.org/11093080/179002
7 years, 9 months ago (2013-03-01 06:09:46 UTC) #76
commit-bot: I haz the power
Retried try job too often on win_x64_rel for step(s) compile http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=win_x64_rel&number=714
7 years, 9 months ago (2013-03-01 06:29:36 UTC) #77
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/lazyboy@chromium.org/11093080/192001
7 years, 9 months ago (2013-03-01 06:38:36 UTC) #78
commit-bot: I haz the power
7 years, 9 months ago (2013-03-01 09:36:47 UTC) #79
Message was sent while issue was closed.
Change committed as 185503

Powered by Google App Engine
This is Rietveld 408576698