97 Commits

Author SHA1 Message Date
Rafael Weinstein
acf6d9f29d setChildrenInline wasn't doing anything and childrenInlien always deferred to isRenderParagraph.
Also, add a test from the original webkit patch that called setChildrenInline in layoutBlock

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/748943002
2014-11-21 15:16:58 -08:00
Ojan Vafai
fe66ba3f36 Fix text-overflow:ellipsis.
This regressed in 3db9471ae80bd492f2a346113d2323ba8eee0c09.

Accidentally sent some code down the override by sending the
top LayoutUnit instead of the left/right LayoutUnit. The
root problem was bad overloading, which is also fixed in
this patch. Inlined the overloaded method since one of
the calls was only called from one place.

The new test demonstrates the ellipsizing, but that doesn't
show through in the render tree dump. We don't get real
test coverage here until we either start doing pixel tests
or start exposing ellipsis in the render tree dumps.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/751483002
2014-11-21 11:26:05 -08:00
Eric Seidel
295f920116 Fix sky include guards to match Chromium style
I wrote a script to do this which is attached
to the bug.

TBR=abarth@chromium.org
BUG=435361

Review URL: https://codereview.chromium.org/736373003
2014-11-21 02:48:38 -08:00
Eric Seidel
e0fd75b5ab Make absolute and sort all Sky headers
This caused us to lose our gn check certification. :(

Turns out gn check was just ignoring all the header
paths it didn't understand and so gn check passing
for sky wasn't meaning much.  I tried to straighten
out some of the mess in this CL, but its going to take
several more rounds of massaging before gn check
passes again.  On the bright side (almost) all of
our headers are absolute now.  Turns out my script
(attached to the bug) didn't notice ../ includes
but I'll fix that in the next patch.

R=abarth@chromium.org
BUG=435361

Review URL: https://codereview.chromium.org/746023002
2014-11-20 17:42:05 -08:00
Ojan Vafai
c2276d3976 Remove canCollapseAnonymousBlockChild.
The only place it's used now is making it so that
anonymous flex items don't do ellipsizing the same
way anonymous items inside a block would. This
is something we don't need, especially now that
we only have anonymous paragraphs around text nodes.

It's not clear to me if we want this looking at the
parent behavior at all, but that's something that
can be fixed in a followup.

Also delete some dead anonymous block functions.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/741893002
2014-11-20 15:28:37 -08:00
Rafael Weinstein
1dddb1fc9a Add compile flag for enabling the compostior
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/737793006
2014-11-19 14:34:09 -08:00
Eric Seidel
55b5bc485d Sort headers
Fix (most) generated includes to have gen/ in their path.

This makes it easier to tell where files exist on disk.

Unfortunately I had to leave the old include path
in engine/BUILD.gn to support all the v8 includes
which were too many to deal with in this patch.

It's a little nasty to have the raw build directory
in our include path, but it produces nicer paths.

R=abarth@chromium.org
2014-11-19 12:33:42 -08:00
Ojan Vafai
82ddd6096e Get rid of continuations.
This is all dead code now that inlines can't contain
blocks.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/734813004
2014-11-18 16:56:44 -08:00
Elliott Sprehn
3eb9946952 Remove lots of things from RenderObject
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/735193002
2014-11-18 16:06:22 -08:00
Elliott Sprehn
4d83953263 Teach HTMLImageElement that it doesn't need ::attach.
Instead of using a custom ::attach to do post insertion work
when assigning the image resource to the RenderImage, we should
just fix the logic inside RenderImage to be able to handle
not being in the tree yet when the resource is first set.

Soon attach will not be virtual anymore.

I also made RenderImage final and most methods private as there
are no longer subclasses.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/732163004
2014-11-18 11:08:46 -08:00
Ojan Vafai
7a37fa8c09 First step at getting rid of anonymous blocks and continuations.
-Add RenderParagraph and display:paragraph. This is the only
render type that's allowed to contain inlines or text.
-If you put text nodes directly in a non-paragraph, wrap them
in an anonymous paragraph. This may not be the place we want
to end up, but it's a good stopgap to make it so we don't
crash in this case.
-Make StyleAdjuster force that non-paragraph blocks only contain
RenderBlock subclasses and that paragraphs and inlines only contain
inlines.
-Considerably simplify addChildIgnoringAnonymousColumnBlocks
now that we only create anonymous blocks for the case of
text nodes in non-paragraphs. Also get rid of the behavior
where we try to group multiple nodes into a single
anonymous block.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/729693003
2014-11-17 18:39:52 -08:00
Matt Perry
d091d0474c Sky: Change iframe positioning to use absoluteContentBox for the View's
coordinate system.

This fixes a bug where the iframe's view would be positioned incorrectly if there were elements above it.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/730253002
2014-11-17 17:38:27 -05:00
Rafael Weinstein
0b758e5227 Remove CSSCompositing
BUG=
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/731863003
2014-11-17 14:34:30 -08:00
Matt Perry
465846c37d Sky: Move iframe geometry updates to FrameView::updateLayout instead of
RenderView::invalidateTree.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/737523002
2014-11-17 15:49:40 -05:00
Matt Perry
eee39ec5ad Sky: update the HTMLIFrameElement's geometry during paint invalidation rather
than layout.

This ends up being much smoother and only triggers once per layout cycle.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/730653002
2014-11-17 14:20:17 -05:00
Elliott Sprehn
42d362ff6b Remove tons of OILPAN.
This removes ::trace, traceAfterDispatch and finalizeGarbageCollectedObject.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/723253004
2014-11-13 16:56:13 -08:00
Matt Perry
037ca1b039 Rename RenderRemote to RenderIFrame.
R=ojan@chromium.org

Review URL: https://codereview.chromium.org/723143003
2014-11-13 18:19:28 -05:00
Ojan Vafai
ec084dc47a Make paddingBoxRect less dumb.
It was calling contentWidth, which did clientWidth - padding,
and then adding the padding back in.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/715053004
2014-11-11 16:58:33 -08:00
Ojan Vafai
8510cca8ad Remove alt text from images.
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/715963003
2014-11-11 16:46:57 -08:00
Rafael Weinstein
f973fd339e Removed ScrollingCoordinator and a bunch of composited scrolling'
BUG=
R=ojan@chromium.org

Review URL: https://codereview.chromium.org/721473002
2014-11-11 16:42:00 -08:00
Eric Seidel
66bad10810 Remove a bunch of OS(MACOSX) code
This code is unused in sky.

Amazing how much code we had for dealing with old
versions of MSVC.

R=ojan@chromium.org, abarth@chromium.org

Review URL: https://codereview.chromium.org/709603006
2014-11-11 15:33:38 -08:00
Ojan Vafai
0f803f8d3c Remove ResourceLoadPriorityOptimizer.
We want to expose the ability to do this in the framework,
not bake it into the platform.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/710743006
2014-11-11 14:53:02 -08:00
Elliott Sprehn
5f8f626d7d Fix margins and paddings on flex boxes.
R=ojan@chromium.org

Review URL: https://codereview.chromium.org/693353003
2014-11-11 13:10:25 -08:00
Ojan Vafai
aadd9d43cf Remove some more assorted code from RenderBox.
R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/691223003
2014-11-11 10:16:03 -08:00
Matt Perry
d4ddbf836c Add a separate call to initialize the bounds for a sky <iframe> element.
Also rename the methods to refer to "frames" not "views".

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/682413006
2014-11-11 11:11:59 -05:00
Ojan Vafai
eec7ede796 Remove assorted dead code from RenderBox.
-overrideContainingBlock sizes were only used by RenderGrid.
-percendicular containing blocks were a vertical writing mode feature.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/704413008
2014-11-10 19:43:04 -08:00
Ojan Vafai
637d077ba2 Remove some straggling zoom-related code.
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/714783003
2014-11-10 19:17:32 -08:00
Ojan Vafai
5f945bf69f Remove some more zoom-related code.
-Remove all references to zoomFactor.
-Remove zoomLevels.
-Remove unused m_zoom on StyleVisualData.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/714013002
2014-11-10 18:08:46 -08:00
Ojan Vafai
275c5e291c Remove zoom() and effectiveZoom().
No change in behavior since we already removed the zoom setters.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/711203002
2014-11-10 17:32:52 -08:00
Ojan Vafai
167513d855 Speculative fix for android compile.
This broke with ccaf3a65fb

TBR=abarth@chromium.org

Review URL: https://codereview.chromium.org/716673002
2014-11-10 15:59:54 -08:00
Rafael Weinstein
c0ffe6fb23 remove updateTouchEventTargetRectsIfNeeded
BUG=
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/713073003
2014-11-10 13:08:21 -08:00
Ojan Vafai
e00f34ccf6 Initial step of removing CSS zoom related properties.
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/710113003
2014-11-10 13:07:29 -08:00
Ojan Vafai
9b654433ea Deduplicate part of RenderLayerScrollableArea/ScrollableArea.
ScrollableArea only has one subclass now. Make all it's virtual
methods be pure virtual and delete any methods that
RenderLayerScrollableArea overrides.

Eventually we should probably merge the two classes into one,
but ScrollableArea is in platform and RenderLayerScrollableArea
is in core/rendering, so it's non-trivial figuring out what the
end result should look like. Hopefully it will become more clear
as we delete more of the scrolling code.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/711483003
2014-11-07 20:06:09 -08:00
Elliott Sprehn
283fa5f78a Remove ContentData.
This was to support CSS generated content.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/709213002
2014-11-07 18:47:39 -08:00
Ojan Vafai
1fad59d33b Remove OverlayScrollbarSizeRelevancy.
It doesn't do anything anymore.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/715453002
2014-11-07 18:13:42 -08:00
Elliott Sprehn
d1e3759806 Remove more oilpan.
I also unraveled lots of transitive deps from Handle.h

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/709203002
2014-11-07 18:11:03 -08:00
Ojan Vafai
b44392daf4 Remove scrollbar width/height computations from layout.
Scrollbars never take up layout space or participate in hit-testing.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/707233006
2014-11-07 17:54:41 -08:00
Elliott Sprehn
e9073fbdc0 Remove PODIntervalTree and machinery.
This was for floats and shapes which we removed.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/705373003
2014-11-07 17:01:02 -08:00
Elliott Sprehn
d11b95703b Remove many attributes.
This removes many attributes we don't want from HTMLAttributeNames.in
and the associated code.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/708233002
2014-11-07 16:48:59 -08:00
Elliott Sprehn
70b80e3c64 Remove all the now dead Locale code.
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/706403002
2014-11-07 15:26:23 -08:00
Rafael Weinstein
f6b3a8cb02 Remove usesCompositedScrolling
BUG=
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/712573003
2014-11-07 13:59:11 -08:00
Matt Perry
694cabc454 Initial work on a new <view> element backed by a mojo::View.
This CL introduces an HTMLViewElement which, when inserted into a document,
causes a mojo::View to be created and navigated to the provided URL. No
compositing is done, but the view manager handles the rendering (as I
understand it).

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/708903002
2014-11-07 14:34:07 -05:00
Ojan Vafai
2793661b5a Remove scroll corners and resizers.
We never paint scroll corners. The only thing we need them
for is so that the vertical and horizontal scrollbars don't
overlap each other. So, that's the only place left that
still computes a scroll corner rect.

We don't support resizers. Remove the code for them as well
as the CSS resize property.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/689283003
2014-11-07 09:46:16 -08:00
Rafael Weinstein
2c84a77f5e Remove sparsity tolerance check when considering squashing layers
BUG=
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/709623002
2014-11-06 18:45:23 -08:00
Rafael Weinstein
fa52a2cb76 Remove RenderObject::isVideo
BUG=
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/709503003
2014-11-06 17:59:08 -08:00
Ojan Vafai
94ca1025cb Remove -webkit-auto, -webkit-center, -webkit-left, -webkit-right.
These are values for text-align that align blocks in addition to
inline content. You can get the same centering affect with margin:auto.
If we want this functionality, we should implement it with the
same alignment APIs that we use for flexbox.

Delete unused methods/arguments from RenderBlockFlow.

No change in behavior. Just deleting dead code.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/708843002
2014-11-06 11:55:49 -08:00
Ojan Vafai
aae0aab814 Delete unused methods/arguments from RenderBlockFlow.
No change in behavior. Just deleting dead code.
Removes hit testing and paint phase for floats. They
bottomed out into empty functions.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/706953003
2014-11-06 11:17:20 -08:00
Ojan Vafai
4ecaa91c6c Remove margin collapsing.
Margin collapsing is a document-oriented feature. For applications
it just causes confusion and slowness.

margins.sky has failure output because offsetTop is returning the
wrong values. That's not new with this patch though. When I look
at it visually in skydb, everything seems to be in the right place.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/700743002
2014-11-03 21:30:40 -08:00
Elliott Sprehn
8c0a714beb Remove most of the media stack.
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/689373003
2014-11-03 20:21:19 -08:00
Elliott Sprehn
93af62d3e7 Remove HTMLVideoElement.
This also removes some compositor related code, but there's not much of
it anyway so we can just add it back later when we do <iframe>.

R=ojan@chromium.org, abarth@chromium.org

Review URL: https://codereview.chromium.org/701663002
2014-11-03 18:02:22 -08:00