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

Issue 479713002: [Ozone-GBM] Adding NativeWindowDelegate to IPC window changes to the GPU (Closed)

Created:
6 years, 4 months ago by dnicoara
Modified:
6 years, 4 months ago
CC:
chromium-reviews, rjkroege, kalyank, piman+watch_chromium.org, ozone-reviews_chromium.org
Project:
chromium
Visibility:
Public.

Description

[Ozone-GBM] Adding NativeWindowDelegate to IPC window changes to the GPU This change is the first part in a series of changes to allow better display configuration and tracking of windows/surfaces. The browser process uses PlatformWindows to keep track of display surfaces. The window then has an underlying surface to display content. The surface (in our context SurfaceOzoneEGL) is created on the GPU process and is associated with the window via an AcceleratedWidget handle. Each surface is then associated with a HardwareDisplayController in order to scanout the contents to the monitor. Since the surface is assumed to be in the window's coordinate system, the GPU side has no knowledge of how to map a surface to the configured displays. The NativeWindowDelegate is meant to IPC window information from the browser process to the GPU process such that we can map surfaces to display controllers. BUG=392478 NOTRY=true Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=291071

Patch Set 1 #

Total comments: 1

Patch Set 2 : . #

Total comments: 25

Patch Set 3 : . #

Total comments: 7

Patch Set 4 : . #

Patch Set 5 : . #

Patch Set 6 : Added Initialize/Shutdown #

Patch Set 7 : Renamed NativeWindowDelegate #

Total comments: 6

Patch Set 8 : GetAcceleratedWidget() rename + comments #

Total comments: 2

Patch Set 9 : . #

Patch Set 10 : . #

Patch Set 11 : . #

Patch Set 12 : Added explicit ownership on the GPU side #

Total comments: 2

Patch Set 13 : Use base::ScopedPtrHashMap #

Total comments: 2

Patch Set 14 : Fix name #

Unified diffs Side-by-side diffs Delta from patch set Stats (+476 lines, -6 lines) Patch
M ui/ozone/common/gpu/ozone_gpu_messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +15 lines, -0 lines 0 comments Download
M ui/ozone/platform/dri/BUILD.gn View 1 2 3 4 5 6 2 chunks +7 lines, -0 lines 0 comments Download
M ui/ozone/platform/dri/dri.gypi View 1 2 3 4 5 6 1 chunk +5 lines, -0 lines 0 comments Download
A ui/ozone/platform/dri/dri_window_delegate.h View 1 2 3 4 5 6 7 1 chunk +52 lines, -0 lines 0 comments Download
A ui/ozone/platform/dri/dri_window_delegate_impl.h View 1 2 3 4 5 6 7 1 chunk +46 lines, -0 lines 0 comments Download
A ui/ozone/platform/dri/dri_window_delegate_impl.cc View 1 2 3 4 5 6 7 1 chunk +37 lines, -0 lines 0 comments Download
A ui/ozone/platform/dri/dri_window_delegate_proxy.h View 1 2 3 4 5 6 7 1 chunk +38 lines, -0 lines 0 comments Download
A ui/ozone/platform/dri/dri_window_delegate_proxy.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +46 lines, -0 lines 0 comments Download
A ui/ozone/platform/dri/dri_window_manager.h View 1 2 3 4 5 6 1 chunk +51 lines, -0 lines 0 comments Download
A ui/ozone/platform/dri/dri_window_manager.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +51 lines, -0 lines 0 comments Download
M ui/ozone/platform/dri/gbm.gypi View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
M ui/ozone/platform/dri/gpu_platform_support_gbm.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +19 lines, -3 lines 0 comments Download
M ui/ozone/platform/dri/gpu_platform_support_gbm.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +47 lines, -2 lines 0 comments Download
M ui/ozone/platform/dri/ozone_platform_gbm.cc View 1 2 3 4 5 6 7 8 3 chunks +6 lines, -1 line 0 comments Download
M ui/ozone/platform/dri/screen_manager.h View 2 chunks +14 lines, -0 lines 0 comments Download
M ui/ozone/platform/dri/screen_manager.cc View 3 chunks +40 lines, -0 lines 0 comments Download

Messages

Total messages: 24 (0 generated)
dnicoara
This CL just introduces the classes used to bridge between the browser process and the ...
6 years, 4 months ago (2014-08-15 22:11:48 UTC) #1
dnicoara
https://codereview.chromium.org/479713002/diff/1/ui/ozone/platform/dri/gpu/gpu_messages.h File ui/ozone/platform/dri/gpu/gpu_messages.h (right): https://codereview.chromium.org/479713002/diff/1/ui/ozone/platform/dri/gpu/gpu_messages.h#newcode17 ui/ozone/platform/dri/gpu/gpu_messages.h:17: #define IPC_MESSAGE_START OzoneGpuMsgStart spang@ pointed out that I can't ...
6 years, 4 months ago (2014-08-16 00:34:01 UTC) #2
alexst (slow to review)
https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gbm.gypi File ui/ozone/platform/dri/gbm.gypi (right): https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gbm.gypi#newcode51 ui/ozone/platform/dri/gbm.gypi:51: 'native_window_delegate_proxy.cc', Do you need to add these to .gn ...
6 years, 4 months ago (2014-08-18 17:43:47 UTC) #3
dnicoara
https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gbm.gypi File ui/ozone/platform/dri/gbm.gypi (right): https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gbm.gypi#newcode51 ui/ozone/platform/dri/gbm.gypi:51: 'native_window_delegate_proxy.cc', On 2014/08/18 17:43:47, alexst wrote: > Do you ...
6 years, 4 months ago (2014-08-18 18:55:25 UTC) #4
spang
As I explained in person, there's already a type in the tree called NativeWindow. A ...
6 years, 4 months ago (2014-08-18 19:31:30 UTC) #5
alexst (slow to review)
https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc File ui/ozone/platform/dri/gpu_platform_support_gbm.cc (right): https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc#newcode71 ui/ozone/platform/dri/gpu_platform_support_gbm.cc:71: new NativeWindowDelegateImpl(widget, window_manager_, screen_manager_); On 2014/08/18 18:55:24, dnicoara wrote: ...
6 years, 4 months ago (2014-08-18 20:30:34 UTC) #6
spang
https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc File ui/ozone/platform/dri/gpu_platform_support_gbm.cc (right): https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc#newcode71 ui/ozone/platform/dri/gpu_platform_support_gbm.cc:71: new NativeWindowDelegateImpl(widget, window_manager_, screen_manager_); On 2014/08/18 20:30:34, alexst wrote: ...
6 years, 4 months ago (2014-08-18 23:48:46 UTC) #7
dnicoara
https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc File ui/ozone/platform/dri/gpu_platform_support_gbm.cc (right): https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc#newcode71 ui/ozone/platform/dri/gpu_platform_support_gbm.cc:71: new NativeWindowDelegateImpl(widget, window_manager_, screen_manager_); On 2014/08/18 23:48:46, spang wrote: ...
6 years, 4 months ago (2014-08-19 15:53:39 UTC) #8
alexst (slow to review)
https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/native_window_delegate_proxy.cc File ui/ozone/platform/dri/native_window_delegate_proxy.cc (right): https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/native_window_delegate_proxy.cc#newcode21 ui/ozone/platform/dri/native_window_delegate_proxy.cc:21: sender_->Send(new OzoneGpuMsg_CreateNativeWindowDelegate(widget_)); You are arguing the specifics of the ...
6 years, 4 months ago (2014-08-19 16:02:09 UTC) #9
spang
On 2014/08/19 15:53:39, dnicoara wrote: > https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc > File ui/ozone/platform/dri/gpu_platform_support_gbm.cc (right): > > https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc#newcode71 > ...
6 years, 4 months ago (2014-08-19 17:26:25 UTC) #10
dnicoara
Renamed as well https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/native_window_delegate_proxy.cc File ui/ozone/platform/dri/native_window_delegate_proxy.cc (right): https://codereview.chromium.org/479713002/diff/20001/ui/ozone/platform/dri/native_window_delegate_proxy.cc#newcode21 ui/ozone/platform/dri/native_window_delegate_proxy.cc:21: sender_->Send(new OzoneGpuMsg_CreateNativeWindowDelegate(widget_)); On 2014/08/19 16:02:09, alexst ...
6 years, 4 months ago (2014-08-19 17:54:02 UTC) #11
spang
lgtm https://codereview.chromium.org/479713002/diff/120001/ui/ozone/platform/dri/dri_window_delegate.h File ui/ozone/platform/dri/dri_window_delegate.h (right): https://codereview.chromium.org/479713002/diff/120001/ui/ozone/platform/dri/dri_window_delegate.h#newcode21 ui/ozone/platform/dri/dri_window_delegate.h:21: // hardware display controller. I think this could ...
6 years, 4 months ago (2014-08-19 19:09:43 UTC) #12
dnicoara
https://codereview.chromium.org/479713002/diff/120001/ui/ozone/platform/dri/dri_window_delegate.h File ui/ozone/platform/dri/dri_window_delegate.h (right): https://codereview.chromium.org/479713002/diff/120001/ui/ozone/platform/dri/dri_window_delegate.h#newcode21 ui/ozone/platform/dri/dri_window_delegate.h:21: // hardware display controller. On 2014/08/19 19:09:43, spang wrote: ...
6 years, 4 months ago (2014-08-19 19:29:37 UTC) #13
alexst (slow to review)
https://codereview.chromium.org/479713002/diff/140001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc File ui/ozone/platform/dri/gpu_platform_support_gbm.cc (right): https://codereview.chromium.org/479713002/diff/140001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc#newcode66 ui/ozone/platform/dri/gpu_platform_support_gbm.cc:66: DriWindowDelegateImpl* delegate = Can we do this with ScopedPtr ...
6 years, 4 months ago (2014-08-19 19:58:30 UTC) #14
dnicoara
https://codereview.chromium.org/479713002/diff/140001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc File ui/ozone/platform/dri/gpu_platform_support_gbm.cc (right): https://codereview.chromium.org/479713002/diff/140001/ui/ozone/platform/dri/gpu_platform_support_gbm.cc#newcode66 ui/ozone/platform/dri/gpu_platform_support_gbm.cc:66: DriWindowDelegateImpl* delegate = On 2014/08/19 19:58:30, alexst wrote: > ...
6 years, 4 months ago (2014-08-19 20:13:06 UTC) #15
dnicoara
As per our offline discussion, added an explicit owner for the delegates in the GPU ...
6 years, 4 months ago (2014-08-20 15:13:18 UTC) #16
alexst (slow to review)
lgtm with a nit https://codereview.chromium.org/479713002/diff/220001/ui/ozone/platform/dri/gpu_platform_support_gbm.h File ui/ozone/platform/dri/gpu_platform_support_gbm.h (right): https://codereview.chromium.org/479713002/diff/220001/ui/ozone/platform/dri/gpu_platform_support_gbm.h#newcode65 ui/ozone/platform/dri/gpu_platform_support_gbm.h:65: typedef std::map<gfx::AcceleratedWidget, DriWindowDelegate*> nit: you ...
6 years, 4 months ago (2014-08-20 15:31:02 UTC) #17
dnicoara
https://codereview.chromium.org/479713002/diff/220001/ui/ozone/platform/dri/gpu_platform_support_gbm.h File ui/ozone/platform/dri/gpu_platform_support_gbm.h (right): https://codereview.chromium.org/479713002/diff/220001/ui/ozone/platform/dri/gpu_platform_support_gbm.h#newcode65 ui/ozone/platform/dri/gpu_platform_support_gbm.h:65: typedef std::map<gfx::AcceleratedWidget, DriWindowDelegate*> On 2014/08/20 15:31:01, alexst wrote: > ...
6 years, 4 months ago (2014-08-20 16:03:00 UTC) #18
dnicoara
+Ken for IPC changes
6 years, 4 months ago (2014-08-20 16:03:44 UTC) #19
kenrb
ipc lgtm with a nit https://codereview.chromium.org/479713002/diff/240001/ui/ozone/common/gpu/ozone_gpu_messages.h File ui/ozone/common/gpu/ozone_gpu_messages.h (right): https://codereview.chromium.org/479713002/diff/240001/ui/ozone/common/gpu/ozone_gpu_messages.h#newcode68 ui/ozone/common/gpu/ozone_gpu_messages.h:68: IPC_MESSAGE_CONTROL1(OzoneGpuMsg_DestoryWindowDelegate, s/Destory/Destroy ?
6 years, 4 months ago (2014-08-20 19:47:48 UTC) #20
dnicoara
https://codereview.chromium.org/479713002/diff/240001/ui/ozone/common/gpu/ozone_gpu_messages.h File ui/ozone/common/gpu/ozone_gpu_messages.h (right): https://codereview.chromium.org/479713002/diff/240001/ui/ozone/common/gpu/ozone_gpu_messages.h#newcode68 ui/ozone/common/gpu/ozone_gpu_messages.h:68: IPC_MESSAGE_CONTROL1(OzoneGpuMsg_DestoryWindowDelegate, On 2014/08/20 19:47:48, kenrb wrote: > s/Destory/Destroy ? ...
6 years, 4 months ago (2014-08-20 20:46:32 UTC) #21
dnicoara
The CQ bit was checked by dnicoara@chromium.org
6 years, 4 months ago (2014-08-21 14:16:06 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/dnicoara@chromium.org/479713002/260001
6 years, 4 months ago (2014-08-21 14:18:08 UTC) #23
commit-bot: I haz the power
6 years, 4 months ago (2014-08-21 15:02:15 UTC) #24
Message was sent while issue was closed.
Committed patchset #14 (260001) as 291071

Powered by Google App Engine
This is Rietveld 408576698