Bug 539356 - Part 22 - Force a background color when running android reftests. r=roc

This commit is contained in:
Matt Woodrow 2012-08-29 17:48:43 +12:00
parent 585aa99e71
commit 74825f516b
4 changed files with 26 additions and 2 deletions

View File

@ -278,6 +278,10 @@ function InitAndStartRefTests()
gDumpLog("REFTEST TEST-UNEXPECTED-FAIL | | EXCEPTION: " + e + "\n");
}
try {
prefs.setBoolPref("android.widget_paints_background", false);
} catch (e) {}
/* set the gLoadTimeout */
try {
gLoadTimeout = prefs.getIntPref("reftest.timeout");

View File

@ -100,7 +100,7 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor &aColor)
// (except here at least TextSelectBackground and TextSelectForeground)
// The CSS2 colors below are used.
case eColorID_WindowBackground:
aColor = mSystemColors.colorBackground;
aColor = NS_RGB(0xFF, 0xFF, 0xFF);
break;
case eColorID_WindowForeground:
aColor = mSystemColors.textColorPrimary;

View File

@ -2243,6 +2243,10 @@ nsWindow::DrawWindowUnderlay(LayerManager* aManager, nsIntRect aRect)
AndroidGeckoLayerClient& client = AndroidBridge::Bridge()->GetLayerClient();
if (!client.CreateFrame(&jniFrame, mLayerRendererFrame)) return;
if (!WidgetPaintsBackground())
return;
if (!client.ActivateProgram(&jniFrame)) return;
if (!mLayerRendererFrame.BeginDrawing(&jniFrame)) return;
if (!mLayerRendererFrame.DrawBackground(&jniFrame)) return;
@ -2309,6 +2313,22 @@ nsWindow::ScheduleResumeComposition(int width, int height)
}
}
bool
nsWindow::WidgetPaintsBackground()
{
static bool sWidgetPaintsBackground = true;
static bool sWidgetPaintsBackgroundPrefCached = false;
if (!sWidgetPaintsBackgroundPrefCached) {
sWidgetPaintsBackgroundPrefCached = true;
mozilla::Preferences::AddBoolVarCache(&sWidgetPaintsBackground,
"android.widget_paints_background",
true);
}
return sWidgetPaintsBackground;
}
bool
nsWindow::NeedsPaint()
{

View File

@ -157,7 +157,7 @@ public:
static void SchedulePauseComposition();
static void ScheduleResumeComposition(int width, int height);
virtual bool WidgetPaintsBackground() { return true; }
virtual bool WidgetPaintsBackground();
#endif
protected: