commit | d51fd53d74e3db5f790bf3f226fb9ba02c39bd8a | [log] [tgz] |
---|---|---|
author | danakj <danakj@chromium.org> | Fri Dec 21 23:06:09 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Fri Dec 21 23:06:09 2018 |
tree | 66f82d158f60ba2f57c8499f2f03f44dd4f2bc8e | |
parent | a5ce67342c42fd02737585a9ea5a7fe60f5d6b7d [diff] |
Move BackgroundColor from widgets and child frames to the WebView. SetBackgroundOpaque() is a concept that applies only to WebViews, not to WebWidgets. It is set by ChromeOS UI pieces, which each have their own WebView/Page. It is also set by webview tag, which has its own WebView contained inside another outer one. So we move the SetBackgroundOpaque() methods and IPCs from RenderWidget to RenderView. In the renderer, the WebWidget::BackgroundColor() is not used except internally, so remove it from the WebWidget API. The WebFrameWidgetImpl is only used for child frames, and during Initialize(), it will set its background color to be overridden to transparent, preventing any future colors to matter, unless the override was cleared. But since clearing overrides only happens by IPC to the main frame widget (now to the RenderView) that clearing can't happen. So remove all background color code from WebFrameWidgetImpl, and just set the compositor's background color to transparent during startup. Android WebView and ChromeCast code was also setting the base background color via the WebFrameWidget, but both are in code that corresponds to a view, not a widget, so pass the value to WebViewImpl directly instead by adding SetBaseBackgroundColor to the WebView API. Then we remove all background color APIs from WebFrameWidget as well. R=ajwong@chromium.org, avi@chromium.org, dcheng@chromium.org TBR=dcheng Change-Id: I3d83064d13836f286f8ebc89118b990bbdbb80d3 Bug: 912193 Reviewed-on: https://chromium-review.googlesource.com/c/1382861 Commit-Queue: danakj <danakj@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Reviewed-by: Avi Drissman <avi@chromium.org> Reviewed-by: Luke Halliwell <halliwell@chromium.org> Reviewed-by: Albert J. Wong <ajwong@chromium.org> Cr-Commit-Position: refs/heads/master@{#618653}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .