summaryrefslogtreecommitdiffstats
path: root/WebCore/platform
Commit message (Collapse)AuthorAgeFilesLines
* Use LayerAndroid::find with the original x and y.Patrick Scott2010-11-121-1/+1
| | | | | | | If the picture is not provided, use the findInner case to find the layer at the given position. Change-Id: I811c1c4d631086832a3a32038834117a1c4e9601
* Track all tiles in the viewport instead of only the upper left tile.Derek Sollenberger2010-11-125-91/+113
| | | | | | | | | | | | | | | We currently store only the coordinates of the upper left tile and leave it to the caller to compute the actual number of tiles in the viewport. This CL computes that information upfront and then passes a rect containing the tiles in the viewport to the necessary parties. This also allows us to intelligently prepare tiles that are currently off-screen but given the user's scroll direction will be on-screen shortly. bug: 3190926 Change-Id: I50a5922ed8bc7e8fd8e4cacd4986a9f275cd37b0
* Only check to see if the page is ready when necessary.Derek Sollenberger2010-11-111-2/+2
| | | | | | | This CL reorders the contents of an if statement to ensure that we do not pointlessly check to see if the tiledPage is ready. Change-Id: I7155c4beb5a6dcbcb195e2c80c317a599a9553af
* Merge "Use a fixed number of BaseTiles per TiledPage."Derek Sollenberger2010-11-117-88/+121
|\
| * Use a fixed number of BaseTiles per TiledPage.Derek Sollenberger2010-11-117-88/+121
| | | | | | | | | | | | | | | | | | This CL ensures that the TiledPage only keeps track of BaseTiles that are backed by a texture. In order to avoid unecessary allocations on the stack we pre-allocate the memory for the tiles and reuse tiles. Change-Id: I894cf4d5c6b564169ccf7a967629f5d670a5426d
* | Revert "Merge "Fix text-shadow style when blur is 0px""Bart Sears2010-11-101-4/+7
| | | | | | | | | | | | | | Bug: 3185661 This reverts commit ccbb8a238ca0ba5fc0780884e281e6b6a601a675, reversing changes made to fcb462de639304deaa2da761823fbfeef88b36d4.
* | Merge Webkit at r70949: moved stub to right namespaceJohn Reck2010-11-091-1/+5
| | | | | | | | | | | | Cherry pick of http://trac.webkit.org/changeset/71346 Change-Id: Id64a084c3e0e74e5b9ec7c0c22141b46b044097d
* | Merge Webkit at r70949: Added FontOrientation paramJohn Reck2010-11-092-2/+3
| | | | | | | | | | | | | | FontOrientation was added as a parameter to the fontPlatformData function http://trac.webkit.org/changeset/70250 Change-Id: I918401828c6b1cd9901c0aa50f6a6ffffac01a8c
* | Merge Webkit at r70949: Initial merge by git.John Reck2010-11-09180-1257/+3996
| | | | | | | | Change-Id: I77b8645c083b5d0da8dba73ed01d4014aab9848e
* | Merge "Null-check in GLUtils::isEGLImageSupported()"Russell Brenner2010-11-081-2/+3
|\ \
| * | Null-check in GLUtils::isEGLImageSupported()Russell Brenner2010-11-051-2/+3
| |/ | | | | | | | | | | | | Avoid segfault by checking for null strings in GLUtils::isEGLImageSupported() and GLUtils::isEGLFenceSyncSupported(). Bug: 3169653
* | Merge "Fix text-shadow style when blur is 0px"Teng-Hui Zhu2010-11-081-7/+4
|\ \
| * | Fix text-shadow style when blur is 0pxTeng-Hui Zhu2010-11-051-7/+4
| | | | | | | | | | | | | | | | | | | | | When blur is 0px , the should at least show up without any blurry. http://b/issue?id=2581273 Change-Id: I3db26647c1ed3f7dd29e7045ae6f5c5b81722da6
* | | Fix the blank screen bug.Nicolas Roard2010-11-051-5/+13
| |/ |/| | | | | | | | | | | | | As the texture generator thread isn't an infinite loop, we could miss a signaled new request. Bug:3155078 Change-Id: Ifad1ec356b061eec24399cad4b572866f6d74f06
* | Support partial invalidation of tiles based on webkit's inval rect.Derek Sollenberger2010-11-0513-205/+199
| | | | | | | | | | | | | | | | | | This CL reverts the rollback of the original CL now that we have fixed bug #3165953. This reverts commit 144ccd9c8dba05ffaa0ae598f9b70032050fc20e. Change-Id: Ibb5254f652ed95aa3b7b71bf24a2578c51e74a70
* | Merge "Code cleanup for FontCacheAndroid.cpp"Russell Brenner2010-11-051-3/+4
|\ \
| * | Code cleanup for FontCacheAndroid.cppRussell Brenner2010-11-041-3/+4
| | | | | | | | | | | | | | | | | | | | | Minor changes to allow check-webkit-style to complete without warning for FontCacheAndroid.cpp. Change-Id: Ifaa8634d53374c94251641d6b9daf5f8114af9e9
* | | Merge "Adjust layers when parent layer scrolls"Cary Clark2010-11-051-6/+19
|\ \ \
| * | | Adjust layers when parent layer scrollsCary Clark2010-11-041-6/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a page has layers, it causes the main body of the page to become a layer as well. The scroll position of the WebView must be applied to the layer to translate the cursor rings correctly for hit-testing. Today, applying the scroll position of the WebView screws up overflow scrolling. Until this gets figured out, skip using the scroll position in CacheFrame adjust() and unadjust(). The position of the layer, and all of its parent layers, should be considered when adjusting the rectangle bounds contained by that layer. Before, only the child layer's position was considered. The clip used by scrollable divs may be initialized but never set. If it is empty, ignore it, rather than clipping out all content. In CacheBuilder, remove a couple of unnecessary lines -- the CacheInput initialization clears all members. In SelectText, reverse the order of the xfer mode and paint objects to remove a Skia ref count assert. In CachedInput, make the debug printout current. Overall, added more debugging output (turned off by default). bug:3030370 Change-Id: Ic19c24b3bf33d081a1d0c1f8c06601dcb56ae881
* | | | Merge "Revert "Support partial invalidation of tiles based on webkit's inval ↵Derek Sollenberger2010-11-0413-199/+205
|\ \ \ \ | | | | | | | | | | | | | | | rect.""
| * | | | Revert "Support partial invalidation of tiles based on webkit's inval rect."Derek Sollenberger2010-11-0413-199/+205
| | | | | | | | | | | | | | | | | | | | This reverts commit fc92ca2409a95b539274985812d88016b6b84b7e.
* | | | | Merge "Sync up with chromium/FontLinux.cpp"claireho2010-11-041-401/+400
|\ \ \ \ \
| * | | | | Sync up with chromium/FontLinux.cppclaireho2010-11-031-401/+400
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Adopted the code style change for TextRunWalker class from chromium/FontLinux.cpp to android/FontAndroid.cpp. Change-Id: I7f49efcaf5685181980a4ffa3b654d1577e3f9cd
* | | | | Merge "Fixed 2720133. Better lookup with @font-face local"Russell Brenner2010-11-041-45/+85
|\ \ \ \ \ | |_|/ / / |/| | / / | | |/ / | |/| |
| * | | Fixed 2720133. Better lookup with @font-face localRussell Brenner2010-11-031-45/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using existing Skia APIs, FontCache::createFontPlatformData can detect when the retrieved font is the Skia default and will reject that choice, allowing WebCore to try the next font on the CSS fallback list. If the requested family is a generic family, e.g. "serif" or "monotype", the Skia default will be accepted. Change-Id: I8007caae96f26cd58ea1cf5bf2da8170e3ce6d9d Bug: 2720133
* | | | Merge "Support partial invalidation of tiles based on webkit's inval rect."Derek Sollenberger2010-11-0413-205/+199
|\ \ \ \
| * | | | Support partial invalidation of tiles based on webkit's inval rect.Derek Sollenberger2010-11-0413-205/+199
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL causes the selective repainting of BaseTiles (and their associated GL textures) using the information provided by Webkit. If tiles need repainted they are marked with as dirty and the thread painting and uploading the textures will only operate on dirty tiles. This change resulted in some significant refactoring most of which revolved around these changes... (1) Removed PaintingInfo from the Texture object and instead track the state of the tile in Tile object. (2) Removed all pending TileSets for a TiledPage when the page produces a new set. This ensures that the tiles currently visible to the user are painted instead of ones that may already be offscreen. Change-Id: I93845d8e6e7b066e6bab84bcde11be4a6940002f
* | | | | Let Chrome HTTP stack handle number of connectionsKristian Monsen2010-11-041-0/+7
| |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | First of changes based on willchan's feedback. Note that this code doesn't really work as intended anyway. Change-Id: I91d43f1daa78248700738338cf3d24a12496ac19
* | | | Merge "Bug 3158404 : Performance improvement for browser complex script handle."claireho2010-11-031-47/+42
|\ \ \ \ | |/ / / |/| | |
| * | | Bug 3158404 : Performance improvement for browser complex script handle.claireho2010-11-031-47/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Reduce the number of calls of normalization function. The purpose of NFC normalization is to compose base letter and non-spacing combining marks to be accented character. i.e. Convert A(U+0041) and acute(U+0301) to A with Acute(U+00C1). NFC includes three parts - decomposition, canonical sort and composition for entire string. It is very expensive. TextRunWalker class would like to convert '\t', '\n' and non-break space(\U+00A0) to space. NFC cannot achieve this purpose. So, it is not necessary to call normalization for Font::treatAsSpace(). This improvement saves the NFC nomalization calls for complex script text has '\t', '\n' or 0xA0 and does not have non-spacing combining marks. 2. FontAndroid.cpp scans text for space and punctuation in 2 separate loops. Combine these 2 loops to one pass. Change-Id: I6b1ff20dd1072cf1f03066ce1c87ad39d0040779
* | | | Fix for deadlockNicolas Roard2010-11-021-9/+8
| | | | | | | | | | | | | | | | | | | | | | | | Bug:3155066 Change-Id: I3e249050c779d10db75f97b177e09144a52f70b1
* | | | Set the page background color in BaseLayerAndroidNicolas Roard2010-11-022-32/+8
|/ / / | | | | | | | | | | | | | | | This allows us to show the correct background even if the tiles aren't yet painted. Change-Id: Ia3ef97770aadb5f64490e44f20110ea21578ccd0
* | | Merge "add function to find color on picture's edge"Cary Clark2010-11-022-0/+28
|\ \ \
| * | | add function to find color on picture's edgeCary Clark2010-11-012-0/+28
| | | | | | | | | | | | | | | | | | | | bug:3065048 Change-Id: I18ef06a4b9ac3bef077f08efd738958bd5abaafe
* | | | Update the layers onlyNicolas Roard2010-11-012-6/+24
|/ / / | | | | | | | | | | | | | | | | | | | | | C++ counterpart to https://android-git.corp.google.com/g/#change,77500 Bug:2975990 Change-Id: I3b8fd27f991d6776059a15eef36d0c9a7b44f9bb
* | | Enhance auto hyphenation.Shimeng (Simon) Wang2010-10-291-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Bypass leading white spaces, since webkit does pass them down. 2. Return better hyphenation point, since previously it's more aggressive and causes display issue in Google books. issue: 2672163 Change-Id: I8ae47f7c553f533f752d6f7c697cf2fffd421e5b
* | | Merge "Cleaning up BackedDoubleBufferedTexture."Derek Sollenberger2010-10-282-11/+12
|\ \ \
| * | | Cleaning up BackedDoubleBufferedTexture.Derek Sollenberger2010-10-272-11/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The cleanup consisted of removing unused fields, ensuring mutexes are only used for cross-thread interactions, and adding comments. Change-Id: Ie008cd8f803299d418439793f21feb90d8325a8e
* | | | Fix for split text bug.Nicolas Roard2010-10-273-3/+3
| |/ / |/| | | | | | | | | | | | | | Bug:3134026 Change-Id: I0ccaf27b8ede58603aeb2284c56527d4fe0a589b (cherry picked from commit ca3a75fc3f9712c15e4a84ebcfd48699963896bb)
* | | rewrite select text and others for layersCary Clark2010-10-272-12/+110
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Layers contain pictures, and draw them offset from the top of the page. Several readers of pictures need to account for this displacement when computing what part of the picture intersects a tap on the screen. The tap may not correspond to the first layer that intersects it, so all layers must be checked to find the best match. The root layer usually draws everywhere, so for a match to correspond to the root, the match must additionally intersect text. Layers may create offscreen bitmaps when drawing to correctly alpha blend the results to the screen, but this causes the items in the bitmap to draw to an unexpected location when the picture is treated as a spatial database. To get around this, call the SkCanvas::save() from the overridden saveLayer() to push and pop the canvas layer state without creating an offscreen. WebCore/platform/graphics/android/LayerAndroid.cpp WebCore/platform/graphics/android/LayerAndroid.h - In find(), iterate through all children, instead of stopping on the first match. - Check to see if the child actually draws at the desired location, and if it draws text there as well. - Specify a slop factor to allow for inaccuracies in touch. - Check the root for text before checking the children. WebKit/android/nav/CachedFrame.cpp WebKit/android/nav/CachedFrame.h - Modify the (x,y) co-ordinate by the layer's offset, when finding the picture corresponding to a point. WebKit/android/nav/CachedLayer.cpp WebKit/android/nav/CachedLayer.h - More plumbing to adjust the point if the picture is contained in an offset layer. WebKit/android/nav/CachedRoot.cpp WebKit/android/nav/CachedRoot.h - Correct the (x,y) locations by the layer offset. - Add some debugging (disabled by default) WebKit/android/nav/ParsedCanvas.h - One stop shopping that calls save() from saveLayer(). - Reset the bounder to null to balance its ref count. WebKit/android/nav/SelectText.cpp WebKit/android/nav/SelectText.h - Rearrange the way pictures are tracked. Record the picture corresponding to the input location when the selection starts, requiring that the picture remain unchanged as the selection extends. - Only draw adornments for when the corresponding picture is drawn. This fixes a Gmail specific problem, where the layers come and go as the page scrolls. - Always use the supplied visible bounds instead of computing it from the canvas. - Correct location points by layer offsets. - Add to the picture ref count so it can't be deleted during selection. WebKit/android/nav/WebView.cpp - Simplify visibleRect code. - Simplify all SelectText interfaces. bug:3114609 Change-Id: I43dc3252fc86c4b6500edcd650126b2559f530e3
* | Merge "Cleanup the getAvailableTexture() function."Derek Sollenberger2010-10-271-35/+24
|\ \
| * | Cleanup the getAvailableTexture() function.Derek Sollenberger2010-10-261-35/+24
| | | | | | | | | | | | | | | | | | | | | We now check to see if the tile owns a texture and immediately return if that is the case. I also updated the documentation. Change-Id: I88a6f2e38ef33fd37f5926c793c9e775e646bef2
* | | Remove locks in BaseTile. Also fix the bug where the browser hangs when ↵Nicolas Roard2010-10-262-16/+31
|/ / | | | | | | | | | | | | closing a tab. Bug:3112610 Change-Id: I4f4854a8a0688fc24b512e7671a2ad0708121075
* | Fix random crashes when HW acceleration is turned on.Nicolas Roard2010-10-268-30/+34
| | | | | | | | | | | | Bug:3107362 Change-Id: I354a07369056e696deed7458a4f4e14d54b7f6c8
* | Add DEBUG_COUNT stuffNicolas Roard2010-10-268-3/+65
| | | | | | | | | | Change-Id: I99a0d2bc23da6299228ba5adea7cf161e01d8fbf (cherry picked from commit 8f12379d1df1bc5f2e85bce687d89ba20d4a5e9e)
* | Merge Webkit at r70209: defaultLanguage has been renamed.Ben Murdoch2010-10-261-1/+1
| | | | | | | | | | | | | | It is now known as defaultPlatformLanguage. See http://trac.webkit.org/changeset/70095 Change-Id: I523e93e78317a2e365429a8027967aa46d0370fa
* | Merge Webkit at r70209: Add stub for proxyServersForURL function.Ben Murdoch2010-10-261-0/+42
| | | | | | | | | | | | | | | | | | This is a new function added to WebKit platform API. Currently left unimplemented. See http://trac.webkit.org/changeset/68951 Change-Id: I7bf33d1b054980918e42cee8da8ecd8494f0b543
* | Merge Webkit at r70209: Path::debugString has been removed.Ben Murdoch2010-10-261-58/+0
| | | | | | | | | | | | See http://trac.webkit.org/changeset/69505 Change-Id: Ic9e275531354b166d3a262399a1caa4482c5c5d3
* | Merge Webkit at r70209: ImageColorSpace type no longer exists.Ben Murdoch2010-10-261-1/+2
| | | | | | | | | | | | | | | | It has been replaced with ColorSpace. Also DeviceColorSpace has been renamed ColorSpaceDeviceRGB. See http://trac.webkit.org/changeset/70143 Change-Id: Ib603dcef04dcfa51fca142d8b3d03689a18e110f
* | Merge Webkit at r70209: Fix conflictsBen Murdoch2010-10-261-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | WebCore/page/FrameView.cpp http://trac.webkit.org/changeset/69896 WebCore/html/parser/HTMLDocumentParser.cpp http://trac.webkit.org/changeset/69283 WebCore/html/HTMLPlugInElement.h http://trac.webkit.org/changeset/69596 WebCore/html/HTMLInputElement.cpp http://trac.webkit.org/changeset/68996 http://trac.webkit.org/changeset/69378 WebCore/plugins/npapi.cpp http://trac.webkit.org/changeset/69808 WebCore/css/CSSComputedStyleDeclaration.cpp http://trac.webkit.org/changeset/69220 WebCore/css/CSSParser.cpp http://trac.webkit.org/changeset/69196 WebCore/rendering/style/RenderStyle.h http://trac.webkit.org/changeset/68680 WebCore/rendering/RenderImage.cpp http://trac.webkit.org/changeset/68917 WebCore/platform/android/FileSystemAndroid.cpp http://trac.webkit.org/changeset/69594 WebCore/inspector/InspectorController.h http://trac.webkit.org/changeset/68767 See also Android change I4c724f2f52a5a9db6dca6b58032b6a902aac74b5 which is why this is a conflict. JavaScriptCore/parser/Parser.cpp http://trac.webkit.org/changeset/69516 Change-Id: I5a708c6590ba029a2b3ecc3b30478ea303e1f2f5