Changeset 273212 in webkit
- Timestamp:
- Feb 20, 2021 5:06:59 PM (3 years ago)
- Location:
- trunk
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r273211 r273212 1 2021-02-20 Youenn Fablet <youenn@apple.com> 2 3 Add support for adding/removing/clearing mock devices in GPUProcess 4 https://bugs.webkit.org/show_bug.cgi?id=222174 5 6 Reviewed by Eric Carlson. 7 8 * fast/mediastream/device-change-event-2.html: 9 1 10 2021-02-20 Sam Weinig <weinig@apple.com> 2 11 -
trunk/LayoutTests/fast/mediastream/device-change-event-2.html
r267246 r273212 70 70 assert_equals(devices[0].label, "my mic"); 71 71 72 const micStream = await navigator.mediaDevices.getUserMedia({ audio : { deviceId : "id2" } }); 73 assert_equals(micStream.getAudioTracks()[0].label, "my mic"); 72 74 }, "'devicechange' event fired when device list changes"); 73 75 -
trunk/Source/WebKit/ChangeLog
r273209 r273212 1 2021-02-20 Youenn Fablet <youenn@apple.com> 2 3 Add support for adding/removing/clearing mock devices in GPUProcess 4 https://bugs.webkit.org/show_bug.cgi?id=222174 5 6 Reviewed by Eric Carlson. 7 8 Make sure to forward mock device orders to GPU process so that it is kept in sync with UIProcess. 9 Covered by updated test. 10 11 * GPUProcess/GPUProcess.cpp: 12 (WebKit::GPUProcess::addMockMediaDevice): 13 (WebKit::GPUProcess::clearMockMediaDevices): 14 (WebKit::GPUProcess::removeMockMediaDevice): 15 (WebKit::GPUProcess::resetMockMediaDevices): 16 * GPUProcess/GPUProcess.h: 17 * GPUProcess/GPUProcess.messages.in: 18 * UIProcess/GPU/GPUProcessProxy.cpp: 19 (WebKit::GPUProcessProxy::addMockMediaDevice): 20 (WebKit::GPUProcessProxy::clearMockMediaDevices): 21 (WebKit::GPUProcessProxy::removeMockMediaDevice): 22 (WebKit::GPUProcessProxy::resetMockMediaDevices): 23 * UIProcess/GPU/GPUProcessProxy.h: 24 * UIProcess/WebProcessPool.cpp: 25 (WebKit::WebProcessPool::addMockMediaDevice): 26 (WebKit::WebProcessPool::clearMockMediaDevices): 27 (WebKit::WebProcessPool::removeMockMediaDevice): 28 (WebKit::WebProcessPool::resetMockMediaDevices): 29 1 30 2021-02-20 Jiewen Tan <jiewen_tan@apple.com> 2 31 -
trunk/Source/WebKit/GPUProcess/GPUProcess.cpp
r272888 r273212 229 229 completionHandler(); 230 230 } 231 232 void GPUProcess::addMockMediaDevice(const WebCore::MockMediaDevice& device) 233 { 234 MockRealtimeMediaSourceCenter::addDevice(device); 235 } 236 237 void GPUProcess::clearMockMediaDevices() 238 { 239 MockRealtimeMediaSourceCenter::setDevices({ }); 240 } 241 242 void GPUProcess::removeMockMediaDevice(const String& persistentId) 243 { 244 MockRealtimeMediaSourceCenter::removeDevice(persistentId); 245 } 246 247 void GPUProcess::resetMockMediaDevices() 248 { 249 MockRealtimeMediaSourceCenter::resetDevices(); 250 } 231 251 #endif 232 252 -
trunk/Source/WebKit/GPUProcess/GPUProcess.h
r271526 r273212 38 38 namespace WebCore { 39 39 class NowPlayingManager; 40 struct MockMediaDevice; 40 41 } 41 42 … … 112 113 void setOrientationForMediaCapture(uint64_t orientation); 113 114 void updateCaptureAccess(bool allowAudioCapture, bool allowVideoCapture, bool allowDisplayCapture, WebCore::ProcessIdentifier, CompletionHandler<void()>&&); 115 void addMockMediaDevice(const WebCore::MockMediaDevice&); 116 void clearMockMediaDevices(); 117 void removeMockMediaDevice(const String& persistentId); 118 void resetMockMediaDevices(); 114 119 #endif 115 120 -
trunk/Source/WebKit/GPUProcess/GPUProcess.messages.in
r269690 r273212 41 41 SetOrientationForMediaCapture(uint64_t orientation); 42 42 UpdateCaptureAccess(bool allowAudioCapture, bool allowVideoCapture, bool allowDisplayCapture, WebCore::ProcessIdentifier processID) -> () Async 43 AddMockMediaDevice(struct WebCore::MockMediaDevice device); 44 ClearMockMediaDevices(); 45 RemoveMockMediaDevice(String persistentId); 46 ResetMockMediaDevices(); 43 47 #endif 44 48 } -
trunk/Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp
r271482 r273212 189 189 sendWithAsyncReply(Messages::GPUProcess::UpdateCaptureAccess { allowAudioCapture, allowVideoCapture, allowDisplayCapture, processID }, WTFMove(completionHandler)); 190 190 } 191 192 193 void GPUProcessProxy::addMockMediaDevice(const WebCore::MockMediaDevice& device) 194 { 195 send(Messages::GPUProcess::AddMockMediaDevice { device }, 0); 196 } 197 198 void GPUProcessProxy::clearMockMediaDevices() 199 { 200 send(Messages::GPUProcess::ClearMockMediaDevices { }, 0); 201 } 202 203 void GPUProcessProxy::removeMockMediaDevice(const String& persistentId) 204 { 205 send(Messages::GPUProcess::RemoveMockMediaDevice { persistentId }, 0); 206 } 207 208 void GPUProcessProxy::resetMockMediaDevices() 209 { 210 send(Messages::GPUProcess::ResetMockMediaDevices { }, 0); 211 } 191 212 #endif 192 213 -
trunk/Source/WebKit/UIProcess/GPU/GPUProcessProxy.h
r270415 r273212 42 42 #endif 43 43 44 namespace WebCore { 45 struct MockMediaDevice; 46 } 47 44 48 namespace WebKit { 45 49 … … 66 70 void setOrientationForMediaCapture(uint64_t orientation); 67 71 void updateCaptureAccess(bool allowAudioCapture, bool allowVideoCapture, bool allowDisplayCapture, WebCore::ProcessIdentifier, CompletionHandler<void()>&&); 72 73 void addMockMediaDevice(const WebCore::MockMediaDevice&); 74 void clearMockMediaDevices(); 75 void removeMockMediaDevice(const String&); 76 void resetMockMediaDevices(); 68 77 #endif 69 78 -
trunk/Source/WebKit/UIProcess/WebProcessPool.cpp
r273183 r273212 1905 1905 MockRealtimeMediaSourceCenter::addDevice(device); 1906 1906 sendToAllProcesses(Messages::WebProcess::AddMockMediaDevice { device }); 1907 #if ENABLE(GPU_PROCESS) 1908 ensureGPUProcess().addMockMediaDevice(device); 1909 #endif 1907 1910 #endif 1908 1911 } … … 1913 1916 MockRealtimeMediaSourceCenter::setDevices({ }); 1914 1917 sendToAllProcesses(Messages::WebProcess::ClearMockMediaDevices { }); 1918 #if ENABLE(GPU_PROCESS) 1919 ensureGPUProcess().clearMockMediaDevices(); 1920 #endif 1915 1921 #endif 1916 1922 } … … 1921 1927 MockRealtimeMediaSourceCenter::removeDevice(persistentId); 1922 1928 sendToAllProcesses(Messages::WebProcess::RemoveMockMediaDevice { persistentId }); 1929 #if ENABLE(GPU_PROCESS) 1930 ensureGPUProcess().removeMockMediaDevice(persistentId); 1931 #endif 1923 1932 #endif 1924 1933 } … … 1929 1938 MockRealtimeMediaSourceCenter::resetDevices(); 1930 1939 sendToAllProcesses(Messages::WebProcess::ResetMockMediaDevices { }); 1940 #if ENABLE(GPU_PROCESS) 1941 ensureGPUProcess().resetMockMediaDevices(); 1942 #endif 1931 1943 #endif 1932 1944 }
Note: See TracChangeset
for help on using the changeset viewer.