| OLD | NEW | 
|---|
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #include "platform/graphics/AcceleratedStaticBitmapImage.h" | 5 #include "platform/graphics/AcceleratedStaticBitmapImage.h" | 
| 6 | 6 | 
| 7 #include "gpu/command_buffer/client/gles2_interface.h" | 7 #include "gpu/command_buffer/client/gles2_interface.h" | 
| 8 #include "gpu/command_buffer/common/sync_token.h" | 8 #include "gpu/command_buffer/common/sync_token.h" | 
| 9 #include "platform/graphics/MailboxTextureHolder.h" | 9 #include "platform/graphics/MailboxTextureHolder.h" | 
| 10 #include "platform/graphics/SkiaTextureHolder.h" | 10 #include "platform/graphics/SkiaTextureHolder.h" | 
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 84       GL_TEXTURE_2D, m_textureHolder->mailbox().name); | 84       GL_TEXTURE_2D, m_textureHolder->mailbox().name); | 
| 85   destGL->CopyTextureCHROMIUM(sourceTextureId, 0, GL_TEXTURE_2D, destTextureId, | 85   destGL->CopyTextureCHROMIUM(sourceTextureId, 0, GL_TEXTURE_2D, destTextureId, | 
| 86                               0, internalFormat, destType, flipY, false, false); | 86                               0, internalFormat, destType, flipY, false, false); | 
| 87   // This drops the |destGL| context's reference on our |m_mailbox|, but it's | 87   // This drops the |destGL| context's reference on our |m_mailbox|, but it's | 
| 88   // still held alive by our SkImage. | 88   // still held alive by our SkImage. | 
| 89   destGL->DeleteTextures(1, &sourceTextureId); | 89   destGL->DeleteTextures(1, &sourceTextureId); | 
| 90 } | 90 } | 
| 91 | 91 | 
| 92 sk_sp<SkImage> AcceleratedStaticBitmapImage::imageForCurrentFrame( | 92 sk_sp<SkImage> AcceleratedStaticBitmapImage::imageForCurrentFrame( | 
| 93     const ColorBehavior& colorBehavior) { | 93     const ColorBehavior& colorBehavior) { | 
|  | 94   // TODO(xlai): Refactor so that sync tokens are only used when | 
|  | 95   // |m_textureHolder| is MailboxTextureHolder. | 
|  | 96   // https://crbug.com/693229 | 
| 94   // TODO(ccameron): This function should not ignore |colorBehavior|. | 97   // TODO(ccameron): This function should not ignore |colorBehavior|. | 
| 95   // https://crbug.com/672306 | 98   // https://crbug.com/672306 | 
| 96   checkThread(); | 99   checkThread(); | 
| 97   if (!isValid()) | 100   if (!isValid()) | 
| 98     return nullptr; | 101     return nullptr; | 
| 99   createImageFromMailboxIfNeeded(); | 102   createImageFromMailboxIfNeeded(); | 
| 100   return m_textureHolder->skImage(); | 103   return m_textureHolder->skImage(); | 
| 101 } | 104 } | 
| 102 | 105 | 
| 103 void AcceleratedStaticBitmapImage::draw(PaintCanvas* canvas, | 106 void AcceleratedStaticBitmapImage::draw(PaintCanvas* canvas, | 
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 173 | 176 | 
| 174 void AcceleratedStaticBitmapImage::checkThread() { | 177 void AcceleratedStaticBitmapImage::checkThread() { | 
| 175   if (m_detachThreadAtNextCheck) { | 178   if (m_detachThreadAtNextCheck) { | 
| 176     m_threadChecker.DetachFromThread(); | 179     m_threadChecker.DetachFromThread(); | 
| 177     m_detachThreadAtNextCheck = false; | 180     m_detachThreadAtNextCheck = false; | 
| 178   } | 181   } | 
| 179   CHECK(m_threadChecker.CalledOnValidThread()); | 182   CHECK(m_threadChecker.CalledOnValidThread()); | 
| 180 } | 183 } | 
| 181 | 184 | 
| 182 }  // namespace blink | 185 }  // namespace blink | 
| OLD | NEW | 
|---|