Commit Graph

2574 Commits

Author SHA1 Message Date
Ting-Yu Lin
f3ed4deadf Bug 1304598 Part 3 - Rename nsPresShell.h/cpp to PresShell.h/cpp, and move exported header to mozilla/ subdir. r=dholbert
The class PresShell doesn't have ns-prefix, so it's better to drop ns-prefix
in the file names to avoid confusion.

MozReview-Commit-ID: IljxsF5CVjh
2016-11-30 11:14:28 +08:00
Mats Palmgren
fe7d2f0c96 Bug 1279354 part 1 - Always call SetPrimaryFrame for NS_FRAME_ANONYMOUSCONTENTCREATOR_CONTENT frames (unless there is one already), including when mCreatingExtraFrames is true. r=dholbert 2016-11-28 23:00:20 +01:00
Bobby Holley
3775205e64 Bug 1317016 - Basic infrastructure for RestyleHint-driven traversal. r=emilio
MozReview-Commit-ID: 7wH5XcILVmX
2016-11-25 10:06:39 -08:00
Xidorn Quan
37061e8a43 Bug 1308848 - Not request style of comment node when checking valid sibling. r=bz
MozReview-Commit-ID: 6Sq8C2LUkpT
2016-10-17 17:29:38 +11:00
Ting-Yu Lin
2cbd3d4835 Bug 1271549 - Remove details and summary preference. r=bz
Bug 1259889 Part 2 [1] cannot be reverted cleanly, so I manually undo those
changes in this patch. That is, remove the ability for html.css to
invalidate dynamically since it was added specifically for details element.

Although reftest-stylo.list explicit mentions "DO NOT EDIT!", but I still
remove details pref from the file, since it doesn't harm to edit it anyway.

[1] https://hg.mozilla.org/mozilla-central/rev/30aaf3805b56

MozReview-Commit-ID: FsyTGQTxujh
2016-11-16 14:02:58 +08:00
Daniel Holbert
d530aa836e Bug 1269045 part 4: Drop now-obsolete parameter from anonymous flex/grid-item wrapping functions. r=mats
MozReview-Commit-ID: 5rGemcMMOhl
2016-10-31 08:58:18 -07:00
Daniel Holbert
dbc9ef0f5b Bug 1269045 part 3: Stop wrapping placeholder frames in anonymous flex items. r=mats
This patch also:
 * Removes some now-unnecessary code from nsFlexContainerFrame, which was for jumping from wrapped-placeholders to their out-of-flow frames (for DOM comparisons). This code is now unnecessary because placeholders won't be wrapped anymore.
 * Updates some reftests with abspos content to match the updated spec's expectations, with one marked as "fails" for the time being (until bug 1269046 implements css box alignment, which we need to render that test correctly).

MozReview-Commit-ID: 8canWfXk6Kf
2016-10-31 08:58:17 -07:00
Carsten "Tomcat" Book
80909fc96d Merge mozilla-central to autoland 2016-10-26 17:14:27 +02:00
Mantaroh Yoshinaga
4af39d9541 Bug 1287983 part 5 - Clarify the function name of creating transition. r=hiro
MozReview-Commit-ID: AW5qD8uBQxf
2016-10-19 15:16:52 +09:00
Jessica Jong
7ef7e911f2 Bug 1310076 - Add 'datetime-local' to the list of valid types attributes for <input>. r=smaug 2016-10-24 03:35:00 +02:00
Ryan VanderMeulen
531ffb06e2 Merge autoland to m-c on a CLOSED TREE. a=merge 2016-10-21 17:12:27 -04:00
Ryan VanderMeulen
529471d85f Merge m-c to inbound. a=merge 2016-10-21 11:08:45 -04:00
Ting-Yu Lin
5fb8c702af Bug 1309445 - Convert FrameConstructionItemList::mItems to use mozilla::LinkedList. r=dholbert
The major change to the Iterator is due to the fact that the end of a
LinkedList is represented by nullptr.

Also delete the type conversion functions which are no longer needed.

MozReview-Commit-ID: 2lYtFW9pSon
2016-10-18 15:50:27 +08:00
Ting-Yu Lin
b38db03020 Bug 1311277 Part 3 - Use LinkedList's move assignment in FCItemIterator::AppendItemsToList. r=froydnj
MozReview-Commit-ID: LLF519q9gcG
2016-10-19 13:56:12 +08:00
Bobby Holley
53acf04c7b Bug 1292729 - Style text nodes on the main thread. r=heycam
MozReview-Commit-ID: CroFtWpuIrO
2016-10-25 20:10:04 -07:00
Mats Palmgren
06beda147b Bug 1308793 - Crash when setting display:[inline-]{flex,grid} or columnset properties on a SVG <text> element. r=tn 2016-10-09 22:34:07 -05:00
Jessica Jong
113984eb02 Bug 1288591 - Implement the layout for <input type=time>. r=mconley, r=dholbert, r=smaug 2016-10-06 00:17:00 -04:00
Mats Palmgren
860b9c5155 Bug 984869 - Add support for display:flex/grid and columnset layout to <button>. r=tn 2016-10-06 22:43:22 +02:00
Ting-Yu Lin
cc5f5f88a0 Bug 1304441 Part 3 - Insert main summary's frame construction item at front of the list. r=bz
Change the logic that moves the main summary to the front from operating
on generated frames in DetailsFrame::SetInitialChildList() to operating
on frame construction item list in AddFrameConstructionItemsInternal()
so that it will be correct when cooperating with ::first-line.

The root cause of the bug reported is because when specifying
::first-line on details element, the first frame of summary element,
which is generated due to ib-split, will be wrapped in nsFirstLineFrame.
The original code fails to find the summary frame in the wrapper frame
and triggers assertion because of the second ib-split summary frame. To
fix that, we need to descend into the child list of wrapper frames when
checking the main summary.

Add original test case as a crashtest as well as reftests to clearly
reproduce the issue.

Note that in the reftest, the blue color in ::first-line is applied
incorrectly to the second line in the summary due to bug 520605.

MozReview-Commit-ID: Bv4Vcvxp6pY
2016-10-05 14:43:32 +08:00
Ting-Yu Lin
ad501083aa Bug 1304441 Part 1 - Remove unneeded check when constructing frame for summary. r=bz
SummaryFrame had been removed in bug 1258657, so now HTMLSummaryElement
is always rendered as an ordinary inline or block frame. Therefore, the
check in FindHTMLData is not needed anymore.

MozReview-Commit-ID: Ikxla6QoNLT
2016-10-05 14:43:31 +08:00
Daniel Holbert
187cc6d771 Bug 1309119 part 3: Change nsCSSFrameConstructor to use nsFlexContainerFrame::IsLegacyBox instead of its own less-complete version. r=mats
MozReview-Commit-ID: 5sElULdTkOT
2016-10-20 13:23:51 -07:00
Bobby Holley
ace7380088 Bug 1304913 - Have Servo manage node data directly without FFI calls. r=Manishearth
MozReview-Commit-ID: H8f8VP18TbM
2016-09-23 15:58:48 -07:00
Ting-Yu Lin
639050e114 Bug 1301630 - Remove nsBlockFrame::SetFlags(). r=bz
Per bug 1299753 comment 20, SetFlags() is designed for flag propagation
to continuations during block reflow. To avoid misuse, I expand
SetFlags() directly in the only reasonable caller nsBlackFrame::Init(),
and replace other usages by AddStateBits().

MozReview-Commit-ID: GsbE2Z0Rps1
2016-09-09 15:26:57 +08:00
Manish Goregaokar
49b3b83008 Bug 1300337 - Replace None_ variants from nsStyleConsts.h with None; r=heycam,TYLin
MozReview-Commit-ID: CxHzbEzjLxT
2016-09-04 00:16:58 +05:30
Ting-Yu Lin
55e91b28f4 Bug 1299753 Part 3 - Reuse ConstructScrollableBlock to build scrollable DetailsFrame. r=bz
MozReview-Commit-ID: 1yAhuKqurHf
2016-09-08 15:38:06 +08:00
Ting-Yu Lin
b5787cd1d4 Bug 1299753 Part 2 - Create block formatting context for DetailsFrame if needed. r=bz
nsCSSFrameConstructor::ConstructNonScrollableBlock() has logic to
determine whether to create a block formatting context for a block
frame. I refactor the function to make it reusable by
nsCSSFrameConstructor::ConstructDetailsFrame().

Also, make NS_NewBlockFrame() accept two arguments as other frame
factory functions so that it could be pointed by BlockFrameCreationFunc.
NS_NewBlockFormattingContext is changed accordingly.

The construction for a scrollable DetailsFrame will be further revised
in Part 3.

MozReview-Commit-ID: 8TwG9YMyGva
2016-09-07 14:45:42 +08:00
Ting-Yu Lin
24b8e088b4 Bug 1299753 Part 1 - Use NS_NewBlockFormattingContext() in ConstructFieldSetFrame(). r=bz
MozReview-Commit-ID: E6lvCRIDROY
2016-09-05 15:36:53 +08:00
Andi-Bogdan Postelnicu
20db2a7951 Bug 1300518 - removed nullcheck for parentFrame in nsCSSFrameConstructor::IsValidSibling. r=xidorn
MozReview-Commit-ID: DVydlxB65wM
2016-09-05 18:16:21 +03:00
Cameron McCormack
1432f1a16b Bug 1297963 - Part 3: Use OMT-safe function for -moz-binding comparisons in CalcDifference. r=emilio
MozReview-Commit-ID: 6n7j2DrAVFv
2016-09-03 00:22:48 +10:00
Emilio Cobos Álvarez
2efcfaad38 Bug 1299066: Make NS_STYLE_DISPLAY_* an enum class. Prefer indexing instead of linear search in the frame constructor r=heycam,bz
The main renaming was generated with the following python script:

```

import sys
import re

CAMEL_CASE_REGEX = re.compile(r"(^|_|-)([A-Z])([A-Z]+)")
DISPLAY_REGEX = re.compile(r"\bNS_STYLE_DISPLAY_([^M][A-Z_]+)\b")

def to_camel_case(ident):
  return re.sub(CAMEL_CASE_REGEX,
                lambda m: m.group(2) + m.group(3).lower(), ident)

def constant_to_enum(constant):
  return "StyleDisplay::" + to_camel_case(constant) + ("_" if constant == "NONE" else "")

def process_line(line):
  return re.sub(DISPLAY_REGEX,
                lambda m: constant_to_enum(m.group(1)), line)

lines = []
with open(sys.argv[1], "r") as f:
  for line in f:
    lines.append(process_line(line))

with open(sys.argv[1], "w") as f:
  for line in lines:
    f.write(line)
```

And the following shell commands:

```
find . -name '*.cpp' -exec python display.py {} \;
find . -name '*.h' -exec python display.py {} \;
```

MozReview-Commit-ID: 91xYCbLC2Vf
2016-09-01 20:41:17 -07:00
Ryan VanderMeulen
baab66fb35 Backed out 5 changesets (bug 1298768, bug 1297963) for causing widespread mochitest-bc failures.
Backed out changeset dedd56fa5c54 (bug 1297963)
Backed out changeset bc1ac59cfe8f (bug 1297963)
Backed out changeset a2e337d5aa02 (bug 1297963)
Backed out changeset e73da71408a3 (bug 1297963)
Backed out changeset 56f8bca8f8e8 (bug 1298768)

CLOSED TREE
2016-09-01 08:05:43 -04:00
Cameron McCormack
6245348615 Bug 1297963 - Part 3: Use OMT-safe function for -moz-binding comparisons in CalcDifference. r=emilio
MozReview-Commit-ID: 2PkR5tUMMy0
2016-08-29 18:17:26 +08:00
Bobby Holley
b39340a6c0 Bug 1292662 - Add an API for the Servo style system to traverse anonymous children. r=heycam 2016-08-25 21:36:43 -07:00
Bobby Holley
fb49955c2b Bug 1292279 - Clear up the semantics of our Servo traversal APIs. r=heycam 2016-08-25 21:34:31 -07:00
Boris Zbarsky
68d5ab8bbb Bug 1297835. Don't suppress the scroll bits of a non-open <details> that has the appropriate overflow styles. r=TYLin 2016-08-25 14:35:33 -04:00
Jinank Jain
b875b54a4e Bug 712936 - Convert users of PR_STATIC_ASSERT to C++11 static_assert(). r=Ms2ger 2016-08-23 11:24:54 -04:00
Xidorn Quan
6161a647ce Bug 1291707 part 4 - Not recalc quotes and counters in EndUpdate. r=bz
It will be called in the next flush, so no need to do it eagerly.

MozReview-Commit-ID: 1B8pzn0dqBO
2016-08-23 10:31:26 +10:00
Mats Palmgren
3c120c27f6 Bug 1288946 - Propagate the mParentFrame from the nested GetInsertionPrevSibling call -- it may be a continuation. r=heycam 2016-08-18 18:21:26 +02:00
Jessica Jong
e854e57b5b Bug 1278738 - Add 'week' to the list of valid types attributes for <input>. r=smaug 2016-08-15 23:15:00 -04:00
L. David Baron
ad0f663d00 Bug 1294918 - Use helper method nsIFrame::IsFixedPosContainingBlock. r=dholbert
MozReview-Commit-ID: 5fdGqLSOjvs
2016-08-12 18:39:45 -07:00
L. David Baron
287271d650 Bug 1294918 - Fix spelling of method name nsIFrame::IsAbsPosContainingBlock. r=dholbert
This misspelling was introduced in bug 1125767, changeset b9951cca6d1f.

MozReview-Commit-ID: KQNlLelY2Kn
2016-08-12 18:39:45 -07:00
Emilio Cobos Álvarez
d529d90d3b Bug 1290335: Reuse the OverflowChangedTracker between both restyle managers. r=heycam
MozReview-Commit-ID: objnqfecZD
2016-08-03 15:11:15 -07:00
Bobby Holley
e2c6052b1b Bug 1290214 - Remove NS_ERROR for XBL stylesheet management. r=emilio 2016-07-28 17:25:49 -07:00
Bobby Holley
b360d83801 Bug 1289624 - Switch to UniquePtr for managing ServoNodeData. r=heycam 2016-07-27 13:34:55 -07:00
Bobby Holley
1c9c1d221f Bug 1289620 - Hook up initial styling. r=heycam
Aside from the parser-side hacks, this should subsume all the current scattered
logic in the stylo tree to handle initial styling.
2016-07-27 09:44:25 -07:00
Emilio Cobos Álvarez
95dc632f01 Bug 1286445: stylo: Support restyles of non-pseudo content on state change. r=heycam
This includes, for example :hover.

Also removes the call to IsStyledByServo() in the document constructor, it's not
only unnecessary, but also we call UpdateStyleBackendType() too early.

MozReview-Commit-ID: 4YfCdmLoSxu
2016-07-16 16:22:12 -07:00
Emilio Cobos Álvarez
948a479bad Bug 1285474: stylo: Add dirtiness-tracking hooks for Servo and convenient methods. r=bholley
Also, guard with asserts the access to the new shared flags.

MozReview-Commit-ID: H9UFFHRPmiu
2016-07-12 00:33:57 -07:00
Jessica Jong
1a6a96c66a Bug 1278737 - Add 'month' to the list of valid types attributes for <input>. r=smaug 2016-07-03 23:19:00 +02:00
Sebastian Hengst
b74bde4463 Backed out changeset 444a4a7233f7 (bug 1278737) for frequent web platform test 2 failure on OSX in form-validation-reportValidity.html. r=backout 2016-07-01 20:04:58 +02:00
Jessica Jong
88770ff520 Bug 1278737 - Add 'month' to the list of valid types attributes for <input>. r=smaug 2016-06-29 23:16:00 +02:00