summaryrefslogtreecommitdiffstats
path: root/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp
diff options
context:
space:
mode:
authorKristian Monsen <kristianm@google.com>2010-03-15 15:41:48 +0000
committerKristian Monsen <kristianm@google.com>2010-03-17 11:21:19 +0000
commitbf8327f47de10e9f3d583f226176772f8662b830 (patch)
tree720b434aa400c13441b260fb7706bc7558aa2dc8 /WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp
parentb0c2f7b33106420933e04a3b0a69ca4d1d1b3fd8 (diff)
downloadexternal_webkit-bf8327f47de10e9f3d583f226176772f8662b830.zip
external_webkit-bf8327f47de10e9f3d583f226176772f8662b830.tar.gz
external_webkit-bf8327f47de10e9f3d583f226176772f8662b830.tar.bz2
Fix for Bug 2486292, transparent backgrounds not transparent in Froyo.
Recreating the transparent and color of old window when creating a new one, and setting transparent if all the colors are 0. Updated patch to fix comments from Grace. Change-Id: I934401630fd7041e7e4ae1cbeeaa198271025c87
Diffstat (limited to 'WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp')
-rw-r--r--WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp b/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp
index 60598f8..10cd0b3 100644
--- a/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp
+++ b/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp
@@ -891,11 +891,12 @@ void FrameLoaderClientAndroid::transitionToCommittedForNewPage() {
Retain(webViewCore);
// Save the old WebFrameView's bounds and apply them to the new WebFrameView
- WebFrameView* oldFrameView = static_cast<WebFrameView*> (m_frame->view()->platformWidget());
- IntRect bounds = oldFrameView->getBounds();
- IntRect windowBounds = oldFrameView->getWindowBounds();
- // we only support opaque, white background for now
- m_frame->createView(bounds.size(), Color::white, false, IntSize(), false);
+ WebFrameView* oldWebFrameView = static_cast<WebFrameView*> (m_frame->view()->platformWidget());
+ IntRect bounds = oldWebFrameView->getBounds();
+ IntRect windowBounds = oldWebFrameView->getWindowBounds();
+ WebCore::FrameView* oldFrameView = oldWebFrameView->view();
+ m_frame->createView(bounds.size(), oldFrameView->baseBackgroundColor(), oldFrameView->isTransparent(), IntSize(), false);
+
// Create a new WebFrameView for the new FrameView
WebFrameView* newFrameView = new WebFrameView(m_frame->view(), webViewCore);
newFrameView->setLocation(bounds.x(), bounds.y());