summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/android/GLWebViewState.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Revert "Crash if stack is corrupted"Chris Craik2012-07-241-3/+1
| | | | | | | | | bug:5367327 bug:6656642 This reverts commit 874e5fbe3113052b0e3b7068d4b8df89bdeb4579 Change-Id: I0fd636bd93c47e9e21fac2ccf1996048823e893a
* am fa20fc4f: am 6cb37392: Merge "Make sure we gather the textures before any ↵Teng-Hui Zhu2012-06-081-3/+4
|\ | | | | | | | | | | | | prepare work" into jb-dev * commit 'fa20fc4fef9665f0f079850c1e2cd8a2f149b72a': Make sure we gather the textures before any prepare work
| * Make sure we gather the textures before any prepare workTeng-Hui Zhu2012-06-071-3/+4
| | | | | | | | | | | | | | | | | | The available tile textures pool is not updated while we try to prepare image. This can lead to getting obsolete tile textures. bug:6613009 Change-Id: I0170f0cfba197c7a7ed48866028b30075417af30
* | am 9f927208: am bc9eaa14: Merge "Reduce UI-thread computation" into jb-devChris Craik2012-05-291-0/+2
|\ \ | |/ | | | | | | * commit '9f9272088f0222ce4535b8b638036e5ec3340e74': Reduce UI-thread computation
| * Reduce UI-thread computationChris Craik2012-05-251-0/+2
| | | | | | | | | | | | | | | | | | 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
* | am afa83dc9: am 377dc9f6: Fix invalidations sent to frameworkNicolas Roard2012-05-211-1/+8
|\ \ | |/ | | | | | | * commit 'afa83dc9a969a65309ddc3ad75c53e3f27e4c27b': Fix invalidations sent to framework
| * Fix invalidations sent to frameworkNicolas Roard2012-05-171-1/+8
| | | | | | | | | | bug:6479200 bug:6323847 bug:4124445 Change-Id: I1a4058ba6c69d3e285b6274d99a6eafcbf1cdc6f
* | am d8c854e5: am 824ebef6: Merge "Fix the tile dirty and framework inval when ↵Teng-Hui Zhu2012-05-211-8/+11
|\ \ | |/ | | | | | | | | | | in single Surface mode" into jb-dev * commit 'd8c854e53633cfc2d72a89fe3eae1bf2274dedc7': Fix the tile dirty and framework inval when in single Surface mode
| * Fix the tile dirty and framework inval when in single Surface modeTeng-Hui Zhu2012-05-171-8/+11
| | | | | | | | | | | | bug:6457191 Change-Id: Icaef168e16aa26c9a09c6f99e5a498fc1948d2bc
* | am e35dd347: Merge "dirty all tiles when entering/exiting single surface ↵Chris Craik2012-05-101-1/+3
|\ \ | |/ | | | | | | | | | | mode" into jb-dev * commit 'e35dd347e6dd4854f19a7700488e8d35f3ad1135': dirty all tiles when entering/exiting single surface mode
| * dirty all tiles when entering/exiting single surface modeChris Craik2012-05-101-1/+3
| | | | | | | | | | | | bug:6471089 Change-Id: I609a75d028ec9fa7b26be90d38b116a9766c4f21
* | am 38c83730: Merge "Unify the naming of rectangles used for draw." into jb-devTeng-Hui Zhu2012-05-041-43/+54
|\ \ | |/ | | | | | | * commit '38c837307303e521ec0d1c9f7c0df7bd78dd53a5': Unify the naming of rectangles used for draw.
| * Unify the naming of rectangles used for draw.Teng-Hui Zhu2012-05-031-43/+54
| | | | | | | | | | | | | | | | | | The rects are referring to the same rect under different coordinates, so we just prefix the coordinates' name to differentiate the rects. This is pure refactor, no functional change. bug:6338456 Change-Id: Ic072a4f5aa56a25751e0151a697c0e31bca94ef5
* | am e0b5cd3a: Merge "Fix max texture setup" into jb-devTeng-Hui Zhu2012-05-021-4/+4
|\ \ | |/ | | | | | | * commit 'e0b5cd3a7762688630b380296675a47aa013992d': Fix max texture setup
| * Merge "Fix max texture setup" into jb-devTeng-Hui Zhu2012-05-021-4/+4
| |\
| | * Fix max texture setupTeng-Hui Zhu2012-05-011-4/+4
| | | | | | | | | | | | | | | | | | bug:5698410 Change-Id: Idff9cb52cabd4cc87427f975fee4968e779139bf
| * | Merge "Don't crash on bad scale - DO NOT MERGE" into jb-devJohn Reck2012-04-271-1/+1
| |\ \ | | |/ | |/|
| | * Don't crash on bad scale - DO NOT MERGEChris Craik2012-04-271-1/+1
| | | | | | | | | | | | | | | | | | bug:5367327 bug:5826464 Change-Id: Ic15b3c28d610ba688f8c41e0782b3d0896b61fe2
| * | DO NOT MERGE: Fix clipping issue due to webview animation(scaling)Teng-Hui Zhu2012-04-251-9/+9
| |/ | | | | | | | | | | | | | | | | | | | | | | | | Our visibleRect didn't respect the webview animation scaling before. Get rid of the old code about scaling for ortho projection, we don't need it any more since we moved onto the clip info. Rename the viewport to visibleRect which is used more often. bug:5684832 Change-Id: I8f49cbfd776a95073414ecc31e2fb40642e1ae0d cherry-pick the master change: https://android-git.corp.google.com/g/#/c/183080/
* | Merge "Fix clipping issue due to webview animation(scaling)"Teng-Hui Zhu2012-04-251-9/+9
|\ \ | |/ |/|
| * Fix clipping issue due to webview animation(scaling)Teng-Hui Zhu2012-04-241-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Our visibleRect didn't respect the webview animation scaling before. Get rid of the old code about scaling for ortho projection, we don't need it any more since we moved onto the clip info. Rename the viewport to visibleRect which is used more often. framework change is: https://android-git.corp.google.com/g/#/c/183798/ bug:5684832 Change-Id: I1cc217a29889bd69458948065831052828198419
* | signal framework to unregister functorChris Craik2012-04-231-5/+0
|/ | | | Change-Id: Ia503e508a13c40c29f18db924dce4ac711b03c68
* Temporarily disable functor use of kProcessModeChris Craik2012-04-201-0/+5
| | | | | bug:6365056 Change-Id: Icd0c6b4741159f5413bd697be30b244c8c701ec6
* Better handle the EGL context lost situation.Teng-Hui Zhu2012-04-201-7/+1
| | | | | | | | | Unless framework provide a better message, we can't avoid this EGL context issue totally if mis-match happen again. Clean up some obsolete code. Change-Id: Ica03daecd58f9757c8cad41e0f40d5d51b041748
* Merge "Move the matrix support to rely on the new framework clip info"Teng-Hui Zhu2012-04-161-14/+11
|\
| * Move the matrix support to rely on the new framework clip infoTeng-Hui Zhu2012-04-131-14/+11
| | | | | | | | | | | | | | | | | | | | In this new way, we don't need to worry about the animation offset, b/c it is in the clip rect. Also add the matrix support for video layer. bug:5684832 Change-Id: I08e22ca042e425f8f7af935b60e04f2a4dbc52df
* | Merge "only profile drawing frames"Chris Craik2012-04-131-3/+4
|\ \
| * | only profile drawing framesChris Craik2012-04-131-3/+4
| |/ | | | | | | Change-Id: I743a0bf1989572a7c48ebf9f0691c9cec9bef098
* | remove several unneeded variables/parametersChris Craik2012-04-131-1/+1
|/ | | | Change-Id: I862487e8700a408e9e2f7f4dc7d034674ac454d0
* Don't render expanded bounds if useMinimalMemory setChris Craik2012-04-091-3/+3
| | | | | | Extracted TilesManager instance locally, and standardized the extraction naming. Change-Id: Ia6ba1013bc6502f7c3a49d5dbf5d74739d997d2e
* Rename several classesChris Craik2012-04-041-8/+4
| | | | | | | | | | | | | | | | | | | | BaseTile,BaseTileTexture -> Tile,TileTexture Used in layers other than the base LayerGroup -> Surface Renamed to convey that it is a member of the SurfaceCollection, and that the layers grouped inside are painted together (if at all) DualTiledTexture -> SurfaceBacking Better conveys that this is the raster backing for a surface that can paint. It may be implemented with two tiled textures for now, but that isn't as important as its relationship to the surface. TiledTexture -> TileGrid Renamed to make it more clear that it was a container of tiles, and to be less similar to TileTexture Change-Id: I843f8603a2080cfe5a7313ba1c2eff10620f8aa2
* Use new draw-less functor execution mode to do work without redrawingTeng-Hui Zhu2012-04-021-15/+21
| | | | | | Depends on frameworks/base change https://android-git.corp.google.com/g/#/c/177934/ Change-Id: I9154017ef2990b3bebd038cabcaf3d93c9df14d8
* Translucent background color support for webviewTeng-Hui Zhu2012-04-021-3/+2
| | | | | | | | | | | | | | | | | | We need to respect the background color set for webview and combine that with the CSS background. Since we are tiled based and need to avoid double drawing, we need to determine the areas not covered by available tiles and draw the background. This involves a bit computation overhead. Therefore, we only compute those areas when alpha is between 1 to 254. When alpha is 255, we just need a glClear. When alpha is 0, nothing need to be drawn. Due to the fact that the tile can be partially drawn, texture generator need to know the background color to clear the tiles for the base layer. bug:5684832 Change-Id: I51f9d219f2722cc088eeea603623f9660f7a136a
* Further clean up for baselayer mergeTeng-Hui Zhu2012-03-221-1/+3
| | | | | | | | | 1. Require a layer for every SurfaceCollection Now we don't need the null check any more. 2. drawBackground only in SurfaceCollectionManager. Change-Id: I3bbebac86e41a2367a05f71cffdc6cd72fda7506
* reimplement BaseLayerAndroid as a LayerAndroid subclassChris Craik2012-03-221-183/+17
| | | | | | Breaks low res tiling, and expanded rendering bounds. Change-Id: Iec3ba2adceb6bd95399594d29fd8c0b18c1122ce
* Remove unnecessary invertedTileSwitchJohn Reck2012-03-201-6/+0
| | | | Change-Id: Ifd27772aba0435ea55008400e4b42181bf45b944
* replace XLOGC/XLOG with ALOGD/ALOGVChris Craik2012-03-121-51/+29
| | | | | | | Started using ALOGW/E for indicating warnings/errors Also delete the unused TilesTracker.h Change-Id: I1986a3057efd4c8e260dbc020e21c02d4d646cf3
* Replace picture count with the SurfaceCollection countChris Craik2012-03-091-6/+3
| | | | | | Displays surface collection count on tiles when visual indicator is on. Change-Id: Ibe90792279849baff6f5bf0d71b80d9081471dc4
* add more logs and format correctionTeng-Hui Zhu2012-03-051-12/+14
| | | | Change-Id: I63bda1a03b3e634b8ee92a0379ab46af8a7af6b5
* Merge "layer rendering cleanup/rewrite"Chris Craik2012-02-281-26/+25
|\
| * layer rendering cleanup/rewriteChris Craik2012-02-281-26/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * added 'LayerGroup' class separate the painting/tiled features of a layer (eventually multiple layers) tiled drawing/preparing/counting details are abstracted out of LayerAndroid * added 'SurfaceCollection' class incorporates both the BaseLayerAndroid/LayerAndroid tree, as well as the vector of tiled LayerGroup * renamed 'TreeManager' to 'SurfaceManager' * Removes PaintedSurface was mostly a thin wrapper around DualTiledTexture * Combines TilePainter/SurfacePainter * Simplified ref counting Change-Id: I92c5c75f48d92e0e28812c56de00102399fc02ee
* | Delete the GL shader resources in a cleaner wayTeng-Hui Zhu2012-02-281-8/+5
|/ | | | | | bug:6079959 Change-Id: I55c96bb6abc90503c178607d0798c82e2c5ecaf1
* Gl resource should be re-initialized after EGL context changedTeng-Hui Zhu2012-02-271-5/+13
| | | | | | | | | EGLContext can be re-created when memory pressure is very high, that will delete all the GL resources automatically. After this, we should re-create the GL resources for webView. bug:6075574 Change-Id: I3035554d124cee38df3ba2dfae1eda0568b45d0f
* Fix issues when DEBUG turned onTeng-Hui Zhu2012-02-241-1/+1
| | | | Change-Id: Ifeeed93859f3b9122cf6e2aa3ae66d6cfa603dce
* Merge "Fix rounding error in clip"Chris Craik2012-02-171-11/+6
|\
| * Fix rounding error in clipChris Craik2012-02-161-11/+6
| | | | | | | | | | | | | | | | | | | | bug:5460425 Was intermittently causing top row of pixels in a layer to be incorrectly clipped. Additionally, cleaned up shader draw setup. Change-Id: Ib089354a1953e9a574e58a459d5f3623cc68dd21
* | No prefetch for low end device.Teng-Hui Zhu2012-02-151-14/+15
|/ | | | | | | | | | | The bottleneck for crespo is normally on painting side, prefetch can add unnecessary overhead to it. This only hurts zooming in, but scroll/fling or zoom out is looking fine, and overall performance is better. bug:6008123 Change-Id: I591b29eb5f296cd959f1aea845dfb9711123fa54
* Plumbing to notify WebViewCore when paints should pauseChris Craik2012-02-021-19/+21
| | | | Change-Id: I93c76ccd401b1fe611cc9c1ea361251667422c7b
* Clean up tranfer queue before EGL context destroyTeng-Hui Zhu2012-01-271-3/+10
| | | | | | | | | | | | | This will avoid ANR when texture generation thread is stuck b/c transfer queue is running out of slots, at the same time, EGL context get destroyed and no more draw call coming to free up more slots. Abandon the surface texture will also help to be more memory friendly. Move the highEndGfx check to TilesManager. bug:5639899 Change-Id: I98f0289ae5ca18361f71dec853327223506e3073
* Draw GLExtras for each layer.Victoria Lease2012-01-091-5/+1
| | | | | | | | | | | Bug: 5747765 Moved the GLExtras::drawGL() call out of GLWebViewState into LayerAndroid and BaseLayerAndroid. This allows us to apply per-layer transforms, ensuring that find-on-page highlights are positioned correctly on their layers. Change-Id: I65b950875eb736601f8afec1770e5cc0201c0450