summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/android/GLWebViewState.cpp
Commit message (Collapse)AuthorAgeFilesLines
* resolved conflicts for merge of 7eb15a6b to masterNicolas Roard2011-10-171-1/+7
|\ | | | | | | Change-Id: Ibb8a05afcdf79923d8ba105b391fa9dcd2e9deb9
| * Improve performances / fixes some glitchesNicolas Roard2011-10-141-1/+7
| | | | | | | | | | | | | | | | | | | | - no layout / bgd color check if no inval on the base layer - throttle the number of ImageTexture uploaded per draw call - disable fast layer position update for now bug:5297559 bug:5421309 bug:5218173 Change-Id: I9ff9867dd3cfc2e0805e378d75ea75667fef8673
| * Double number of tile textures allocated - do not mergeChris Craik2011-10-131-1/+3
| | | | | | | | | | bug:5452814 Change-Id: Ib13a0f4e5189af0e4928bc376b29610e20eeb4dc
* | am 9bd21466: Merge "Refactor the image sharing code" into ics-mr0Nicolas Roard2011-10-131-1/+1
|\ \ | |/ | | | | | | * commit '9bd214662e776fb18e43d1ad32ce274803ec309a': Refactor the image sharing code
| * Merge "Refactor the image sharing code" into ics-mr0Nicolas Roard2011-10-131-1/+1
| |\
| | * Refactor the image sharing codeNicolas Roard2011-10-121-1/+1
| |/ |/| | | | | | | | | | | | | | | We add a separate Images Manager, working both in GL and software rendering. bug:5425148 Change-Id: Ib5bc88ad94d49c7f1eb969a716691ac98dc10b77
| * Merge "Revert crash on bad scale - do not merge" into ics-mr0Chris Craik2011-10-111-3/+1
| |\ |/ /
| * Revert crash on bad scale - do not mergeChris Craik2011-10-111-3/+1
| | | | | | | | | | bug:5367327 Change-Id: I94589e007f9669fa1b43ab5cee42bfa44d9e503c
* | Mark tiles discarded by TransferQueue as dirtyChris Craik2011-10-111-1/+2
|/ | | | | | | | | | | | bug:5409902 Tiles were being discarded from the queue (and simply unsuccessfully added). This caused them to get stuck in the 'ValidatedUntransferred' state. Now if a tile isn't added successfully, or if it's discarded, it removes its painting texture and will have to repaint from scratch. Change-Id: I551e00fb8a6be3b0f3cabeabaa91e8b8b30019d5
* Merge "Switch find on page to GL"John Reck2011-10-071-146/+2
|\
| * Switch find on page to GLJohn Reck2011-10-071-146/+2
| | | | | | | | | | | | | | Bug: 5354191 Refactor how extras are drawn in GL Change-Id: Ifb61c73abecd2d074903a7fb44fe4b82aacc64ac
* | Fix inverted mode renderingNicolas Roard2011-10-061-2/+0
|/ | | | | | | | | | The GPU texture upload workaround broke it, as we are not using the Shaders when doing the copy. Adding some code to instead use a final shader that can be either normal or inverted, on demand. bug:5424589 Change-Id: If845233e12c65738925fbc81b21f1dc0fd38546e
* Fix ring clipJohn Reck2011-10-041-3/+14
| | | | | | Bug: 5406350 Change-Id: I95507ee163a2cb41cc605efaabf32b7cad814533
* HW accelate button focus ringsJohn Reck2011-10-031-1/+4
| | | | | | Bug: 5353510 Change-Id: I1bb306381864357dab4c38fd5c182fda2dd08d8c
* Add debug informations to keep better track of layers allocationNicolas Roard2011-09-291-0/+1
| | | | | | | | | Fix coherency issue in ClassTracker (it's accessed from two different threads and we were not locking the datastructure) bug:5366807 Change-Id: I7dbd4417a49f4b3af3e09d614cec6b4568b09f7a
* Fix a memory leak with LayerAndroidNicolas Roard2011-09-291-0/+4
| | | | | | | (we had a cycle between LayerAndroid and PaintedSurface) bug:5366807 Change-Id: I1b7341984b3cc6fd998b9ab54205bb963eb9223d
* Crash if stack is corruptedChris Craik2011-09-231-1/+3
| | | | | | | bug:5362098 For tracking down very rare, very wrong scale values Change-Id: I00a5dd8d75c47c4c13c903e587b3983ea23496d7
* Merge "Avoid infinite prepare loop if bad scale provided"Chris Craik2011-09-231-0/+10
|\
| * Avoid infinite prepare loop if bad scale providedChris Craik2011-09-231-0/+10
| | | | | | | | | | | | | | | | | | | | bug:5362098 Note: we shouldn't be getting bad scales, now that the scale corruption issue has been reverted. Added logging for these to wrap transfer queue as well to detect fp corruption regression. Change-Id: I5e6d2afc1d483452140fab5390395c9581db86ca
* | Merge "If we have a bad framework inval rect, request entire screen redraw"Chris Craik2011-09-231-6/+13
|\ \
| * | If we have a bad framework inval rect, request entire screen redrawChris Craik2011-09-231-6/+13
| |/ | | | | | | | | | | | | | | | | | | | | | | bug:5365139 This problem is occurring because we convert webkit invals to framework ones, but webkit invals don't account for stolen/discarded tiles/textures. This is just a temporary fix, see also bug:5321078 which describes the root of the problem. Change-Id: I6d823315dba8d669171c9c7c9ed3ca20fbed07ae
* | Merge "Get rid of unnecessary glFinish"Teng-Hui Zhu2011-09-221-2/+0
|\ \ | |/ |/|
| * Get rid of unnecessary glFinishTeng-Hui Zhu2011-09-211-2/+0
| | | | | | | | | | bug:5347539 Change-Id: Iac3888afe1130043e7800e623dd6e061ecf6f40d
* | Prevent rings from being clippedJohn Reck2011-09-201-2/+10
|/ | | | | | Bug: 5348386 Change-Id: I6fd9c1d856be257a1a757649aa85e55d4a14a8d1
* We be GL ringing it all over them layersJohn Reck2011-09-191-67/+80
| | | | | | Bug: 5333083 Change-Id: Ia2b03d8d9e0167d06f8a900152e25e66372acd59
* Allocate textures based purely on viewport sizeChris Craik2011-09-131-2/+5
| | | | | | | | | | bug:5211417 Allocate textures based upon viewport size, instead of visible nr of tiles. This will help prevent rare OOM issues triggering from a certain position in the page. Change-Id: Ib43fef0e0b9b8e4e26df448d67bb159a105e300c
* Revert "WebView animation support"Teng-Hui Zhu2011-09-061-1/+1
| | | | | | | This reverts commit 078f4452393311da6165131451fcf86e04e04f25. bug:5264188 Change-Id: I3dd6cf46a168893aa3067615f2f0f902c6f66d74
* Enable double buffering via base tilesChris Craik2011-09-021-8/+10
| | | | | | | | | | | | bug:2522049 allocate textures and tiles using the gldraw count when they were most recently prepared remaining issues: -layers still flicker (presumably from texture stealing) -layers aren't double buffered yet Change-Id: Iccdf68326d7d476269d4e3a13903aaab249ee92d
* WebView animation supportTeng-Hui Zhu2011-08-311-1/+1
| | | | | bug:4982054 Change-Id: I6f4fe313d242f728a515c485a2531611d7166198
* better locking while scrolling, but disables double bufferingChris Craik2011-08-251-8/+6
| | | | | | | | | | don't detect scrolling, query from java removes double buffering depends on CL in frameworks/base: https://android-git.corp.google.com/g/#/c/130213/ bug:5106313 Change-Id: Ibfa7f305874f4209fed001c030bb94e752d479b9
* Merge "Re-enable tile prefetching, correct and adjust max tile allocation logic"Chris Craik2011-08-231-2/+2
|\
| * Re-enable tile prefetching, correct and adjust max tile allocation logicChris Craik2011-08-221-2/+2
| | | | | | | | | | bug:5168261 Change-Id: I37ec223da4ac1555cd925b08f105f9ed571cb2d9
* | Press state colors updateJohn Reck2011-08-221-4/+4
|/ | | | | | Bug: 5173644 Change-Id: Ic5a30410e7805e44880773420a3a20b587f80a28
* Refactoring of BaseLayerAndroid and GLWebViewState:Nicolas Roard2011-08-191-76/+64
| | | | | | | | | - we extract the GL set up GLWebViewState - we extract the zoom management to a new ZoomManager class bug:3392331 Change-Id: If42523a7192bab2f8c9d1f00a50721380340230d
* Merge "Fix repaint when we toggle the inverted mode - add a boolean return ↵Nicolas Roard2011-08-181-4/+14
|\ | | | | | | in WebView::nativeSetProperty() - add an inverted flag in BaseTileTexture"
| * Fix repaint when we toggle the inverted modeNicolas Roard2011-08-181-4/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | - add a boolean return in WebView::nativeSetProperty() - add an inverted flag in BaseTileTexture Note that we invert the textures rather than the final screen. bug:5167645 java counterpart: https://android-git.corp.google.com/g/#/c/129133/ Change-Id: I249e429dbabb347b1c5c0828ef4fad17ece6e4b3
* | Merge "tile prefetching now triggered automatically"Chris Craik2011-08-181-5/+13
|\ \ | |/ |/|
| * tile prefetching now triggered automaticallyChris Craik2011-08-171-5/+13
| | | | | | | | | | | | | | | | | | bug:5178457 bug:5168261 Tiles are now prefetched at a distance of 2 from the view if the content is at least 1.2x the size of the view (in each dimension independantly) Change-Id: I1c251ffbbae709f8924133b9b22df39b4fa88b4c
* | Reduce the tiles lookup complexityNicolas Roard2011-08-171-0/+3
|/ | | | | | bug:5032212 Change-Id: Id3c6ff55de995f1c6b3f9bf36e941f3f499f0bc8
* Merge "Fix Gmail blank page"Teng-Hui Zhu2011-08-171-2/+2
|\
| * Fix Gmail blank pageTeng-Hui Zhu2011-08-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Gmail is updating the tilePages in different scale factor. One of the beginning scale factor happens to be the same as the initial value 1.0, then the code will consider the page is prepared which is not true, and we miss the necessary page update. Changing the initial value will make sure that we know the current page is not really prepared yet. And we can update accordingly. bug:5134126 Change-Id: Ieb4d01513fc4fbe9d996ab62ad5eb43bb5aace2e
* | full screen delayed repaints no longer dropped in GLWebViewStateChris Craik2011-08-151-14/+26
|/ | | | | | | | | | bug:5049965 Full screen repaints were passing incorrect inval regions. Added special case for delayed full repaints to pass full screen back as inval region from drawGL() method. Since no valid inval region was passed to framework to redraw, the view's drawGL() wasn't called again, so the tiledPages couldn't be swapped. Change-Id: Ibbcec77b304c01ba1e3072376480e04613aad56e
* Fix ANR in webkitNicolas Roard2011-08-081-3/+1
| | | | | bug:5128336 Change-Id: I591882eb9bd96a04fd34299a8bf76d35a9462d94
* Merge "Support registering page swap callback, content inval"Chris Craik2011-08-031-0/+2
|\
| * Support registering page swap callback, content invalChris Craik2011-08-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | bug:5062896 Depends on the following frameworks/base change: https://android-git.corp.google.com/g/#change,124879 a WebView may now register a page swap callback and content invalidate to benchmark tile rendering performance Change-Id: I97f6ed05cff12b11266a472163aab1f3b3ddc87e
* | Shared surface textureTeng-Hui Zhu2011-08-021-1/+9
|/ | | | | | | | | | | Instead of assigning each tile a Surface Texture, now just a normal GL texture. The content from skia bitmap will first drawn into a queue of Surface Textures, at draw time, blit them into each tile's GL texture. Added extra lock to protect the queue operation and Surface Texture operation. bug:5044597 Change-Id: I25f46228b93a3e99526daf52d8bd0d8d8fcc2879
* added pageswap callback from drawGL to WebViewChris Craik2011-07-281-2/+4
| | | | | | | | | | | | | bug:5008210 When setting a new base layer, WebView can signal that it wants to have it's pageSwapCallback triggered. This is only done upon request, currently whenever the WebTextView is being displayed so that it can be repositioned upon pageswap. Depends on the following frameworks/base change: https://android-git.corp.google.com/g/#change,124607 Change-Id: Id99c2d5a15cdb4317802a92cedae16a9e0aebc8d
* New tile logging JNI interfaceChris Craik2011-07-211-4/+6
| | | | | | | | | | bug:5062896 Added more functionality to tile logging and querying (explicit location and size), invalidation region logging, as well as string-based JNI query method which should stabilize the JNI interface in the future. Change-Id: I937d4227abf0d0f18124c484438fd13a62439fb6
* Implements tiled layers. We remove all the existing code in LayerAndroidNicolas Roard2011-07-141-0/+19
| | | | | | | | | | | related to the old texture management and introduce two new classes: - PaintedSurface, used as a placeholder ui-side for the regularly changing LayerAndroid - TiledTexture, implementing the tiling of PaintedSurface using a set of BaseTile bug:4580444 bug:3392331 Change-Id: I0daa079d2acce49f3baa8c312ea0b0dd457ccd5c
* Tile profiling backendChris Craik2011-07-131-0/+4
| | | | | | Added tile profiling member (TilesProfiler) to TilesManager to track rendering status of tiles. Change-Id: Ied828c6ad2a15588965e6641edecb162bd76bc62