X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=common%2Fcore%2Foverlaylayer.cpp;h=39c2af64a7ba92c96f1e9907daa86d8b72f23c4d;hb=748c488f85ed609731b9a3c9c3f993df6da27d88;hp=f2a29cff8aad416f4bd0ec1f927acfa244eede81;hpb=9faeba32d09fe23eb5467786fd786f94f31377bb;p=android-x86%2Fexternal-IA-Hardware-Composer.git diff --git a/common/core/overlaylayer.cpp b/common/core/overlaylayer.cpp index f2a29cf..39c2af6 100644 --- a/common/core/overlaylayer.cpp +++ b/common/core/overlaylayer.cpp @@ -110,6 +110,8 @@ void OverlayLayer::SetBuffer(HWCNativeHandle handle, int32_t acquire_fence, buffer->SetOriginalHandle(handle); } + buffer->SetDataSpace(dataspace_); + imported_buffer_.reset(new ImportedBuffer(buffer, acquire_fence)); ValidateForOverlayUsage(); } @@ -199,8 +201,12 @@ void OverlayLayer::InitializeState(HwcLayer* layer, source_crop_width_ = layer->GetSourceCropWidth(); source_crop_height_ = layer->GetSourceCropHeight(); source_crop_ = layer->GetSourceCrop(); + dataspace_ = layer->GetDataSpace(); blending_ = layer->GetBlending(); surface_damage_ = layer->GetLayerDamage(); + + solid_color_ = layer->GetSolidColor(); + if (previous_layer && layer->HasZorderChanged()) { if (previous_layer->actual_composition_ == kGpu) { CalculateRect(previous_layer->display_frame_, surface_damage_); @@ -491,6 +497,7 @@ void OverlayLayer::CloneLayer(const OverlayLayer* layer, layer_index_ = z_order; z_order_ = z_order; blending_ = layer->blending_; + solid_color_ = layer->solid_color_; } void OverlayLayer::Dump() {