| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: I570314b346ce101c935ed22a626b48c2af266b84
|
|
|
|
| |
Change-Id: I6ccd1154fa1b19c2ec2a66878eb675738735f1eb
|
|
|
|
|
|
|
|
|
|
| |
Do not expand frames that cannot scroll. Use contentsWidth and contentsHeight
instead of exposing docWidth. Trigger a layout of the parent if the FrameView's
layout reveals a larger content dimension. Remove iframe flattening code.
Bug: 3370518
Bug: 3323913
Change-Id: I60e89caf335bfaf271f90ffd538c65f3735572da
|
|
|
|
| |
Change-Id: Ib345578fa29df7e4bc72b4f00e4a6fddcb754c4c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
Change-Id: Ibb796c6802e757b1d9b40f58205cfbe4da95fcd4
|
|
|
|
| |
Change-Id: Ife5af0c7c6261fbbc8ae6bc08c390efa9ef10b44
|
|
|
|
| |
Change-Id: Ie3da0770eca22a70a632e3571f31cfabc80facb2
|
|
|
|
| |
Change-Id: Icd6db395c62285be384d137164d95d7466c98760
|
|
|
|
| |
Change-Id: I59b289c4e6b18425f06ce41cc9d34c522515de91
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Change-Id: I1d9fb60ea2c3f2ddc04c17a871acdb39353be228
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
Change-Id: If006c38561af287c50cd578d251629b51e4d8cd1
|
|
|
|
| |
Change-Id: Ib661abb595522f50ea406f72d3a0ce17f7193c82
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Notes ...
For FrameLoader.cpp/h, see http://trac.webkit.org/changeset/51644
For FrameView.cpp and ScrolView.cpp, see http://trac.webkit.org/changeset/51636
For PluginInfoStore.cpp, see http://trac.webkit.org/changeset/51257
For Geolocation.cpp, see http://trac.webkit.org/changeset/50605
For V8DOMWrapper.cpp, see http://trac.webkit.org/changeset/51004
For V8Proxy.cpp, see http://trac.webkit.org/changeset/50441, http://trac.webkit.org/changeset/50327, http://trac.webkit.org/changeset/50406 and http://trac.webkit.org/changeset/50523
For HTMLInputElement.cpp, see http://trac.webkit.org/changeset/50996
For RenderBlock.cpp/RenderInline.cpp, see https://android-git.corp.google.com/g/#change,33465
Android-specific change to now-deleted JSCanvasArrayCustom.cpp was trivial.
Change-Id: Iddc8d43bdcb6208d6a991a7a1d591e8a4f918bf7
|
|
|
|
| |
Change-Id: Ib0e7e2f0fb4bee5a186610272edf3186f0986b43
|
|
|
|
| |
Change-Id: I8968561bc1bfd72b8923b7118d3728579c6dbcc7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The problem is that if updateWidgetPosition calls layout, the FrameView will
layout with 0x0 dimensions. Then, we resize the view and try to relayout. This
causes the body to be marked as needing a layout. But, the body does not get a
chance to relayout. If updateWidgetPosition does not layout, the view size will
match and the body will not be marked for layout. This makes everything sane
after layout of the iframe.
The root of the problem is that we are calling FrameView::layout() while in the
midst of a layout. This is causing a child RenderObject to need a layout
without the parent object needing a layout. We avoid this by not laying out
until we set the FrameView dimensions.
Bug: 2048855, 2134215
|
| |
|
| |
|
|
|
|
| |
Automated import of CL 145796
|
| |
|
| |
|
| |
|
| |
|
|
|