Bug 663776. Part 1: When determining whether the scale factors hav changed, we need to use GetBaseTransform for the old scale factors, because that's what stores the old transform that we computed scale factors from. r=mattwoodrow

--HG--
extra : rebase_source : 48be38242fa6bf51644dc45a804dd834e7eb97b7
This commit is contained in:
Robert O'Callahan 2012-12-07 12:58:12 +13:00
Родитель fae9165b76
Коммит 4e9fe2ccb0
1 изменённых файлов: 3 добавлений и 2 удалений

Просмотреть файл

@ -2783,10 +2783,11 @@ ChooseScaleAndSetTransform(FrameLayerBuilder* aLayerBuilder,
// or it was previously unscaled.
bool clamp = true;
gfxMatrix oldFrameTransform2d;
if (aLayer->GetTransform().Is2D(&oldFrameTransform2d)) {
if (aLayer->GetBaseTransform().Is2D(&oldFrameTransform2d)) {
gfxSize oldScale = oldFrameTransform2d.ScaleFactors(true);
if (oldScale == scale || oldScale == gfxSize(1.0, 1.0))
if (oldScale == scale || oldScale == gfxSize(1.0, 1.0)) {
clamp = false;
}
}
if (clamp) {
scale.width = gfxUtils::ClampToScaleFactor(scale.width);