Commit Graph

975 Commits

Author SHA1 Message Date
Ed Morley
fd12559480 Backed out changeset ce20f4b16d56 (bug 261037) for reftest failures in 478811-1.html on a CLOSED TREE 2013-10-24 10:28:44 +01:00
Robert O'Callahan
f82ba263d9 Bug 261037. Support scrolled fieldsets. r=mats
The main change here is to have nsCSSFrameConstructor able to construct
a scrollframe for nsFieldSetFrame's inner frame.
To make this work properly (as much like normal scrolled elements, and
to be consistent with Chrome), we need another major change, which is to move
the padding from the nsFieldSetFrame to its inner frame. We do this by copying
the padding to the inner frame and ignoring the padding on the outer frame.
To get this right for percentage padding and intrinsic widths is a little
tricky. For that, we need nsLayoutUtils::IntrinsicForContainer to be able to
ignore the padding on a frame so we don't add it twice.
Overriding nsFieldSetFrame::GetScrollTargetFrame makes setting scrollTop/
scrollLeft on a <fieldset> work as expected.
* * *
Bug 261037 - A fieldset overflow:auto reftest.

--HG--
extra : rebase_source : d737eebdc25b3b748a84de676d5e8e066505e00b
2013-10-23 00:46:40 +02:00
Ed Morley
1cb147e161 Backed out changeset ffd9c7bbd2fe (bug 261037) for compilation failures in nsCSSFrameConstructor on a CLOSED TREE 2013-10-23 15:44:19 +01:00
Robert O'Callahan
d4185c2d7c Bug 261037. Support scrolled fieldsets. r=mats
The main change here is to have nsCSSFrameConstructor able to construct
a scrollframe for nsFieldSetFrame's inner frame.
To make this work properly (as much like normal scrolled elements, and
to be consistent with Chrome), we need another major change, which is to move
the padding from the nsFieldSetFrame to its inner frame. We do this by copying
the padding to the inner frame and ignoring the padding on the outer frame.
To get this right for percentage padding and intrinsic widths is a little
tricky. For that, we need nsLayoutUtils::IntrinsicForContainer to be able to
ignore the padding on a frame so we don't add it twice.
Overriding nsFieldSetFrame::GetScrollTargetFrame makes setting scrollTop/
scrollLeft on a <fieldset> work as expected.
* * *
Bug 261037 - A fieldset overflow:auto reftest.

--HG--
extra : rebase_source : 6ca585f685965d3a538bde64ad4057c5fd7b538f
2013-10-23 00:46:40 +02:00
Daniel Holbert
52236cfeca Bug 875275 part 3: Make nsColorControlFrame inherit from nsHTMLButtonControlFrame instead of nsBlockFrame. r=jwatt f=arnaud.bienner 2013-10-22 17:29:20 +02:00
Arnaud Bienner
2e3ec1b741 Bug 875275 part 1: Implement layout support for <input type="color">. r=dbaron,dholbert 2013-07-10 00:25:27 +02:00
Olli Pettay
cb249f7db1 Bug 928403 - optimize nsFrameConstructorState::ProcessFrameInsertions, r=roc
--HG--
rename : testing/mochitest/b2g-debug.json => testing/mochitest/b2g.json
extra : rebase_source : c45d39f4b50f248b28a6ebfb50128084bb59ebe4
2013-10-22 15:06:01 +03:00
Robert Longson
07e163cd9f Bug 919371 - Make sure marker frames get the right parent. r=cam 2013-10-13 10:15:53 +01:00
Jonathan Watt
dd8707fd23 Bug 917386 - Make frame construction handle trees of nsIAnonymousContentCreator::ContentInfo objects, including support for associating CSS pseudo-elements with deeply nested anonymous elements. r=bz 2013-10-01 22:51:29 +01:00
Ehsan Akhgari
27c999b3b4 Bug 921753 - Part 1: Avoid #including nsStyleStructInlines.h in nsIFrame.h; r=roc
This patch reduces the number of files that transitively #include
gfx/2d.h from 1782 to 1582.
2013-10-01 17:00:38 -04:00
Cameron McCormack
464d030850 Bug 918176 - Silence uninitialized variable warning in nsRuleNode::ComputeContentData. r=dholbert 2013-09-20 11:24:04 +10:00
Mats Palmgren
ae50ca5ce4 Bug 919318 - Drop the Get prefix on the frame methods GetFirstContinuation, GetLastContinuation, GetFirstInFlow, GetLastInFlow and also on nsLayoutUtils::GetLastContinuationWithChild, because they never return null. r=dholbert 2013-09-25 11:42:34 +00:00
Jonathan Watt
a4bbce1e0f Bug 920158 - Make nsCSSFrameConstructor::ConstructFrameFromItemInternal handle frames that should suppress floating of descendants. r=bz
--HG--
extra : rebase_source : 3f0b806dad1c1381bd30bd25e943866415e226f2
2013-09-24 21:29:29 +01:00
Jonathan Watt
602832e7f6 Bug 920154 - Rename nsIContent's SetNativeAnonymous method to SetIsNativeAnonymousRoot to be clear that it should only be called for the root native anonymous element. r=bz
--HG--
extra : rebase_source : 9be498a3ae51a4a4587c8035cb7bc58002b3a268
2013-09-24 21:29:27 +01:00
Jonathan Watt
8ee1e8e7cf Bug 920146 - Rename NODE_IS_ANONYMOUS to NODE_IS_ANONYMOUS_ROOT to avoid misinterpretation and for symmetry with NODE_IS_NATIVE_ANONYMOUS_ROOT. r=bz
--HG--
extra : rebase_source : ea8c2377f1f85248239a3f6b0f6f64bfe40e44ea
2013-09-24 20:28:32 +01:00
Robert O'Callahan
294cedd09d Bug 918185. When Range.getBoundingClientRect/getClientRects needs a textframe for a node, create one if the textframe was optimized away. r=bz 2013-09-19 16:23:48 +12:00
Cameron McCormack
0127877d37 Bug 874507 - Make clip-path, filter, mask and opacity work on <marker> elements. r=longsonr 2013-09-16 15:06:29 +10:00
Ehsan Akhgari
2a87c95927 Bug 904695 - #include fewer headers in nsContentUtils.h; r=jst 2013-08-21 15:28:26 -04:00
Ehsan Akhgari
c2ce7e67ab Bug 906790 - Minimize layout/base #includes; r=roc 2013-08-19 18:55:18 -04:00
James Kitchener
20c9e8a036 Bug 827713 - Use mmultiscripts to handle all script shift elements. r=fredw 2013-08-19 09:11:50 -04:00
Mats Palmgren
cc1f5b7f03 Bug 898913 - Look for the floating first-letter frame to remove on the kPushedFloatsList too. r=dholbert 2013-08-10 23:00:46 +00:00
Corey Ford
894f250f52 Bug 901610 - Use nsStyleDisplay::IsRelativelyPositioned in constructing frames for IB splits. r=dbaron 2013-08-07 16:30:34 -07:00
Cameron McCormack
975a0a23c3 Bug 899894 - Don't null check nsStyleSet::ResolveBlah return values. r=dbaron 2013-08-03 14:11:06 +10:00
David Zbarsky
4fa5d9c4b0 Bug 893117: Remove nsIDOMHTMLLegendElement r=bz 2013-08-01 15:24:24 -07:00
David Zbarsky
93caf8a63e backout Bug 893117 for mochitest failure 2013-08-01 01:54:09 -07:00
David Zbarsky
aa2fc03e9f Bug 893117: Remove nsIDOMHTMLLegendElement r=bz 2013-07-31 23:12:40 -07:00
Nicholas Cameron
a2cdf1ab09 Bug 895873 - backout bug 893117 for Win8 mc bustage 2013-07-30 23:32:35 -04:00
David Zbarsky
0ee6634734 Bug 893117: Remove nsIDOMHTMLLegendElement r=bz 2013-07-30 14:55:12 -07:00
Ehsan Akhgari
085494b95d Bug 895322 - Part 1: Replace the usages of MOZ_STATIC_ASSERT with C++11 static_assert; r=Waldo
This patch was mostly generated by running the following scripts on the codebase, with some
manual changes made afterwards:

# static_assert.sh
#!/bin/bash
# Command to convert an NSPR integer type to the equivalent standard integer type

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.cc" \
         -o -iname "*.mm" \) | \
    xargs -n 1 `dirname $0`/assert_replacer.py #sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_STATIC_ASSERT static_assert
hg rev --no-backup mfbt/Assertions.h \
                   media/webrtc/signaling/src/sipcc/core/includes/ccapi.h \
                   modules/libmar/src/mar_private.h \
                   modules/libmar/src/mar.h


# assert_replacer.py
#!/usr/bin/python

import sys
import re

pattern = re.compile(r"\bMOZ_STATIC_ASSERT\b")

def replaceInPlace(fname):
  print fname
  f = open(fname, "rw+")
  lines = f.readlines()
  for i in range(0, len(lines)):
    while True:
      index = re.search(pattern, lines[i])
      if index != None:
        index = index.start()
        lines[i] = lines[i][0:index] + "static_assert" + lines[i][index+len("MOZ_STATIC_ASSERT"):]
        for j in range(i + 1, len(lines)):
          if lines[j].find("                 ", index) == index:
            lines[j] = lines[j][0:index] + lines[j][index+4:]
          else:
            break
      else:
        break
  f.seek(0, 0)
  f.truncate()
  f.write("".join(lines))
  f.close()

argc = len(sys.argv)
for i in range(1, argc):
  replaceInPlace(sys.argv[i])

--HG--
extra : rebase_source : 4b4a4047d82f2c205b9fad8d56dfc3f1afc0b045
2013-07-18 13:59:53 -04:00
Ryan VanderMeulen
5857445120 Backed out 6 changesets (bug 827713) for reftest failures.
Backed out changeset 014cc3de08fb (bug 827713)
Backed out changeset 4113172193aa (bug 827713)
Backed out changeset 27a5c8dd5ff7 (bug 827713)
Backed out changeset 6448c7e05f11 (bug 827713)
Backed out changeset b67a72618c66 (bug 827713)
Backed out changeset 1279664e0d41 (bug 827713)
2013-07-29 15:19:34 -04:00
James Kitchener
213cb47d0c Bug 827713 - Part 3: Use mmultiscripts to handle all script shift elements. r=fredw 2013-07-29 12:37:50 -04:00
L. David Baron
c9a702e711 Bug 896138 patch 7: Remove unused aFrameManager parameters to some functions. r=heycam 2013-07-20 12:14:25 -07:00
L. David Baron
33de67ec1b Bug 896138 patch 6: Move restyle management code from nsFrameManager to RestyleManager. r=heycam
This is the second of two big chunks of code moved into the new
RestyleManager class from another sources.

Note that the undisplayed map remains in nsFrameManager, although it
could perhaps have moved.
2013-07-20 12:14:25 -07:00
L. David Baron
0354744354 Bug 896138 patch 4: Move restyle management code from nsCSSFrameConstructor to RestyleManager. r=heycam
This moves restyling management out of nsCSSFrameConstructor (thus
reducing its size), and keeps the restyling code closer together.

This is the first of two big chunks of code moved in this patch series.
A later patch in this series will move related code from nsFrameManager
into the same destination file.
2013-07-20 12:14:25 -07:00
William Chen
f8b2cdb2c6 Bug 796061 - Part 2: Remove mInsertionParentTable from nsBindingManager. r=mrbkap 2013-07-17 09:05:06 -07:00
Cameron McCormack
e57c8ad0ef Bug 890782 - Part 2: Make NS_STATE_SVG_NONDISPLAY_CHILD a global state bit and rename it. r=jwatt 2013-07-12 17:13:07 +10:00
Blake Kaplan
eb084c4fdd Bug 890775 - Not all xbl:children elements should be treated specially. r=peterv 2013-07-11 17:52:49 -04:00
Blake Kaplan
ecf2b59e9a Bug 891088 - Rename nsXBLChildrenElement -> mozilla::dom::XBLChildrenElement. r=peterv
--HG--
rename : content/xbl/src/nsXBLChildrenElement.cpp => content/xbl/src/XBLChildrenElement.cpp
rename : content/xbl/src/nsXBLChildrenElement.h => content/xbl/src/XBLChildrenElement.h
2013-07-01 15:09:37 -07:00
Robert O'Callahan
8a7089ba34 Bug 722923. Part 4: Don't walk continuation chain in SyncViewsAndInvalidateDescendants since DoApplyRenderingChangeToTree already does that. r=matspal
--HG--
extra : rebase_source : 76d249a52afdcb999f56da6842cf8c96c9e8088a
2013-07-06 23:53:42 +12:00
Robert O'Callahan
e818748789 Bug 722923. Part 3: Rename UpdateViewsForFrame and document it properly. r=matspal
--HG--
extra : rebase_source : cc54527bec2d7d049b1abfb079587c183d35899d
2013-07-06 23:53:40 +12:00
Cameron McCormack
739e644f3b Bug 842181 - Prevent text zoom from affecting SVG text. r=dbaron 2013-06-29 13:28:50 +10:00
William Chen
1f6764a664 Bug 653881 - Push <xbl:children> in ancestor filter. r=bz,dbaron
--HG--
extra : rebase_source : 9aafffadd2451ca7274e99d7e07d0d71ea52ca02
2013-05-30 17:39:08 -07:00
Blake Kaplan
a3a6516091 Bug 653881 - Rework XBL insertion points and clean up related code to more closely follow the Web Components model. Instead of maintaining a hashtable of insertion points in bindings (and removing insertions points from the tree) leave the insertion points in the tree as explicit placeholders and teach all other relevant code how to walk the explicit children of elements via two iterators (ExplicitChildIterator and FlattenedChildIterator). Note that this patch does not maintain 100% compatibility with the previous code: there are bug fixes and behavior changes included. For example, by having explicit insertion points in the bindings, it is now easier to handle dynamic changes to the bound element correctly (as well as, eventually, handling dynamic changes to the binding correctly). Patch originally by sicking. r=bzbarsky
--HG--
extra : rebase_source : 6926ae8ea57b20f4067b16bd3d7bd85bda854756
2013-05-01 15:50:08 -07:00
Justin Lebar
09d2312322 Bug 820686 - Remove code after MOZ_CRASH or MOZ_ASSUME_NOT_REACHED. r=(see below)
r=tbsaunde for accessible
r=jmuizelaar for gfx
r=waldo for js
r=roc for layout
r=glandium for mozglue
r=jduell for netwerk
r=khuey for everything else
2013-06-28 18:38:32 -07:00
Justin Lebar
cab87a0cce Bug 802686 - s/MOZ_NOT_REACHED/MOZ_CRASH/ in Gecko. r=(see below)
r=tbsaunde for accessible
r=jmuizelaar for gfx
r=roc for layout
r=glandium for mozglue
r=jduell for netwerk
r=khuey for everything else

This is a mechanical change made with sed.  Later patches in this queue
clean up the whitespace errors and so on.
2013-06-28 18:38:30 -07:00
L. David Baron
7ec07e319b Bug 858937 patch 1: Add nsLayoutUtils::GetStyleFrame() variant taking nsIContent*, and use it for two existing users of the variant taking nsIFrame*. r=nrc 2013-06-24 22:32:10 -07:00
Phil Ringnalda
83b45dda07 Back out 2332bb3fe186:10f70b8b04fe (bug 858937) for warnings-as-errors bustage
CLOSED TREE
2013-06-24 23:42:05 -07:00
L. David Baron
8a290dce94 Bug 858937 patch 1: Add nsLayoutUtils::GetStyleFrame() variant taking nsIContent*, and use it for two existing users of the variant taking nsIFrame*. r=nrc 2013-06-24 22:32:10 -07:00
Robert O'Callahan
3fc13110af Bug 880854. Part 2: Support reflows/frame reconstruction in print/print-preview documents by promoting them to frame reconstruction of the whole document. r=mats
--HG--
extra : rebase_source : e81c5cd0f9da7bbcd876669c4b9de46dac825a5d
2013-06-18 23:41:30 +12:00
Robert O'Callahan
0202dcc4d5 Bug 875060. Make display:-moz-stack/-moz-inline-stack elements which are overflow:hidden clip all their descendants, including those for which it is not the containing block. r=mats 2013-06-17 17:16:27 +12:00