summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/android/rendering
Commit message (Collapse)AuthorAgeFilesLines
* Merge tag 'android-4.2.2_r1' of ↵Steve Kondik2013-02-122-9/+1
|\ | | | | | | | | | | https://android.googlesource.com/platform/external/webkit into 1.1 Android 4.2.2 release 1
| * Only signal collection swap on true swapChris Craik2012-12-031-4/+0
| | | | | | | | | | | | bug:7484054 Change-Id: I7cb648f64f45711013996be7e2cd0dabdbd614ae
| * Revert "TransferQueue: use a few extra buffers"Chris Craik2012-11-151-5/+1
| | | | | | | | | | | | | | | | | | bug:7549630 bug:6876502 This reverts commit 923f222d2281bf1faac6221b3fb1298940a6d205. Change-Id: I232a5b5b077dc1046ff2d6272876a5e5b441d42c
* | external/webkit: use Cpu Upload pathMatthew Hui2013-01-212-0/+8
| | | | | | | | | | | | | | Use Cpu Upload mode since the Gpu mode is not working and expected to be slower. Change-Id: Iacb6de4a4e054e4f6ebb07d8a8209228e78e5ee0
* | Revert "Workaround double blit failure"Matthew Hui2013-01-213-12/+0
|/ | | | | | | This reverts commit 0c274b96c2dfb5a83b12a99f1ca9069378f73bdb. Change-Id: Iaea6c25cf1aae59e7ce85cd43b028ba9c2e437f0 CRs-fixed: 396141
* TransferQueue: use a few extra buffersJamie Gennis2012-10-251-1/+5
| | | | | | | This change is a temporary workaround for a buffer synchronization issue. Bug: 6876502 Change-Id: I030b26818ba7e78037a38dcaddd18782cd086b75
* Always use full transfer queue size on highEndGfx devicesChris Craik2012-10-221-1/+1
| | | | | | | | bug:7393228 Single tile per frame is too slow Change-Id: Ife93976411a54c43313ab2f80706a1ec125e507a
* Determine maxZoomScale from bitmap/text drawingChris Craik2012-10-014-13/+11
| | | | | | bug:7247750 Change-Id: I8238acc2c20942ab2f42936d16a03226909aebcd
* Avoid unsafe use of SkRefCnt::getRefCnt() in ImagesManagerChris Craik2012-08-313-2/+14
| | | | | | | | | | | | | | | | | | The function isn't threadsafe, so races would occur and certain textures wouldn't be removed from ImagesManager's master list. The list would then be iterated over, all items dereferenced, and bad times would ensue. The SkRefCnt class uses atomic inc/dec to decide when to destroy an object, but reading such an integer non-atomically isn't safe. Instead use the real signal we're looking for - when the ImageTexture is deleted - to know when to remove the ImageTexture from ImagesManager's list. Mutual exclusion from editing the list is now maintained by only unref-ing the ImageTexture within releaseImage, which holds the ImagesManager's m_imagesLock (which we already do anyway). bug:6859278 Change-Id: I75ebf79f2617484e7df355d6539226ce64882369
* Merge "Exit fast tile swap mode immediately upon SurfaceCollection swap" ↵Chris Craik2012-08-201-0/+1
|\ | | | | | | into jb-mr1-dev
| * Exit fast tile swap mode immediately upon SurfaceCollection swapChris Craik2012-08-201-0/+1
| | | | | | | | | | | | | | | | | | | | bug:7002755 This prevents the SurfaceCollectionManager from getting stuck in fast swap mode, where because swaps are occuring in process mode, and not in draw mode, which would previously have prevented the flag from being cleared. Change-Id: Ie888438c73aabeeff0534caad68b58e4acd2c440
* | Increase max texture count to accommodate large screensChris Craik2012-08-161-5/+5
|/ | | | | bug:6968485 Change-Id: I8691d34fc5d4da1d03f31fd45c2d6d6abc39c53b
* Correctly handle preserve-3d layer orderingChris Craik2012-08-152-21/+6
| | | | | | | | bug:6843244 Current implementation only works for HW acceleration. Change-Id: I009090132a8f3859ab9e57e609c1754f9021d4d7
* Improve in-canvas pure color checkingChris Craik2012-08-101-21/+30
| | | | | | | Fast path for same-color rect drawing in InstrumentedPlatformCanvas Also minimize unnecessary clipping recording-side. Change-Id: I8e9ebcfce8d137ca0b27d17c42c5045a0d3b3a36
* Merge "Reset cached opacity on shader swap" into jb-mr1-devChris Craik2012-08-071-0/+1
|\
| * Reset cached opacity on shader swapChris Craik2012-08-071-0/+1
| | | | | | | | | | | | | | | | | | bug:6947623 Multiple shaders share the opacity variable, so reset the cache when swapping programs. Change-Id: I752575d6089077aa8034c171c5c016e5e4e80606
* | Remove usages of getCanvasJohn Reck2012-08-061-1/+0
| | | | | | | | | | | | Everything goes through either PlatformGraphicsContext or recordingCanvas() Change-Id: I375a4294d2e8d4b467b70c6b8a7f0b96f402f252
* | am dd5962d2: am 47387cc7: Merge "Fix browser rendering issue: pure color ↵John Reck2012-08-021-1/+1
|\ \ | |/ |/| | | | | | | | | tiles are rendered black" * commit 'dd5962d2534b8c3cc215492c8dcf463e923f73c2': Fix browser rendering issue: pure color tiles are rendered black
| * am 47387cc7: Merge "Fix browser rendering issue: pure color tiles are ↵John Reck2012-08-021-1/+1
| |\ | | | | | | | | | | | | | | | | | | rendered black" * commit '47387cc7716048dcea1cc5f9bf37da65d38e10be': Fix browser rendering issue: pure color tiles are rendered black
| | * Fix browser rendering issue: pure color tiles are rendered blackYuyang Du2012-08-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The “pure color tile” optimization finds the pure-color tiles and then draws the tiles simply with the color (otherwise the texture). But the RGBA color pointer type is char, which may overflow when the value is larger than 127. In such case, the tiles in question are rendered black, because of the wrong color. This bug is fixed by defining the pointer as unsigned char. Change-Id: I5c7214423fa6961e707bde72f0e18c610374745d Author: Yuyang Du <yuyang.du@intel.com> Signed-off-by: Yuyang Du <yuyang.du@intel.com> Signed-off-by: Jack Ren <jack.ren@intel.com> Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
* | | Fix background tiles drawingChris Craik2012-07-272-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Bug:6875992 Initialize the InstrumentedPlatformCanvas with the correct background color so that if no painting is done, the background color is returned as the pure color. Change-Id: Ibe928a4e158f0a4302e0996eca88c3e8b1f1b666
* | | am f35e08fe: am 0e8bb600: Null check to fix crashBart Sears2012-07-241-1/+3
|\ \ \ | |/ / | | | | | | | | | * commit 'f35e08fefff71bb9b84b679f8d13cf57c6e1d756': Null check to fix crash
| * | Null check to fix crashBart Sears2012-07-231-1/+3
| |/ | | | | | | | | | | | | Need to make sure that img is not zero. bug: 6864545 Change-Id: I2a2c5440347681b462abaa5ac9101ddb6137c8c4
* | Reduce post-zoom painting delay to 100msChris Craik2012-07-231-1/+1
| | | | | | | | Change-Id: Ibaa44ce9c24bdf05de0963efe12d9123113b08b6
* | SurfaceBackings are always zoomable once zoomableChris Craik2012-07-193-9/+21
| | | | | | | | | | | | | | | | | | | | Previously toggling hasText for the content of the SurfaceBacking was enough to cause it to change scale entirely each time the value was changed. Now the allowZoom flag is sticky to avoid unnecessary full-SurfaceBacking repaints. Additionally, changes from allowZoom true->false will not trigger delay. Change-Id: Ie6a13850f86d21f5a12a184c08b940aa2156ef07
* | Use canvas-based pure color checkChris Craik2012-07-196-14/+333
| | | | | | | | | | | | | | | | Fall back to standard brute-force method. InstrumentedPlatformCanvas from upstream webkit trunk/Source/WebCore/platform/graphics/blackberry/InstrumentedPlatformCanvas.h as of changeset 113390 ( http://trac.webkit.org/changeset/113390 ) Change-Id: I7b3884b8284d896c0948d23b6ec9fe0d2d98a6d5
* | Cache gl operations to avoid redundancyChris Craik2012-07-162-22/+63
| | | | | | | | Change-Id: I1e8f607a94685f3aa8f63e40fe2a265bca8a084e
* | Merge "Fix construction order warning"Chris Craik2012-06-271-1/+1
|\ \
| * | Fix construction order warningChris Craik2012-06-261-1/+1
| | | | | | | | | | | | Change-Id: I39a170ce120e4ce5237e1cfc2b0e94cdb42c6124
* | | Improve the CPU upload path.Teng-Hui Zhu2012-06-266-17/+22
|/ / | | | | | | | | | | Swap the SkBitmap instead of a copy to save the memory bandwidth. Change-Id: I0998248a9a87ce4058898e66a4739995da9c003c
* | Pin renderers to threads instead of tilesChris Craik2012-06-1912-53/+56
| | | | | | | | | | | | | | Move thread local bitmaps to renderers, so the renderers own them, and can perform optimizations. Change-Id: I60d604759f4ce2ec9981990d1613eaf23cd1e625
* | Fix GPL buildChris Craik2012-06-193-1/+4
| | | | | | | | Change-Id: Ie9d941bd59584b8a77b90e1f41b2c49a0e02e572
* | Enable multiple tile painting threadsChris Craik2012-06-196-44/+85
| | | | | | | | | | | | | | Use one thread by default. Further experiments should be done with determining the correct number of threads, and better scheduling. Change-Id: I2a87dac7d0b652b5ab627744650d12b0b8842003
* | When swapping, immediately start processing new workChris Craik2012-06-151-1/+7
| | | | | | | | | | | | | | | | | | Because no new work is enqueued after a SurfaceCollectionManager::swap(), there can be significant TexturesGenerator idle period before the next prepare of the new painting tree. This change removes that delay by preparing the new tree immediately. Change-Id: I061983abe7210f75d5e4f44d5dca79a0a47d329f
* | Merge "Show layer tree in hierarchyviewer"John Reck2012-06-141-2/+2
|\ \
| * | Show layer tree in hierarchyviewerJohn Reck2012-06-141-2/+2
| |/ | | | | | | Change-Id: I2a53b157d40c630e7ca1361f8e0c8aca1d6e8a4e
* | Add detailed tracing to tile paintingChris Craik2012-06-134-1/+26
|/ | | | | bug:6653638 Change-Id: I839917feb1803bc1f4ace5aa2367067024a18706
* Merge "Workaround double blit failure" into jb-devChris Craik2012-06-123-0/+12
|\
| * Workaround double blit failureChris Craik2012-06-123-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | An issue occurs on Stingray where calling glTexSubImage2d in order to blit an update to a texture fails silently if the texture has already been updated this frame. With this change, we now draw the tile off-screen to work around the issue just before the second blit is required. This way, the second blit succeeds. bug:6630040 Change-Id: I07213954669b0f3d3f5b87a748a591e532b097b4
* | Crash fix by checking null pointerTeng-Hui Zhu2012-06-121-1/+1
|/ | | | | | | bug:6579681 Regression from https://android-git.corp.google.com/g/#/c/197452/ Change-Id: If185faec6bb2d014c304afbb8ff752ebfc6e4b51
* Merge "Add fast drawing path for repeat background image." into jb-devTeng-Hui Zhu2012-06-077-22/+130
|\
| * Add fast drawing path for repeat background image.Teng-Hui Zhu2012-06-077-22/+130
| | | | | | | | | | | | | | | | | | In the slow draw path, we are drawing the small background image one by one. Now in the fast path, we can use the GL shader to repeat the iamges. bug:6579681 Change-Id: I8ab413bdd073cb867002b77b36d4a1361290ecb2
* | Size change on the base surface invalidates the larger of the new/old dimensionsChris Craik2012-06-041-8/+18
| | | | | | | | | | | | | | | | Fixes an issue where tiles outside the new bounds weren't invalidated, as the layer shrank in one dimension. bug:6609350 Change-Id: I1f6715670654c9e6211dbec71875aa2ea11cd8f8
* | Disable clipping on the base surfaceChris Craik2012-06-011-10/+8
| | | | | | | | | | | | | | | | Base surface can expand dynamically (see BaseLayerAndroid::updatePosition) to fill the viewport, so disable clipping on it. bug:6593707 Change-Id: I3afafb28fbe95d3162c76f8e835932577ded65ce
* | Fix animation in single surface modeTeng-Hui Zhu2012-05-314-27/+27
|/ | | | | | bug:5683630 Change-Id: I4d617962a8412de884903f150799f733ea996e1c
* Merge "Minimize tearing for fixed element in single surface mode" into jb-devTeng-Hui Zhu2012-05-302-6/+4
|\
| * Minimize tearing for fixed element in single surface modeTeng-Hui Zhu2012-05-302-6/+4
| | | | | | | | | | | | bug:5683630 Change-Id: I43f738f2649a79b4ad7865ed27375c07195fa9b9
* | Merge "Reduce UI-thread computation" into jb-devChris Craik2012-05-293-4/+6
|\ \ | |/ |/|
| * Reduce UI-thread computationChris Craik2012-05-253-4/+6
| | | | | | | | | | | | | | | | | | If the current clip covers the entire view, we don't have to calculate framework invals from swapping layers - we already draw them immediately. bug:6530473 Change-Id: I4b639e06781371e37c246f3220b79f28e7d95649
* | Use newest available SurfaceBacking scale when counting texture usageChris Craik2012-05-251-2/+2
|/ | | | | | | | Using m_scale would mean that while zooming out, the clipped area would get larger, but the scale would stay the same. bug:6561401 Change-Id: I0806ecb8f565c4d227a2be2b7a27a0af6aff7b46