-
eric@webkit.org authored
Reviewed by Eric Seidel. Bug 24539: Fix RenderThemeChromiumWin::paintTextFieldInternal() not to hide background image. https://bugs.webkit.org/show_bug.cgi?id=24539 Fix RenderThemeChromiumWin::paintTextFieldInternal(). We shouldn't paint the content area of text fields when o->style() has background image or transparent background color. paintTextFieldInternal() is used for painting inner area of HTML option elements by Chromium. When we pass fillContentArea = true to ChromiumBridge::paintTextField, it hides the background image rendered by RenderBoxModelObject. So, we should set fillContentArea = false in such case. Besides, when background-color:transparent is specified for CSS property, o->style().backgroundColor returns black color with alpha channel == 0. But since ThemeEngine for Windows behind ChromiumBridge::paintTextField cannot recognize alpha channel, it fills the rect with black. I made workaround to set fillContentArea = false when alpha channel == 0 to avoid this. And more, I'd like to fallback the color passed to ChromiumBridge to white when o->style()->backgroundColor() is invalid. * rendering/RenderThemeChromiumWin.cpp: (WebCore::RenderThemeChromiumWin::paintTextFieldInternal): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43903 268f45cc-cd09-0410-ab3c-d52691b4dbfc
709f8428