|
[Presentation API] (alternative) 1-UA: send message between controller and receiver page
It is an alternative implementation of 1-UA messaging (substitue Issue 2343013002 and Issue 2355723004):
- add PresentationConnection class to presentation.mojom
- add RenderedPresentationConnection class which implements PresentationConnectionProxy and PresentationConnection mojo interface
Work flow to connect controller RenderedPresentationConnection with receiver RenderedPresentationConnection:
1. controller page starts a presentation, creates a RenderedPresentationConnection object
2. controller RenderedPresentationConnection's mojo handler is passed to PSImpl via PSImpl::SetPresentationConnection
3. PSImpl::SetPresentationConnection registers the mojo handler with OffscreenPresentationManager
4. receiver page initializes and registers receiver_call to OffscreenPresentationManager
5. receiver PSImpl::OnReceiverConnectionAvailable() is invoked for each controller RenderedPresentationConnection's mojo handler belonging to the same presentation
6. PSImpl::OnReceiverConnectionAvailable() calls PDispatcher::OnReceiverConnectionAvailable() which creates a new receiver RenderedPresentationConnection and connects it with controller RenderedPresentationConnection's mojo handler
Messaging happens between controller RenderedPresentationConnection and receiver RenderedPresentationConnection afterwards
design doc: https://docs.google.com/document/d/12xd7Loeme0UfcjOICNYnvsGS32ggeH9HwjDFCi_HQDc/edit#heading=h.icz05x2z8mg
BUG= 525660
Total comments: 61
Total comments: 85
Total comments: 72
Total comments: 70
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+1820 lines, -163 lines) |
Patch |
|
M |
chrome/browser/chrome_content_browser_client.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+5 lines, -1 line |
0 comments
|
Download
|
|
M |
chrome/browser/chrome_content_browser_client.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
3 chunks |
+20 lines, -3 lines |
0 comments
|
Download
|
|
M |
chrome/browser/extensions/api/tab_capture/offscreen_tab.cc
|
View
|
1
2
3
4
|
3 chunks |
+8 lines, -5 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/BUILD.gn
|
View
|
1
2
3
|
1 chunk |
+6 lines, -0 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/create_presentation_connection_request.h
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/create_presentation_connection_request.cc
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+7 lines, -7 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/create_presentation_connection_request_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+5 lines, -3 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/media_route.h
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+9 lines, -0 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/media_route.cc
|
View
|
1
2
3
4
5
|
1 chunk |
+3 lines, -3 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/media_router_dialog_controller_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/mojo/media_router.mojom
|
View
|
1
2
3
4
5
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/mojo/media_router_type_converters.cc
|
View
|
1
2
3
4
5
|
2 chunks |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/mojo/media_router_type_converters_unittest.cc
|
View
|
1
2
3
4
5
|
3 chunks |
+4 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/media/router/offscreen_presentation_manager.h
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+195 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/media/router/offscreen_presentation_manager.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+131 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/media/router/offscreen_presentation_manager_factory.h
|
View
|
1
2
3
4
5
|
1 chunk |
+50 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/media/router/offscreen_presentation_manager_factory.cc
|
View
|
1
2
3
4
5
|
1 chunk |
+69 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/media/router/offscreen_presentation_manager_factory_unittest.cc
|
View
|
1
2
3
4
|
1 chunk |
+50 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/media/router/offscreen_presentation_manager_unittest.cc
|
View
|
1
2
3
4
|
1 chunk |
+291 lines, -0 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/presentation_service_delegate_impl.h
|
View
|
1
2
3
4
5
6
7
8
9
10
|
5 chunks |
+9 lines, -3 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/presentation_service_delegate_impl.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
5 chunks |
+21 lines, -3 lines |
0 comments
|
Download
|
|
M |
chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+23 lines, -1 line |
0 comments
|
Download
|
|
A |
chrome/browser/media/router/receiver_presentation_service_delegate_impl.h
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+88 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/media/router/receiver_presentation_service_delegate_impl.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+84 lines, -0 lines |
0 comments
|
Download
|
|
M |
chrome/browser/ui/webui/media_router/media_router_ui_unittest.cc
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
|
M |
chrome/test/BUILD.gn
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
content/browser/presentation/presentation_service_impl.h
|
View
|
1
2
3
4
5
6
7
8
9
10
|
7 chunks |
+36 lines, -8 lines |
0 comments
|
Download
|
|
M |
content/browser/presentation/presentation_service_impl.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
20 chunks |
+97 lines, -39 lines |
0 comments
|
Download
|
|
M |
content/browser/presentation/presentation_service_impl_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
7 chunks |
+101 lines, -6 lines |
0 comments
|
Download
|
|
M |
content/browser/presentation/presentation_type_converters.h
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
content/public/browser/content_browser_client.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
3 chunks |
+10 lines, -4 lines |
0 comments
|
Download
|
|
M |
content/public/browser/content_browser_client.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+8 lines, -2 lines |
0 comments
|
Download
|
|
M |
content/public/browser/presentation_service_delegate.h
|
View
|
1
2
3
4
5
6
7
8
9
10
|
6 chunks |
+53 lines, -15 lines |
0 comments
|
Download
|
|
M |
content/public/browser/presentation_session.h
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
content/public/browser/presentation_session.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+9 lines, -1 line |
0 comments
|
Download
|
|
M |
content/renderer/BUILD.gn
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
content/renderer/presentation/presentation_connection_client.h
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+13 lines, -2 lines |
0 comments
|
Download
|
|
M |
content/renderer/presentation/presentation_connection_client.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
2 chunks |
+12 lines, -6 lines |
0 comments
|
Download
|
|
A |
content/renderer/presentation/presentation_connection_proxy.h
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+70 lines, -0 lines |
0 comments
|
Download
|
|
A |
content/renderer/presentation/presentation_connection_proxy.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+84 lines, -0 lines |
0 comments
|
Download
|
|
M |
content/renderer/presentation/presentation_dispatcher.h
|
View
|
1
2
3
4
5
6
7
8
9
10
|
3 chunks |
+7 lines, -1 line |
0 comments
|
Download
|
|
M |
content/renderer/presentation/presentation_dispatcher.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
9 chunks |
+69 lines, -25 lines |
0 comments
|
Download
|
|
M |
extensions/renderer/resources/media_router_bindings.js
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
third_party/WebKit/Source/modules/presentation/PresentationConnection.h
|
View
|
1
2
3
4
5
6
7
8
9
|
5 chunks |
+10 lines, -3 lines |
0 comments
|
Download
|
|
M |
third_party/WebKit/Source/modules/presentation/PresentationConnection.cpp
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
5 chunks |
+30 lines, -6 lines |
0 comments
|
Download
|
|
M |
third_party/WebKit/Source/modules/presentation/PresentationReceiverTest.cpp
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+16 lines, -0 lines |
0 comments
|
Download
|
|
M |
third_party/WebKit/Source/platform/BUILD.gn
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
A + |
third_party/WebKit/Source/platform/exported/WebPresentationConnection.cpp
|
View
|
|
1 chunk |
+4 lines, -4 lines |
0 comments
|
Download
|
|
M |
third_party/WebKit/public/BUILD.gn
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
A |
third_party/WebKit/public/platform/modules/presentation/WebPresentationConnection.h
|
View
|
1
2
3
4
5
|
1 chunk |
+25 lines, -0 lines |
0 comments
|
Download
|
|
M |
third_party/WebKit/public/platform/modules/presentation/WebPresentationConnectionClient.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
2 chunks |
+3 lines, -0 lines |
0 comments
|
Download
|
|
A |
third_party/WebKit/public/platform/modules/presentation/WebPresentationConnectionProxy.h
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+28 lines, -0 lines |
0 comments
|
Download
|
|
M |
third_party/WebKit/public/platform/modules/presentation/WebPresentationController.h
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
third_party/WebKit/public/platform/modules/presentation/presentation.mojom
|
View
|
1
2
3
4
5
6
7
8
9
10
|
6 chunks |
+34 lines, -5 lines |
0 comments
|
Download
|
Total messages: 17 (4 generated)
|