{
if (!this->__useStableRenderer && srcBufferInfo.bitsPerPixel == 32 && (GetCompositeMode() != COMPOSITE_MODE_SRC_OVER || srcBitmap.__isPremultiplied))
{
- _Util::Rectangle<int> srcBounds =
- {
- int(Math::Floor(srcRectD.x)),
- int(Math::Floor(srcRectD.y)),
- int(Math::Ceiling(srcRectD.x + srcRectD.w) - Math::Floor(srcRectD.x)),
- int(Math::Ceiling(srcRectD.y + srcRectD.h) - Math::Floor(srcRectD.y))
- };
-
_Util::Pixmap srcImageUnclipped(srcBufferInfo.width, srcBufferInfo.height, srcBufferInfo.bitsPerPixel, srcBufferInfo.pPixels, srcBufferInfo.pitch);
- _Util::Pixmap srcImage = srcImageUnclipped.GetSubBitmap(srcBounds.x, srcBounds.y, srcBounds.w, srcBounds.h);
+ _Util::Pixmap srcImage = srcImageUnclipped.GetSubBitmap(srcRect.x, srcRect.y, srcRect.w, srcRect.h);
_ApplySrcBitmapAttrib(srcImage, srcBitmap, srcBitmap.__isOpaqueAllOver);
_Util::Pixmap dstImageUnclipped(dstBufferInfo.width, dstBufferInfo.height, dstBufferInfo.bitsPerPixel, dstBufferInfo.pPixels, dstBufferInfo.pitch);
evas_object_image_pixels_dirty_set((Evas_Object*) this->__windowHandle, true);
#else
Evas_Object* pSourceObject = _GetWindowSourceObject(this->__windowHandle);
- evas_object_image_data_set(pSourceObject, evas_object_image_data_get(pSourceObject, EINA_TRUE));
evas_object_image_data_update_add(pSourceObject, 0, 0, bufferWidth, bufferHeight);
#endif
evas_object_image_data_update_add((Evas_Object*) this->__windowHandle, x1, y1, x2 - x1, y2 - y1);
#else
Evas_Object* pSourceObject = _GetWindowSourceObject(this->__windowHandle);
- evas_object_image_data_set(pSourceObject, evas_object_image_data_get(pSourceObject, EINA_TRUE));
evas_object_image_data_update_add(pSourceObject, x1, y1, x2 - x1, y2 - y1);
#endif