Mojo support for transporting gfx::Images via shared memory
We should have an easy and cheap way to pass gfx::Image (or similar) over Mojo.
This would help avoid some of the one-off work to optimize specific features.
(eg. Ash desktop wallpaper decoded in chrome utility process, used by ash, etc.)
I've read some more code and chatted briefly with danakj@. Notion for wallpaper: allocate a texture (say via GpuMemoryBuffer for zero-copy upload of the uncompressed bits), get a texture handle from it, wrap it a mailbox and send that wherever you want to draw (i.e. ash for the wallpaper)? WDYT?
Thanks for weighing in; I'll look into this more closely next week.
Can views display these easily? (for icons in shelf items and window titlebars, etc.)
icons and stuff should probably use cc::UIResource and friends. I don't know how views would get access to that. Somewhere (under aura), there are ultimately cc layers that get sent to the display compositor and could use the mailbox tiles or UIResource instances.
Xiyuan basically fixed this via the ImageSkia mojom struct with shared buffer handles.
Marking this Fixed, but we might want gfx::Image traits or further efficiency gains.
Comment 1 by msw@chromium.org
, Oct 14 2016