Thanks Philip,
That looks like the right direction.
So content_shell is a wrapper (outside of chrome), that needs you to specify a width/height of a window (aka viewport?)... which is set with --content-shell-host-window-size=800x600, and used with:
PlatformInitialize(ShellDefaultSize());
host_view = web_contents_->GetRenderWidgetHostView();
But it looks like CreateShell() is basically creating a new window of the specified size... which seems a little wasteful if we consider that a RenderWidgetHostView already exists, and is available to the Chrome extensions (indirectly)... and that presumably cannot be resized without changing the browser window size? which might upset the user.
As a side note, on line 25 of your script, can you check --pixel-test, it seems to begin with a single quote for some reason (does not seem to break anything though).
But that still confirms the content module (aka /src/content/) contains everything todo with rendering:
And I should probably be looking at its API, defined in "/src/content/public/":
Which does define "CopyFromBackingStore"... part of RenderWidgetHost.
So can anyone confirm if the RenderWidgetHost is limited to a viewport of some kind? and if so, is there a parent to it? so we can get the whole page?
In passing, I did notice a couple of places that mentioned:
RenderViewImpl::GetWindowSnapshot
But I'm not sure what a RenderView is compared to a RenderWidgetHost.
And at the same time, this does seem to be a re-occuring problem, so maybe this isn't going to be easy to fix:
Craig