Revert 214727 "[Android WebView] Handle clip size smaller than v..."
commit8974010276985db4499fc7489fc6961928478a96
authorboliu@chromium.org <boliu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Wed, 31 Jul 2013 17:43:49 +0000 (31 17:43 +0000)
committerboliu@chromium.org <boliu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Wed, 31 Jul 2013 17:43:49 +0000 (31 17:43 +0000)
treefeef20d086c8bcd1d02ccf95262102a68db2d807
parent6f17d68c2ddf2ae35fb1ebffd1cb20f022416334
Revert 214727 "[Android WebView] Handle clip size smaller than v..."

Caused regression in internal b/10086957

> [Android WebView] Handle clip size smaller than visible rect
>
> The issue here is that compositor assumes every draw to match the
> viewport exactly, and thus the whole viewport is updated each
> draw. But we could be asked to draw a subset of the visible
> rect, so there is a mismatch between what is really drawn and
> what compositor assume is drawn.
>
> Simple damage tracking inside compositor will not work for
> webview because of all the other ways the view could be drawn.
>
> Here is a simple fix. Whenever webview is asked to draw a subset
> of the visible rect, invalidate the whole visible rect, regardless
> of whether the compositor needs draws.
>
> The assumption here is that the problem only manifests if we draw
> a subset of the visible rect, so simply ensure the whole visible
> rect drawn is immediately after. Ideally it should only be done if
> we can detect the case of mismatch between compositor and what is
> drawn, but this requires damage tracking and work through all the
> different ways we can draw.
>
> BUG=264275
> NOTRY=true
>
> Review URL: https://chromiumcodereview.appspot.com/21191002

TBR=boliu@chromium.org

Review URL: https://codereview.chromium.org/21357005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@214770 0039d316-1c4b-4281-b951-d872f2087c98
android_webview/browser/in_process_view_renderer.cc
android_webview/browser/in_process_view_renderer.h