| Index: cc/ThrottledTextureUploader.cpp
|
| diff --git a/cc/ThrottledTextureUploader.cpp b/cc/ThrottledTextureUploader.cpp
|
| index c152598aa648e1586aa9b892e16bd4e53750797d..2ffbdee265487669b9dcb79182b25d9c7655cf99 100644
|
| --- a/cc/ThrottledTextureUploader.cpp
|
| +++ b/cc/ThrottledTextureUploader.cpp
|
| @@ -5,6 +5,7 @@
|
| #include "config.h"
|
| #include "ThrottledTextureUploader.h"
|
|
|
| +#include "CCPrioritizedTexture.h"
|
| #include "Extensions3DChromium.h"
|
| #include "TraceEvent.h"
|
| #include <algorithm>
|
| @@ -152,13 +153,32 @@ void ThrottledTextureUploader::endQuery()
|
|
|
| void ThrottledTextureUploader::uploadTexture(CCResourceProvider* resourceProvider, Parameters upload)
|
| {
|
| - bool isFullUpload = upload.destOffset.isZero() &&
|
| - upload.sourceRect.size() == upload.texture->texture()->size();
|
| + bool isFullUpload = upload.geometry.destOffset.isZero() &&
|
| + upload.geometry.sourceRect.size() == upload.texture->size();
|
|
|
| if (isFullUpload)
|
| beginQuery();
|
|
|
| - upload.texture->updateRect(resourceProvider, upload.sourceRect, upload.destOffset);
|
| + if (upload.bitmap) {
|
| + upload.bitmap->lockPixels();
|
| + upload.texture->upload(
|
| + resourceProvider,
|
| + static_cast<const uint8_t*>(upload.bitmap->getPixels()),
|
| + upload.geometry.contentRect,
|
| + upload.geometry.sourceRect,
|
| + upload.geometry.destOffset);
|
| + upload.bitmap->unlockPixels();
|
| + }
|
| +
|
| + // TODO(reveman): Move this logic to CCTextureUpdateController.
|
| + if (upload.picture) {
|
| + upload.texture->acceleratedUpdate(
|
| + resourceProvider,
|
| + upload.picture,
|
| + upload.geometry.contentRect,
|
| + upload.geometry.sourceRect,
|
| + upload.geometry.destOffset);
|
| + }
|
|
|
| if (isFullUpload)
|
| endQuery();
|
|
|