The existing logic for handling printing for windowed plugins computes the
page position based on the current page scroll. This is incorrect, as the
printed page is never in a scrolled state. With the current code, scrolling
the page and then printing causes the plugin to draw in different positions
depending on the scroll state.
The Windows implementation of PluginView::paintWindowedPluginIntoContext
is only used during print and print preview operations for windowed
plugins. The drawing location passed to the plugin is computed
based on the current scroll position, which is wrong for printing
operations as the page position is always the same.
Created attachment 57353 [details]
Created attachment 57358 [details]
Don't we have ways to test printing changes like this these days?
I guess this patch changes pixel output but doesn't change render tree, right? If so, we cannot test this patch without Bug 20011.
We should get Anders and/or Jon to look at this.
Comment on attachment 57358 [details]
We have printing tests these days - Brent can you create a testcase?
Created attachment 97676 [details]
Wow! This one got lost in the shuffle.
Landed under https://trac.webkit.org/changeset/146941.