diff options
| author | Cary Clark <cary@android.com> | 2009-12-02 20:26:10 -0800 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2009-12-02 20:26:10 -0800 |
| commit | 614dd17e227fef812780981925532950d6170799 (patch) | |
| tree | df8f2233140ff39acfdf27cc0620027c7e119768 | |
| parent | dd9d17696b11b2aa8c501387fef01fb5ee4656d5 (diff) | |
| parent | ac94ea1b6a7f61d693151647c572f1c33b2cdbf6 (diff) | |
| download | external_webkit-614dd17e227fef812780981925532950d6170799.zip external_webkit-614dd17e227fef812780981925532950d6170799.tar.gz external_webkit-614dd17e227fef812780981925532950d6170799.tar.bz2 | |
am ac94ea1b: am 5f1379c6: Merge change I3aa3fc5b into eclair-mr2
Merge commit 'ac94ea1b6a7f61d693151647c572f1c33b2cdbf6'
* commit 'ac94ea1b6a7f61d693151647c572f1c33b2cdbf6':
skip nodes when building nav cache if parents are clipped out
| -rw-r--r-- | WebKit/android/nav/CacheBuilder.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/WebKit/android/nav/CacheBuilder.cpp b/WebKit/android/nav/CacheBuilder.cpp index 58be0e8..c77f7fc 100644 --- a/WebKit/android/nav/CacheBuilder.cpp +++ b/WebKit/android/nav/CacheBuilder.cpp @@ -1194,10 +1194,14 @@ void CacheBuilder::BuildFrame(Frame* root, Frame* frame, clip.intersect(parentClip); hasClip = true; } - if (hasClip && !clip.isEmpty() && cachedNode.clip(clip) == false) { - cachedNode.setBounds(clip); - cachedNode.cursorRings().append(clip); - isUnclipped = true; + if (hasClip) { + if (clip.isEmpty()) + continue; // skip this node if completely clipped out + else if (cachedNode.clip(clip) == false) { + cachedNode.setBounds(clip); + cachedNode.cursorRings().append(clip); + isUnclipped = true; + } } cachedNode.setNavableRects(); cachedNode.setChildFrameIndex(-1); |
