app_server: don't ignore invisible layers

* When a layer has opacity 0, we can't just ignore it, we still
  have to play back its picture, even if the drawing will never
  appear on screen. This is because there might be nested layers
  and if they don't get blended, their references are not released.
  Also, it can be argued that state changes in the layer should be
  applied even if the layer is invisible (if we ignore it there,
  it would be inconsistent with other layers).

  This edge case of invisible layers could be optimized further, but
  it is rare enough anyway, so this should do.
This commit is contained in:
Julian Harnath 2015-11-13 11:19:04 +01:00
parent 2193dcd799
commit 0fab27a23e

View File

@ -243,9 +243,6 @@ Canvas::BlendLayer(Layer* layer)
layer->Play(this);
layer->ReleaseReference();
return;
} else if (layer->Opacity() == 0) {
layer->ReleaseReference();
return;
}
UtilityBitmap* layerBitmap = layer->RenderToBitmap(this);