| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2009 Apple Inc. All rights reserved. | 2 * Copyright (C) 2009 Apple Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 686 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 697 "Commit() was called on a context whose " | 697 "Commit() was called on a context whose " |
| 698 "OffscreenCanvas is not associated with a " | 698 "OffscreenCanvas is not associated with a " |
| 699 "canvas element."); | 699 "canvas element."); |
| 700 return; | 700 return; |
| 701 } | 701 } |
| 702 if (!drawingBuffer()) | 702 if (!drawingBuffer()) |
| 703 return; | 703 return; |
| 704 // TODO(crbug.com/646864): Make commit() work correctly with | 704 // TODO(crbug.com/646864): Make commit() work correctly with |
| 705 // { preserveDrawingBuffer : true }. | 705 // { preserveDrawingBuffer : true }. |
| 706 getOffscreenCanvas()->getOrCreateFrameDispatcher()->dispatchFrame( | 706 getOffscreenCanvas()->getOrCreateFrameDispatcher()->dispatchFrame( |
| 707 std::move(drawingBuffer()->transferToStaticBitmapImage())); | 707 std::move(drawingBuffer()->transferToStaticBitmapImage()), |
| 708 drawingBuffer()->contextProvider()->isSoftwareRendering()); |
| 708 } | 709 } |
| 709 | 710 |
| 710 PassRefPtr<Image> WebGLRenderingContextBase::getImage( | 711 PassRefPtr<Image> WebGLRenderingContextBase::getImage( |
| 711 AccelerationHint hint, | 712 AccelerationHint hint, |
| 712 SnapshotReason reason) const { | 713 SnapshotReason reason) const { |
| 713 if (!drawingBuffer()) | 714 if (!drawingBuffer()) |
| 714 return nullptr; | 715 return nullptr; |
| 715 | 716 |
| 716 drawingBuffer()->commit(); | 717 drawingBuffer()->commit(); |
| 717 IntSize size = clampedCanvasSize(); | 718 IntSize size = clampedCanvasSize(); |
| (...skipping 6723 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7441 | 7442 |
| 7442 void WebGLRenderingContextBase::getHTMLOrOffscreenCanvas( | 7443 void WebGLRenderingContextBase::getHTMLOrOffscreenCanvas( |
| 7443 HTMLCanvasElementOrOffscreenCanvas& result) const { | 7444 HTMLCanvasElementOrOffscreenCanvas& result) const { |
| 7444 if (canvas()) | 7445 if (canvas()) |
| 7445 result.setHTMLCanvasElement(canvas()); | 7446 result.setHTMLCanvasElement(canvas()); |
| 7446 else | 7447 else |
| 7447 result.setOffscreenCanvas(getOffscreenCanvas()); | 7448 result.setOffscreenCanvas(getOffscreenCanvas()); |
| 7448 } | 7449 } |
| 7449 | 7450 |
| 7450 } // namespace blink | 7451 } // namespace blink |
| OLD | NEW |