summaryrefslogtreecommitdiffstats
path: root/WebCore/rendering
Commit message (Collapse)AuthorAgeFilesLines
* Use upstream version of ANDROID_HITTEST_WITHSIZESteve Block2010-08-276-45/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change removes the last occurrences of ANDROID_HITTEST_WITHSIZE and updates WebKit to use the upstream version of this logic. This follows on from https://android-git.corp.google.com/g/#change,60166 which merged the upstream logic into the Android tree but maintained the existing behaviour for Android, guarded with ANDROID_HITTEST_WITHSIZE. This change introduces the following functional changes ... - HitTestResult::addNodeToRectBasedTestResult() The Android version proceeded with the containment test if the node is null. We now early out and continue the hit test. We also record the node's shadowAncestorNode, rather than the node itself. - RenderLayer::hitTestList() The android version always updates the result, but only updates the result layer if the result is not a rect based result. We now always update result layer, but only update the result if the result is not a rect based result. - RenderSVGRoot::nodeAtPoint() The Android version returned true only if it's not a rect based hit test. Now we return true always. - HitTestResult::m_isRectBased In the Android version, a padding must have positive width and height. Now we allow one of the two to be zero, provided the other is positive All other changes are non-functional and should probably have been done as part of https://android-git.corp.google.com/g/#change,60166 Note that the change to RenderBlock::nodeAtPoint() is a non-functional change because we don't pass a rect to addNodeToRectBasedTestResult(), so the default zero rect is used and the hit test always fails. Change-Id: I4163fddad59ad6485df40cd48794aa262f76ced7
* Merge WebKit at r65615 : Initial merge by git.Iain Merrick2010-08-2355-285/+542
| | | | Change-Id: Ifbf384f4531e3b58475a662e38195c2d9152ae79
* Add CSS cursor ring definitionsCary Clark2010-08-183-0/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows web pages to have fine-grain control over the appearance of the rings drawn around nodes. Generated links (email, addresses, phone numbers) are no longer given unique colors. To preserve this feature, a separate change could add an HTML extension similar to vlink to provide the cursor ring defintions for theses links. The mechanism implemented below isn't appropriate since these links don't necessarily correspond to single DOM nodes or other DOM elements. ------------ CSS examples ------------ The CSS to specify the ring looks like: -webkit-ring-fill-color:rgba(0,0,255,0.4); -webkit-ring-inner-width:2 px; -webkit-ring-outer-width:3.5 px; -webkit-ring-outset: 8 px; -webkit-ring-pressed-inner-color:rgba(0,0,255,0.8); -webkit-ring-pressed-outer-color:rgba(0,0,127,0.3); -webkit-ring-radius: 10 px; -webkit-ring-selected-inner-color:rgba(63,63,255,0.8); -webkit-ring-selected-outer-color:rgba(63,63,127,0.3); and may be alternately defined with a property shortcut: -webkit-ring:rgba(255,0,0,0.4) 5px 7px rgba(255,0,0,0.8) rgba(127,0,0,0.3) 20px rgba(255,63,63,0.8) rgba(127,63,63,0.3); -------------------- Property definitions -------------------- A vertical cross-section of the ring corresponds to these parameters as shown: ______ R / ___O_ R = corner radius / / __I_ o I = inner ring / / / _O_ ^ O = outer ring | | | / F | F = fill |O|I|O| L o = outset | | | \_F_ | L = original link \ \ \__O_ V \ \___I_ o R \____O_ The fill color specifies what to draw inside the ring when the link is followed. The fill area consists of the original link area plus the outset. The inner and outer widths specify the stoke width of the inner and outer rings, respectively. The widths may be specified in fractional pixels. The implementation captures 4 bits of the fraction. The outset specifies the distance from the edge of the original link to the rings' center. Both rings are drawn at the same center location. The radius specifies the curvature of the corners at the center of the rings. ------------- Data lifetime ------------- The selected colors specify the colors of the inner and outer rings when the trackball or D-pad hovers over the link. The pressed colors specify the colors of the rings when the trackball center is pressed or the link is tapped. The CSS data is recorded in the RenderStyle when the DOM is parsed. The widths are scaled up by 16 to preserve the fraction. When the nav cache is built, the CSS style information is recorded in the CachedColor class. Only unique style sets are recorded; many CachedNode instances can share the same CachedColor instance. When the cursor ring is drawn, the CachedColor is retrieved by getting the index from the CachedNode, and looking up the entry in the CachedFrame. The widths are scaled down by 16 since Lengths are stored by the webkit as integers. ---------- File Edits ---------- WebCore/Android.derived.mk - Build the CSS data property tables by concatentating Android specific data and optionally SVG data. WebCore/config.h - Add switch for these rings. This switch is meant as a convenience for finding the code in WebKit that was added to enable this feature. Since the old code in DrawCursor has been removed, it does not revert to the old behavior if the switch is turned off. WebCore/css/AndroidCSSPropertyNames.in - The new ring properties, plus an old one we added before. WebCore/css/CSSComputedStyleDeclaration.cpp WebCore/css/CSSMutableStyleDeclaration.cpp WebCore/css/CSSParser.cpp WebCore/css/CSSStyleSelector.cpp - I can guess what these functions are for as well as anyone, but I really don't know. Do I need all of them? Do I need to modify Mutable at all? WebCore/css/CSSPropertyNames.in - Moved Android addition to AndroidCSSPropertyNames.in WebCore/platform/graphics/Color.h - Added initial color values here. WebCore/platform/graphics/android/android_graphics.* - This draws the cursor ring. The code that draws 'synthetic' links has been discarded. WebCore/rendering/style/RenderStyle.h - Functions to get, set, and initialize the style data. WebCore/rendering/style/StyleRareInheritedData.* - The storage for the style data and an equivalence function. WebKit/Android.mk - Added CachedColor to the build. WebKit/android/nav/CacheBuilder.cpp - Record the color from the DOM into the cache. WebKit/android/nav/CachedColor.* - Store the cached color info. WebKit/android/nav/CachedFrame.* - Where the array of colors is stored. WebKit/android/nav/CachedNode.* - Where the index to the colors is stored. Change-Id: Ia3a931f41d6545e47678e245aafe7c84d4658f94 http://b/2603197
* Fix acid3 crash.Patrick Scott2010-08-181-1/+1
| | | | | Bug: 2928878, 2928899 Change-Id: I90ca6f93a61c921b520731e6a143e5b4457fa44c
* Update navigation in scrollable layers.Patrick Scott2010-08-164-31/+65
| | | | | | | | | | | | | | | | | | | | | | | | Set the foreground clip after drawing. Use the absolute bounds to compute the local foreground clip in order to compensate for any outline. Consolidate the check for overflow scrolling into RenderLayer. Request a compositing update after computing the scroll dimensions. Only change the foregroundRect of the layer during paint so that the outline rect (and background/layerBounds) are correct. Draw the outline as part of the background phase. During painting of a layer, scroll to (0,0), paint, then scroll back. When clicking on an element in a layer, scroll to the position of the element but do not scroll back. This makes text input fields visible to the tree and will properly update when typing. Record the original scroll position of layers in order to offset the bounds of nodes when checking the nav cache. Make sure to reset all cached layers during setRootLayer. Otherwise we were reaching into layers from the wrong thread. Change-Id: Id9827ec461989b0869a8252d4d2563ecd12c5fac
* Merge WebKit at r65072 : Initial merge by git.Ben Murdoch2010-08-1242-288/+370
| | | | Change-Id: Ibcf418498376b2660aacb7f8d46ea7085ef91585
* Merge WebKit at r64523 : Cherry-pick WebKit change 64732 for FILTERS guardSteve Block2010-08-091-2/+6
| | | | | | See http://trac.webkit.org/changeset/64732 Change-Id: I5fe2041764991c6c621bb634df1ed4bcb896f7eb
* Merge WebKit at r64523 : Fix other conflictsSteve Block2010-08-091-86/+0
| | | | | | | | | | | | | | | | | | | | | - WebCore/Android.mk Conflict due to error introduced upstream. See http://trac.webkit.org/changeset/64344/trunk/WebCore/Android.mk and http://trac.webkit.org/changeset/60228/trunk/WebCore/Android.mk - WebCore/html/HTMLFrameSetElement.cpp Conflict due to ANDROID_FLATTEN_FRAMESET See http://trac.webkit.org/changeset/64383 - WebCore/page/Navigator.h Conflict due to APPLICATION_INSTALLED See http://trac.webkit.org/changeset/64371 - WebCore/rendering/SVGResourcesCycleSolver.cpp Conflict due to local ENABLE(FILTERS) guard See http://trac.webkit.org/changeset/64440 Change-Id: Ibafe3b92117c3a7b3eaaa44c6cf3d04c8c6027c2
* Merge WebKit at r64523 : Fix conflicts due to ANDROID_HITTEST_WITHSIZESteve Block2010-08-0914-426/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A modified version of this Android-specific code was upstreamed in http://trac.webkit.org/changeset/64272 For the most part, the differences between the Android and upstreamed versions are syntactic only. In these cases, we take the upstream version. In a small number of cases, logical changes exist. In these cases, the Android logic has been retained, guarded with ANDROID_HITTEST_WITHSIZE, but using the new syntax. In particular ... - Android's HitTestResult::intersects(x, y, rect) is logically equivalent to the uspstream IntRect::intersects(HitTestPoint::rectFromPoint(x, y))). - Android's HitTestResult::addRawNode() is logically equivalent to the upstream HitTestResult::m_rectBasedTestResult.add(). - Android's HitTestResult::isRegionTest() is slightly different from the upstream HitTestResult::isRectBasedTest(). The latter is modified with a new ANDROID_HITTEST_WITHSIZE guard in HitTestResult::HitTestResult() to maintain the same behaviour. - The upstreamed code uses HitTestResult::addNodeToRectBasedTestResult() as a helper method in place of inline logic in the Android version. The slight difference in behaviour between this helper and the Android logic is reflected in the new ANDROID_HITTEST_WITHSIZE guard in the helper. This change should introduce no change in behaviour. Change-Id: I974d68e3ac963f18334418e32b08c3fd9ab1182e
* Merge WebKit at r64523 : Initial merge by git.Steve Block2010-08-0970-821/+1588
| | | | Change-Id: Ibb796c6802e757b1d9b40f58205cfbe4da95fcd4
* Fix incorrect cherry-pick of WebKit change 64465 in merge to WebKit r64264Steve Block2010-08-051-1/+1
| | | | | | See https://android-git.corp.google.com/g/#change,59749 Change-Id: I0ea44ef95fcd8035adc27a32fb75e7c19f23c975
* Merge WebKit at r64264 : Compile fix: Filter guards in SVGKristian Monsen2010-08-041-0/+7
| | | | | | | | | | | Introduced here: http://trac.webkit.org/changeset/64196/trunk/WebCore/rendering/SVGResourcesCycleSolver.cpp Partially upstreamed as the file has changed upstream after the merge, and the newer version doesn't have both places where guards were needed. Upstream bug: https://bugs.webkit.org/show_bug.cgi?id=43338 Upstream CL: http://trac.webkit.org/changeset/64465/trunk/WebCore/rendering/SVGResourcesCycleSolver.cpp Upstream change after merge where we have guards: http://trac.webkit.org/changeset/64440/trunk/WebCore/rendering/SVGResourcesCycleSolver.cpp Change-Id: Iaab4595ded78485c81d6f61a726a5bd0f48c5621
* Merge WebKit at r64264 : Compile fix: CellStruct changed.Kristian Monsen2010-08-041-2/+2
| | | | | | http://trac.webkit.org/changeset/63994/trunk/WebCore/rendering/RenderTableSection.h Change-Id: I52787b9723791822d9c95ef52d7a81c23c2aeca7
* Merge Webkit at r64264 : Fix conflicts.Kristian Monsen2010-08-043-15/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Tracs of the changes: WebCore/html/HTMLDocumentParser.cpp http://trac.webkit.org/changeset/63998/trunk/WebCore/html/HTMLDocumentParser.cpp WebCore/page/EventHandler.cpp WebCore/page/EventHandler.h http://trac.webkit.org/changeset/63888 WebCore/page/Page.cpp http://trac.webkit.org/changeset/64208 WebCore/page/Settings.cpp WebCore/page/Settings.h http://trac.webkit.org/changeset/64110 WebCore/rendering/RenderLayerCompositor.h http://trac.webkit.org/changeset/64054/trunk/WebCore/rendering/RenderLayerCompositor.h WebCore/rendering/RenderTableSection.cpp http://trac.webkit.org/changeset/63994/trunk/WebCore/rendering/RenderTableSection.cpp WebCore/rendering/break_lines.cpp http://trac.webkit.org/changeset/64207 Change-Id: I34167b43899ee5066e33b40867cd569ce53f9207
* Merge WebKit at r64264 : Initial merge by git.Kristian Monsen2010-08-0431-364/+1628
| | | | Change-Id: Ic42bef02efef8217a0f84c47176a9c617c28d1f1
* Enable navigation in scrollable layers.Patrick Scott2010-08-023-37/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | EventHandler: * Added IgnoreClipping in order to touch nodes that are clipped out. android_graphics: * Remember the absolute bounds of the node for invals. RenderBox: * Fix a compiler warning. RenderLayer: * Do not record the entire layer contents unless the scroll dimensions are larger than the client dimensions. * Change isSelfPaintingLayer to check for an overflow clip instead of the scrollable dimensions since it can be too early to check at this point. RenderLayerCompositor: * Same as RenderLayer for checking the overflow clip. WebViewCore: * Scroll the containing layer to the node bounds and offset the mouse position if scrolled. Once the mouse event is processed, restore the layer to 0,0. CacheBuilder: * The body position is no longer used. * Do not clip out nodes if the layer is scrollable. CachedFrame: * Add unadjustBounds to restore adjusted bounds to their original position (fixed position elements). * Call unadjustBounds when a node has been found. This new set of bounds is passed over to WebViewCore to handle clicks. * Reject empty node bounds. CachedLayer: * Document adjustBounds and add unadjustBounds. Add in the scroll position to the node bounds. CachedRoot: * Unadjust the mouse bounds. WebView: * Unadjust the mouse bounds and use the absolute bounds of the ring during inval. Bug: 1566791 Change-Id: Ia55f2cbb61869087176d3ff61882e40324614c6a
* Revert "Add CSS cursor ring definitions"Cary Clark2010-07-303-83/+0
| | | | This reverts commit 0ed6485271097ecf1b4cf4e790f9cfdbb57d921c.
* Add CSS cursor ring definitionsCary Clark2010-07-303-0/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows web pages to have fine-grain control over the appearance of the rings drawn around nodes. Generated links (email, addresses, phone numbers) are no longer given unique colors. To preserve this feature, a separate change could add an HTML extension similar to vlink to provide the cursor ring defintions for theses links. The mechanism implemented below isn't appropriate since these links don't necessarily correspond to single DOM nodes or other DOM elements. ------------ CSS examples ------------ The CSS to specify the ring looks like: -webkit-ring-fill-color:rgba(0,0,255,0.4); -webkit-ring-inner-width:2 px; -webkit-ring-outer-width:3.5 px; -webkit-ring-outset: 8 px; -webkit-ring-pressed-inner-color:rgba(0,0,255,0.8); -webkit-ring-pressed-outer-color:rgba(0,0,127,0.3); -webkit-ring-radius: 10 px; -webkit-ring-selected-inner-color:rgba(63,63,255,0.8); -webkit-ring-selected-outer-color:rgba(63,63,127,0.3); and may be alternately defined with a property shortcut: -webkit-ring:rgba(255,0,0,0.4) 5px 7px rgba(255,0,0,0.8) rgba(127,0,0,0.3) 20px rgba(255,63,63,0.8) rgba(127,63,63,0.3); -------------------- Property definitions -------------------- A vertical cross-section of the ring corresponds to these parameters as shown: ______ R / ___O_ R = corner radius / / __I_ o I = inner ring / / / _O_ ^ O = outer ring | | | / F | F = fill |O|I|O| L o = outset | | | \_F_ | L = original link \ \ \__O_ V \ \___I_ o R \____O_ The fill color specifies what to draw inside the ring when the link is followed. The fill area consists of the original link area the outset. The inner and outer widths specify the stoke width of the inner and outer rings, respectively. The widths may be specified in fractional pixels. The implementation captures 4 bits of the fraction. The outset specifies the distance from the edge of the original link to the rings' center. Both rings are drawn at the same center location. The radius specifies the curvature of the corners at the center of the rings. ------------- Data lifetime ------------- The selected colors specify the colors of the inner and outer rings when the trackball or D-pad hovers over the link. The pressed colors specify the colors of the rings when the trackball center is pressed or the link is tapped. The CSS data is recorded in the RenderStyle when the DOM is parsed. The widths are scaled up by 16 to preserve the fraction. When the nav cache is built, the CSS style information is recorded in the CachedColor class. Only unique style sets are recorded; many CachedNode instances can share the same CachedColor instance. When the cursor ring is drawn, the CachedColor is retrieved by getting the index from the CachedNode, and looking up the entry in the CachedFrame. The widths are scaled down by 16 since Lengths are stored by the webkit as integers. ---------- File Edits ---------- WebCore/Android.derived.mk - Build the CSS data property tables by concatentating Android specific data and optionally SVG data. WebCore/config.h - Add switch for these rings. This switch is meant as a convenience for finding the code in WebKit that was added to enable this feature. Since the old code in DrawCursor has been removed, it does not revert to the old behavior if the switch is turned off. WebCore/css/AndroidCSSPropertyNames.in - The new ring properties, plus an old one we added before. WebCore/css/CSSComputedStyleDeclaration.cpp WebCore/css/CSSMutableStyleDeclaration.cpp WebCore/css/CSSParser.cpp WebCore/css/CSSStyleSelector.cpp - I can guess what these functions are for as well as anyone, but I really don't know. Do I need all of them? Do I need to modify Mutable at all? WebCore/css/CSSPropertyNames.in - Moved Android addition to AndroidCSSPropertyNames.in WebCore/platform/graphics/Color.h - Added initial color values here. WebCore/platform/graphics/android/android_graphics.* - This draws the cursor ring. The code that draws 'synthetic' links has been discarded. WebCore/rendering/style/RenderStyle.h - Functions to get, set, and initialize the style data. WebCore/rendering/style/StyleRareInheritedData.* - The storage for the style data and an equivalence function. WebKit/Android.mk - Added CachedColor to the build. WebKit/android/nav/CacheBuilder.cpp - Record the color from the DOM into the cache. WebKit/android/nav/CachedColor.* - Store the cached color info. WebKit/android/nav/CachedFrame.* - Where the array of colors is stored. WebKit/android/nav/CachedNode.* - Where the index to the colors is stored. Change-Id: Ia3a931f41d6545e47678e245aafe7c84d4658f94 http://b/2603197
* Merge Webkit at r63859 : New code in SVGResourceContainer is missing an include.Ben Murdoch2010-07-271-0/+1
| | | | | | This is a cherry pick of http://trac.webkit.org/changeset/64007 to fix the build. Change-Id: Ic86639eb7dbcd09f0273f614537354bfa7fd369d
* Merge WebKit at r63859 : Initial merge by git.Ben Murdoch2010-07-2750-272/+725
| | | | Change-Id: Ie8096c63ec7c991c9a9cba8bdd9c3b74a3b8ed62
* Add node check to prevent crash.Shimeng (Simon) Wang2010-07-261-1/+1
| | | | | issue: 2870827 Change-Id: I49f9a83fd7cd79100d7d8b0833db7d9f03c7e4f8
* Fix page cycler crashes.Patrick Scott2010-07-232-8/+10
| | | | | Bug: 2862822 Change-Id: I9de300517eaa2bd4027608d6bae093bf5a1072e0
* Enable scrollable divs.Patrick Scott2010-07-223-0/+81
| | | | | | | | | | | | | | Force a composite layer when the style says the content is scrollable. Record the border and background in the main content picture. When the contents of the layer are bigger than the size, record the foreground contents in a separate picture which is clipped by the border and size. When updating the base layer, remember the scroll position of each layer and update the new layer with the same position. Bug: 1566791 Change-Id: If440e4f215db6bda9df32a781d754d1f5a238162
* Merge WebKit at r63173 : Initial merge by git.Leon Clarke2010-07-2044-253/+511
| | | | Change-Id: Ife5af0c7c6261fbbc8ae6bc08c390efa9ef10b44
* Fix issue: 2741016 and refactor visible width logic in android layout.Shimeng (Simon) Wang2010-07-129-62/+45
| | | | | | | | | | | The site is not reflowed, because for some RenderBlock, the m_visibleWidth is set twice before layout; the current logic will think the visibleWidth is not changed, hence no relayout children and no reflow. The logic is refactored to to make it modularlized. issue: 2741016 Change-Id: I1f433e263add974c0981c332ad4ea092ddb395e0
* Merge WebKit at r62496: Initial merge by gitSteve Block2010-07-09104-885/+1798
| | | | Change-Id: Ie3da0770eca22a70a632e3571f31cfabc80facb2
* Enable composite layers for the sub frame.Grace Kloba2010-07-071-17/+4
| | | | | | | | | | | | | | | | | | | | | Fix the visibleContentRect for iframe. It should be relative to its parent instead of the viewport. For fixed position, we still check for the top frame as the current logic positions the object relative to the screen which only applied to the top frame. For plugin, it depends on PluginWidget's platformLayer(). The default is 0. For video, it depends on MediaPlayer's supportsAcceleratedRendering(). The default is false. Fix the crash in the GraphicsLayerAndroid. The root layer is a container layer, there is no need to draw them. As LayerAndroid doesn't create Picture for them, we should ensure to skip draw. Fix http://b/issue?id=2733947
* Merge WebKit at r61871: Initial merge by git.Kristian Monsen2010-07-0287-2491/+3022
| | | | Change-Id: I6cff43abca9cc4782e088a469ad4f03f166a65d5
* Fix for b/2786464Ben Murdoch2010-06-221-2/+3
| | | | | | | | Some renderobjects are "anonymous", i.e. have the document node associated with them and in this case the node() function returns null. We were then using the null RefPtr, hence the crash. RenderListMarker is an example of such an anonymous node which is why websites that use lists exposed the crash. Change-Id: I1a5527c42d99bbe8418b0e7bce4f3c245276e058
* Fix layout test crash: fast/replaced/frame-removed-during-resize.htmlBen Murdoch2010-06-181-0/+15
| | | | | | Fix b/2780565 Change-Id: I4956206dfbfaebd44414adaea7ab80e2c2fd4d1b
* Merge webkit.org at r61121: Fix build break introduced by r60689. This needs ↵Ben Murdoch2010-06-181-1/+0
| | | | | | | | to be upstreamed. See http://trac.webkit.org/changeset/60689 Upstreaming being tracked in https://bugs.webkit.org/show_bug.cgi?id=40822 Change-Id: I825e3f3ff7be9b48c4a5ad9e11d2bfbdef6ad29e
* Merge webkit.org at r61121: Initial merge by git.Ben Murdoch2010-06-1673-431/+1135
| | | | Change-Id: Icd6db395c62285be384d137164d95d7466c98760
* Merge webkit.org at r60469 : Initial merge by git.Leon Clarke2010-06-0827-358/+864
| | | | Change-Id: I66a0047aa2af802f66bb0c7f2a8b02247a596234
* Code clean up, http://b/issue?id=2724743Grace Kloba2010-05-286-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | Change Widget:screenWidth() to Widget:textWrapWidth() as the text wrap width may be different than the screen width after pinch zoom. Change AndroidWebHistoryBridge's m_screenWidthScale to m_textWrapScale to reflect its meaning. Remove unused screenWidth/screenHeight in PlatformBridge. Merge two restore methods to one. There is a matching CL in framework/base. Only setUseFixedLayout if layout width is different than screen width. Change from Node* to Ref<Node> to avoid a crash. Fix http://b/issue?id=2660396
* Merge WebKit at r60074: Fix conflictsSteve Block2010-05-273-101/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | DeviceOrientation - WebCore/Android.derived.jscbindings.mk - WebCore/Android.derived.v8bindings.mk - WebCore/page/Page.cpp Trivial - WebCore/css/CSSParser.cpp - WebCore/page/Settings.cpp - WebCore/page/Settings.h - WebCore/rendering/style/RenderStyle.h Code deletion - See http://trac.webkit.org/changeset/59749 - WebCore/html/HTMLTokenizer.cpp PluginView JSC guards uspstreaming - WebCore/plugins/PluginView.cpp - WebCore/plugins/PluginView.h Refactoring, see http://trac.webkit.org/changeset/59784 - WebCore/rendering/RenderLayer.cpp RenderBlock::columnGap() and columnRects() are now public, see http://trac.webkit.org/changeset/59784 - WebCore/rendering/RenderBlock.h Change-Id: I409c68d334d60c3854b4b0365c18e6f63884afa6
* Merge WebKit at r60074: Initial merge by gitSteve Block2010-05-2756-311/+731
| | | | Change-Id: I18a2dc5439e36c928351ea829d8fb4e39b062fc7
* Merge WebKit at r59636: Initial merge by gitKristian Monsen2010-05-2571-1201/+1770
| | | | Change-Id: I59b289c4e6b18425f06ce41cc9d34c522515de91
* Merge "First draft to add a fat point to WebKit hit test."Grace Kloba2010-05-2414-0/+312
|\
| * First draft to add a fat point to WebKit hit test.Grace Kloba2010-05-2414-0/+312
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If padding is 0, it is the old style point hit test. If it finds a node, it will break the search loop and return. If padding is non-zero, the first node will be added to HitTestResult's innerNode as before. But instead of finishing the search, hit test will continue to look for other nodes covered by the fat point unless it is fully inside the current node. Here are some highlights of the changes. . instead of testing renderRect.contains(x, y), we now test renderRect.intersect(pointRect) . when a Node is hit, it will be appended to the rawNodeList of HitTestResult. So the order inside the rawNodeList represents the hit test order. Currently the fat point doesn't support SVG nodes. It also doesn't support overflow control yet.
* | Fix the infinite loop when flatten iframes.Patrick Scott2010-05-201-9/+3
|/ | | | | | | | Somehow javascript can cause a layout of the parent renderer in the middle of the FrameView's layout. Bug: 2614175 Change-Id: I37ed3d2e88de1762715e0d0712549d8fab0f12d2
* Merge Webkit at r58956: SVGPaintServer has been deleted upstream and ↵Ben Murdoch2010-05-141-2/+2
| | | | | | | | | | | replaced with SVGResourceSolidColor.cpp. We had local modifications in the deleted file to correctly guard some Chromium/Skia includes we don't have on Android, so move the guards into the new file. See http://trac.webkit.org/changeset/58212 See http://trac.webkit.org/changeset/588212 Change-Id: I8e7e9ea39009019f7caefd68d99942be77ea602d
* Merge Webkit at r58956: Fix conflicts.Ben Murdoch2010-05-141-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix conflict: JavaScriptCore/wtf/MathExtras.h: Take theirs due to recently upstreamed change http://trac.webkit.org/changeset/58110 Fix conflict: WebCore/dom/Node.cpp: Take both. The Android part can be removed post-merge. Fix conflict: WebCore/platform/ScrollView.cpp Fix conflict: WebCore/platform/ScrollView.h Fix conflict: WebCore/platform/android/ScrollViewAndroid.cpp: Remove ScrollView::platformProhibitsScrolling and ScrollView::scrollRectIntoViewRecursively as they have been removed upstream in http://trac.webkit.org/changeset/58428, http://trac.webkit.org/changeset/58445 and http://trac.webkit.org/changeset/58611. platformProhibitsScrolling was an Android specific function called only from scrollRectIntoViewRecursively. Fix conflict: WebCore/bindings/v8/ScriptCallStack.cpp: Take both (we have an Android specific addition). Fix conflict: WebCore/html/HTMLOptionElement.cpp: Take theirs, our fix has been upstreamed in http://trac.webkit.org/changeset/58490. Fix conflict: WebCore/rendering/RenderBox.cpp: Take theirs. See http://trac.webkit.org/changeset/58177 Fix conflict: WebCore/css/CSSStyleSelector.cpp Take both (Android specific addition). Fix conflict: WebCore/css/CSSParser.cpp Take both (Android specific addition). Fix conflict: WebCore/bridge/jni/jni_jsobject.h: Take theirs. see http://trac.webkit.org/changeset/58775 Fix conflict: FileSystemAndroid.cpp: Fix conflict: FileSystemPOSIX.cpp: Take ours. Our changes have been upstreamed but beyond 58596. See http://trac.webkit.org/changeset/59226 Change-Id: I92c7e319bea9edcc2eb08726654b5c1e163effaf
* Merge Webkit at r58956: Initial merge by Git.Ben Murdoch2010-05-14101-2565/+3123
| | | | Change-Id: I1d9fb60ea2c3f2ddc04c17a871acdb39353be228
* Merge webkit.org at r58033 : Move Android iframe-flattening code to ↵Steve Block2010-05-119-301/+148
| | | | | | | | | | | | | | | | | | | RenderIFrame.cpp The Android iframe-flattening code was in RenderPartObject. The rendering classes have been refactored upstream in http://trac.webkit.org/changeset/57866 so that most of RenderPartObject was moved to RenderIFrame. RenderPartObject was then removed in http://trac.webkit.org/changeset/57900. Iframe-flattening was also added upstream in http://trac.webkit.org/changeset/56718. This change takes the Android iframe-flattening code from RenderPartObject and moves it to RenderIFrame. It also renames FLATTEN_IFRAME to ANDROID_FLATTEN_IFRAME and FLATTEN_FRAMESET to ANDROID_FLATTEN_FRAMESET for clarity. Change-Id: I1af8d042f8d0c4abd513f8a315ac681360c1cc53
* Merge webkit.org at r58033 : Resolve merge conflictsSteve Block2010-05-113-81/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - CanvasRenderingContext2D.cpp - Take upstream, conflict due to cherry-pick of security fix, see 285b474734e82bc42b25e48ea4824f8050badb4f - CanvasSurface.cpp, HTMLCanvasElement.cpp - convertLogicalToDevice has been refactored. See http://trac.webkit.org/changeset/56447 - Chrome.cpp/h, ChromeClient.h - Take upstream, conflict due to cherry-pick of cancelling Geolocation permission request - Document.h - Take both, conflicts due to ANDROID_META_SUPPORT - DragImage.h - Take both, conflict due to Android addition - EmptyClients.h - Take upstream, conflicts due to Geo cancel permission request - EventHandler.cpp - Take both, conflicts due to recently upstreamed touch events and ANDROID_PLUGINS - EventHandler.cpp - Keep ours, conflict due to touch event bug fixes not yet upstreamed. See 7f034a1734d634dd1fdb3b64817d5828b5e46922 and 73adc26dba4be1d9da34a7f0907cb7b12f10c909 - FileSystemPOSIX - Take both, conflict due to ANDROID_PLUGINS - FrameLoader.cpp - Take both, conflct due to ANDROID_BLOCK_NETWORK_IMAGE - FrameView.cpp - Take both, conflict due to Android frame flattening - Geolocation.h - Merge conflicts due to Android-specific changes - Geolocation.cpp - Take upstream, conflict due to addition of Geolocation maximumAge - GeolocationPositionCache.cpp - Take upstream, conflict due to addition of ENABLE_GEOLOCATION guards - Gradient.h - Take both, conflict due to Android addition - HTMLLinkElement.cpp, DocLoader.cpp - Take both, conflict due to new link prefetching not yet upstreamed. See f91ac8eab3399adb5325701bebe0590a77e49df7 - HTMLMetaElement.cpp - Take both, conflict due to recently upstreamed meta element - JavaInstanceJSC.cpp - Take both, conflict due to Android additional logging - MediaPlayer.cpp/h - Take both, conflict due to Android-specific change - PlatformTouchPoint.h - Take upstream, conflict due to recently upstreamed unsigned stuff - RenderFrame.cpp, RenderFrameSet.h - Take both, conflict due to Android frameset flattening - RenderLayerCompositor.cpp - Take both, conflicts due to Android layers code - Settings.cpp/h - Conflict due to ANDROID_PLUGINS - TextInputController.h - Take upstream, git got confused - V8DOMWindowShell.cpp - Take upstream, conflict due to cherry-pick of method to add V8 bindings for page cache, see 8fecd9c9a62aa89fb44ed3142ba583dc7b8cbe29 - V8DOMWraper.cpp - Take upstream, conflict due to recently upstreamed WORKERS guards - WebCore.xcodeproj - Take upstream, conflict due to addition of Geolocation maximumAge - Widget.h - Take both, conflict due to Android addition - jsc/JNIUtilityPrivate.cpp - Take upstream, conflict due to switching from bzero to memset - mac/WebCoreSupport/WebChromeCient.h - Take upstream, conflicts due to Geo cancel permission request Change-Id: I1b75eac220faddf2f84c7fd4fd3436a5e07edf64
* Merge webkit.org at r58033 : Initial merge by gitSteve Block2010-05-11134-1890/+4457
| | | | Change-Id: If006c38561af287c50cd578d251629b51e4d8cd1
* Merge webkit.org at r55033 : Initial merge by gitSteve Block2010-04-2758-373/+993
| | | | Change-Id: I98a4af828067cc243ec3dc5e5826154dd88074b5
* Revert previous CL due to side-effect.Nicolas Roard2010-04-151-10/+3
| | | | | | Bug:2600918 Change-Id: I72189bd2edf725b4f0db426d2735590e846dcba4
* am f635101c: am 233b1e5a: am 54070f49: Merge "Make sure to layout the view ↵Patrick Scott2010-04-151-0/+4
|\ | | | | | | with the final dimensions." into froyo
| * am 54070f49: Merge "Make sure to layout the view with the final dimensions." ↵Patrick Scott2010-04-141-0/+4
| |\ | | | | | | | | | | | | | | | | | | | | | | | | into froyo Merge commit '54070f490711d3ec763c006c9b84adf55d32f0a2' into froyo-plus-aosp * commit '54070f490711d3ec763c006c9b84adf55d32f0a2': Make sure to layout the view with the final dimensions.