| Index: ui/ozone/platform/dri/chromeos/native_display_delegate_proxy.cc
|
| diff --git a/ui/ozone/platform/dri/chromeos/native_display_delegate_proxy.cc b/ui/ozone/platform/dri/chromeos/native_display_delegate_proxy.cc
|
| index 2219e4d2ff68025e755a9cc1f13705e8b2891303..7230558e310b76ed74a28ba93ffe4547b6bba911 100644
|
| --- a/ui/ozone/platform/dri/chromeos/native_display_delegate_proxy.cc
|
| +++ b/ui/ozone/platform/dri/chromeos/native_display_delegate_proxy.cc
|
| @@ -113,15 +113,21 @@ void NativeDisplayDelegateProxy::OnDeviceEvent(const DeviceEvent& event) {
|
|
|
| if (event.action_type() == DeviceEvent::CHANGE) {
|
| VLOG(1) << "Got display changed event";
|
| - proxy_->Send(new OzoneGpuMsg_RefreshNativeDisplays());
|
| + proxy_->Send(new OzoneGpuMsg_RefreshNativeDisplays(
|
| + std::vector<DisplaySnapshot_Params>()));
|
| }
|
| }
|
|
|
| void NativeDisplayDelegateProxy::OnChannelEstablished(
|
| int host_id, IPC::Sender* sender) {
|
| + std::vector<DisplaySnapshot_Params> display_params;
|
| + for (size_t i = 0; i < displays_.size(); ++i)
|
| + display_params.push_back(GetDisplaySnapshotParams(*displays_[i]));
|
| +
|
| // Force an initial configure such that the browser process can get the actual
|
| - // state.
|
| - proxy_->Send(new OzoneGpuMsg_RefreshNativeDisplays());
|
| + // state. Pass in the current display state since the GPU process may have
|
| + // crashed and we want to re-synchronize the state between processes.
|
| + proxy_->Send(new OzoneGpuMsg_RefreshNativeDisplays(display_params));
|
| }
|
|
|
| void NativeDisplayDelegateProxy::OnChannelDestroyed(int host_id) {
|
|
|