Commit Graph

4257 Commits

Author SHA1 Message Date
Matt Woodrow
cfe2575635 Bug 788044 - Make various functions take const parameters. r=roc 2012-09-13 12:32:53 +12:00
Arnaud Sourioux
b20a9a4654 Bug 733186: Annotate ~1000 methods with MOZ_OVERRIDE in /layout r=dholbert r=dbaron 2012-09-14 09:10:08 -07:00
Adam Dane [:hobophobe]
817f867d4e Bug 787624 - Form scrolling for popups should use SCROLL_IF_NOT_VISIBLE. r=roc 2012-09-12 21:53:28 -05:00
Daniel Holbert
d47c88f280 Bug 791037: s/IsInlineOutside/IsInlineOutsideStyle/ in #ifdef MOZ_FLEXBOX code to fix compile error when flexbox is defined. r=dbaron (DONTBUILD because this is in code that's NPOTB for now) 2012-09-13 12:55:27 -07:00
Chris Lord
172e6e789a Bug 786502 - Test that scrolling a fixed background doesn't cause painting. r=roc
Add a test that makes sure that scrolling a page with a fixed background
doesn't cause that background to repaint.

--HG--
rename : layout/reftests/backgrounds/blue-32x32.png => layout/base/tests/chrome/blue-32x32.png
2012-09-13 11:35:16 +01:00
Chris Lord
d52c9aa58b Bug 786502 - Fix background-attachment:fixed scrolling with page. r=roc
Fix the size check in nsDisplayBackground::ShouldFixToViewport so that async
scrolling of fixed backgrounds works correctly when zoomed in on Firefox
Mobile. Also make IsFixedItem in nsDisplayList public and use it in
FrameLayerBuilder, so that fixed items are determined and treated consistently.
2012-09-13 11:34:34 +01:00
Chris Lord
bb16d413e7 Bug 786502 - Separate background layers into separate items. r=roc
Separate out background layers into separate display-list items, so that
backgrounds that are a mix of fixed and non-fixed layers will be treated
individually.
2012-09-13 11:34:23 +01:00
L. David Baron
8127acf9cb Add more profile labels for the separate parts of restyle processing. (Bug 790379) rs=cjones 2012-09-11 21:05:03 -07:00
Matt Woodrow
f798f0a97a Bug 787300 - Fix various bugs with refresh-driver-painting.enabled=false. r=roc 2012-09-12 09:17:26 +12:00
Matt Woodrow
087d06c226 Bug 789396 - Don't overwrite the existing mContainerLayerGeneration value on ThebesLayerItemsEntrys. r=roc 2012-09-12 09:17:26 +12:00
Matt Woodrow
b5a6e210b0 Bug 787148 - Force synchronous repainting when the document state changes. r=roc 2012-09-12 09:17:26 +12:00
Wes Johnston
ee665629c5 Bug 790164 - Keep contentPresShell alive while sending touch events. r=smaug 2012-09-11 13:28:06 -07:00
Bobby Holley
cb56e021c4 Bug 788914 - Remove enablePrivilege from bug 585922 tests. r=mrbkap
This test chokes on the changes in the patch for some reason. Fortunately, since
enablePrivilege now exists solely to make our tests go green, changing its semantics
and removing use of it from anywhere that goes orange is a perfectly acceptable
approach. ;-)
2012-09-11 01:05:10 -07:00
Phil Ringnalda
2254d48838 Backout 38052fd23aec, 910406b62ebc, 7b15c079564c, d7c1d26f8bc9 (bug 716575) for probable reftest and certain talos bustage on Android 2012-09-10 20:57:31 -07:00
Phil Ringnalda
ab6ebfa3e5 Bug 705570 - skip every crashtest with an <applet> in it on OS X 10.7 and 10.8, since they leak if Java isn't installed 2012-09-10 19:50:18 -07:00
Matt Brubeck
48d9a346ee Bug 716575 (1/4) - Add a scriptable interface to GetViewportInfo [r=dbaron] 2012-08-22 13:17:20 -07:00
Jim Mathies
0eb28a561b Bug 783531 - Implement a 'select word at point' text selection routine in nsIDOMWindowUtils. r=roc 2012-09-10 16:02:23 -05:00
Robert Longson
6f3a540d19 Bug 783995 - enable animation of view element attributes. r=dholbert 2012-09-09 12:44:03 +01:00
Ryan VanderMeulen
19172d42a1 Backout bug 788914 and bug 789494 due to intermittent jsreftest crashes. 2012-09-07 19:40:57 -04:00
L. David Baron
74b4279416 Rename nsChangeHint_ReflowFrame to nsChangeHint_AllReflowHints to make it clearer that it's the one that contains multiple bits. (Bug 789592, patch 2) r=bzbarsky 2012-09-07 15:57:06 -07:00
Bobby Holley
746efd4923 Bug 788914 - Remove enablePrivilege from bug 585922 tests. r=mrbkap
This test chokes on the changes in the patch for some reason. Fortunately, since
enablePrivilege now exists solely to make our tests go green, changing its semantics
and removing use of it from anywhere that goes orange is a perfectly acceptable
approach. ;-)
2012-09-07 11:28:56 -07:00
L. David Baron
aa4234d4d1 Remove ForceCompare methods from style structs. (Bug 779968, patch 7) r=bzbarsky 2012-09-07 10:13:36 -07:00
L. David Baron
4fbb3dda02 Make nsStyleContext::CalcStyleDifference force comparison based on the parent's hint instead of the style struct ForceCompare methods. (Bug 779968, patch 6, the main patch) r=bzbarsky
This propagates the non-inherited (in the nsChangeHint sense, not the
CSS inheritance sense) parts of the parent's change hint through
ReResolveStyleContext so that we can use them in
nsStyleContext::CalcDifference.  In the cases where we don't know the
parent's hint, we assume the worst, that all the non-inherited hints
were present in the parent's style change.

This should be a significant performance improvement handling simple
style changes (such as a style attribute change setting a non-inherited
property) on elements with large numbers of descendants that have data
in ForceCompare structs that can't be stored in the rule tree (for
example, margins or widths in em or rem units).
2012-09-07 10:13:36 -07:00
L. David Baron
1289ea726f Refix bug 731521 in the new setup for forcing comparison in nsStyleContext::CalcDifference, since we can no longer rely on nsStyleBorder::ForceCompare. (Bug 779968, patch 5) r=bzbarsky 2012-09-07 10:13:36 -07:00
L. David Baron
b3b996ffe4 Abstract nsChangeHint_NonInherited_Hints into a function so that it accurately reports the reflow cases to all callers. (Bug 779968, patch 4) r=bzbarsky
This is in preparation for adding an additional caller.

nsChangeHint_NonInherited_Hints will be reintroduced in patch 6, but as
the maximum set of such hints rather than the minimal set, and with the
less confusing name nsChangeHint_Hints_NotHandledForDescendants.
2012-09-07 10:13:36 -07:00
Ed Morley
8cf4ffc2ea Backout 5853df66d488, e8fadd906232, d787279d282c, 8c1ed6327355, 94cfcf5da7c8, 87aa103d7e87 (bug 585922) for failures in test_bug411236.html 2012-09-07 09:15:34 +01:00
Bobby Holley
43dff80a77 Bug 788914 - Remove enablePrivilege from bug 585922 tests. r=mrbkap
This test chokes on the changes in the patch for some reason. Fortunately, since
enablePrivilege now exists solely to make our tests go green, changing its semantics
and removing use of it from anywhere that goes orange is a perfectly acceptable
approach. ;-)
2012-09-06 22:55:18 -07:00
Cameron McCormack
09aeb61301 Bug 655877 - Part 23a: Add white-space:-moz-pre-discard-newlines value with white space collapsing behavior like SVG's xml:space="preserve". r=roc,dbaron 2012-09-07 15:42:19 +10:00
Boris Zbarsky
a562efcb37 Bug 767931. Make drawWindow and asyncDrawXULElement ChromeOnly. r=roc 2012-09-07 01:29:47 -04:00
L. David Baron
253be7632f Rename nsIPresShell::InitialReflow to Initialize since it doesn't actually perform reflow. (Bug 788956) r=roc 2012-09-06 21:16:09 -07:00
L. David Baron
770897992d Remove the easy-to-remove uses of enablePrivilege in layout/base/tests/. (Bug 788603) r=roc 2012-09-05 22:43:21 -07:00
Edwin Flores
ccb631db79 Bug 719286 - Add support for -moz-objectValue keyword to CSS parser for SVG glyphs r=dbaron 2012-09-06 16:58:47 +12:00
Edwin Flores
0300bf0a15 Bug 719286 - Add support for -moz-objectFillOpacity and -moz-objectStrokeOpacity to CSS parser for SVG glyphs r=dbaron 2012-09-06 16:58:46 +12:00
Edwin Flores
cac293e907 Bug 719286 - Add support for objectfill and objectstroke values to CSS parser r=dbaron 2012-09-06 16:58:46 +12:00
Edwin Flores
120eb58f93 Bug 719286 - Add -moz-is-glyph media feature for setting default values for SVG glyphs in the browser SVG style sheet r=dbaron 2012-09-06 16:58:44 +12:00
Nicholas Cameron
d6a99a40e3 Bug 786817. Initialise ThebesDisplayItemLayerUserData::mMaskClipCount. r=roc 2012-09-06 16:07:53 +12:00
Scott Johnson
32391cde9d Bug 780258: Add an interface to set the maximum line box width, accessible from chrome script. [r=dbaron] 2012-09-05 16:39:34 -05:00
Daniel Holbert
7f5f15b6bd Bug 666041 patch 6: Ignore min/max main-size properties when computing the main size of a flex item (since those properties are honored later in the flexbox algorithm). r=dbaron 2012-09-05 14:13:37 -07:00
Daniel Holbert
89dfb7e636 Bug 666041 patch 5: Use flex-basis in place of main-size property, when computing the main size of a flex item. r=dbaron 2012-09-05 14:13:37 -07:00
L. David Baron
bd0f54f2f9 Convert bidi_numeral_test.js from CR-LF to LF line endings. No bug. 2012-09-05 13:31:01 -07:00
Chris Jones
2b59f28d65 Bug 783066: Paint the backgrounds of remote subdocuments like we paint those of same-process subdocuments. r=roc 2012-09-05 09:23:45 -07:00
Robert O'Callahan
b3739ebb38 Bug 787089. Rip out mUpdatePluginGeometryForFrame optimization. It's not known to be a significant win, and creates problems when prescontext ancestor chains are broken; the complexity probably isn't worthwhile. Also, soon (or now) we can rework plugin bounds computation to be use the display list built for rendering. r=matspal
--HG--
extra : rebase_source : 0394fcb5111b8b96b5f8ce48e20d6e5503f9ccf7
2012-09-05 22:30:10 +12:00
Robert O'Callahan
9cdb4ee0d8 Bug 785588. Perform asynchronous scroll operations before firing requestAnimationFrame callbacks. r=tnikkel
--HG--
extra : rebase_source : 3c1439773981db4ea1b957db4351f50899229130
2012-09-05 22:29:15 +12:00
Daniel Holbert
16ff96590f Bug 763689 patch 3: Support min-height:auto in computed style, and add special cases as necessary wherever it's read. r=dbaron 2012-09-04 16:26:11 -07:00
Daniel Holbert
b0926860ac Bug 763689 patch 2: Support min-width:auto in computed style, and add special cases as necessary wherever it's read. r=dbaron 2012-09-04 16:26:10 -07:00
Brendan Dahl
f36e3d9c21 Bug 745025 - Part 2 - Adds layout/printing support for mozPrintCallback. r=roc 2012-08-30 17:24:35 -07:00
Simon Montagu
1acbd32c7a Don't forget to empty the buffer after ResolveParagraph. Bug 788086, r=roc 2012-09-04 00:46:43 -07:00
Nicholas Cameron
120146b67e Bug 769021; fix a memory leak with mask sharing. r=khuey 2012-09-04 13:02:56 +12:00
Nicholas Cameron
f3c3989fbe Bug 786817; Check multiple masks properly and invalidate after removing a mask layer. r=roc 2012-09-04 13:02:56 +12:00
Nicholas Cameron
9b455fc6c9 Back out bug 769021, bug 786817 2012-09-03 22:47:51 +12:00
Nicholas Cameron
26ba269020 Bug 769021; fix a memory leak with mask sharing. r=khuey 2012-09-03 22:35:33 +12:00
Nicholas Cameron
c1efb18903 Bug 786817; Check multiple masks properly and invalidate after removing a mask layer. r=roc 2012-09-03 22:35:33 +12:00
Ed Morley
86cbb250b0 Backout 03cb77f8d75d (bug 769021), 04fd792509d6 (bug 786817) for burning the tree 2012-09-03 09:20:05 +01:00
Nicholas Cameron
fc482cb592 Bug 769021; fix a memory leak with mask sharing. r=khuey 2012-09-03 18:58:07 +12:00
Nicholas Cameron
3cc9795c20 Bug 786817; Check multiple masks properly and invalidate after removing a mask layer. r=roc 2012-09-03 18:58:07 +12:00
Robert O'Callahan
4df6e1b279 Bug 780847. Built-in support for mouse/touch events targeting nodes within a certain radius via heuristics. r=mats,smaug
--HG--
extra : rebase_source : 13a350bb6c993e5a23e54657cbe9f22c287036ad
2012-08-20 12:02:42 +12:00
Robert O'Callahan
1649648ea1 Bug 780847. Fix nsLayoutUtils::IsProperAncestorFrame(CrossDoc) to handle case where aAncestorFrame == aCommonAncestor == aFrame->GetParent(). r=mats
--HG--
extra : rebase_source : 9f8d01c7049a701ac5bcf633ee605443b81aec35
2012-08-20 10:25:49 +12:00
Randell Jesup
29ac5c0b8c Bug 773151: Convert nsCAutoString->nsAutoCString CLOSED TREE r=bsmedberg 2012-09-01 22:35:17 -04:00
David Zbarsky
1404308f43 Bug 780692 Part 2.5: Rename GetRootFrameThroughViews to GetNearestFrameContainingPresShell. r=tn 2012-08-30 17:19:26 -04:00
David Zbarsky
6fb8f7c0f1 Bug 780692 Part 2: Flush layout when handling touch events r=smaug 2012-08-30 14:41:09 -04:00
Chris Lord
723cb9018a Bug 786672 - Use the scrolled frame for nsDisplayScrollLayer when finding the active scrolled root. r=roc
The underlying frame of an nsDisplayScrollLayer can change and end up returning
different values when finding the active scrolled root. Instead of relying on
display-item ordering/merging, get the scrolled frame from the item (which was
already storing it).
2012-08-30 08:31:16 +01:00
L. David Baron
1f71d3cf65 Print which bits have errors to try to distinguish overwriting from hardware problems. (Bug 785737) r=roc 2012-08-29 18:27:01 -07:00
Ehsan Akhgari
c48204a6a9 Bug 579517 follow-up: Remove NSPR types that crept in
--HG--
extra : rebase_source : adad9af01d9168a14d87c201c1bd51a3a7a768f5
2012-08-29 10:56:51 -04:00
Ehsan Akhgari
3eb46b7e1d Bug 782062 - Do not attempt to move frames with views in their subtree without doing a reflow to prevent the view position from getting out of sync; r=roc
--HG--
extra : rebase_source : 2e4ea7d139dc953a4c3d525b15e5753fb585e057
2012-08-29 09:46:09 -04:00
Robert O'Callahan
ac552f7834 Bug 784410. Don't target bubbling scroll commands at an element unless we have at least one device pixel to scroll to. r=mats 2012-08-29 23:21:40 +12:00
Chris Lord
306548b14f Bug 785333 - Make sure layers are only associated with a single frame. r=roc
Use Layer user-data to ensure that a Layer doesn't end up being found multiple
times for different frames during construction.
2012-08-29 11:53:34 +01:00
Chris Lord
e7f9cfe919 Bug 785333 - Keep track of merged frames with all display items. r=roc
This changes the display-item storage to store layers against the underlying
frame and all merged frames of an item (and similarly, to retrieve them against
all frames of an item).
2012-08-29 11:53:27 +01:00
Chris Lord
f3010b15e4 Bug 785333 - Store container layers against merged frames. r=roc
As well as storing the container layer against the underlying frame of the
container item, store it against its merged frames as well. In addition, check
for old container layers against merged frames when building a container layer.

This protects against losing the layer when the underlying frame of a container
item changes to either a new frame or an existing, merged frame.
2012-08-29 11:53:20 +01:00
Chris Lord
1636ed3400 Bug 785333 - Don't rely on layer ordering in ContainerState::Finish. r=roc
Rather than relying on a particular ordering of layers in
ContainerState::Finish, use ContainerLayer::Reposition to more reliably remove
old, unused layers.
2012-08-29 11:53:06 +01:00
Boris Zbarsky
f6bb4154ad Bug 732209 part 4. Propagate the CORS state throughout the CSS loading process. r=sicking,dbaron 2012-08-28 13:10:08 -04:00
Ryan VanderMeulen
f388c9745a Merge m-c to inbound. 2012-08-27 22:54:14 -04:00
Gavin Sharp
a9400c350e Back out bug 785333 (revisions 79345542f853 and a1756976e61d) to fix crasher bug 785626 2012-08-27 16:41:19 -07:00
Philipp von Weitershausen
f47e2a9937 Bug 776825 - Separate message managers into senders and broadcasters. r=smaug
--HG--
rename : content/base/public/nsIFrameMessageManager.idl => content/base/public/nsIMessageManager.idl
2012-08-27 11:13:02 -03:00
Paul Adenot
55730cebcd Bug 761393 - Add telemetry probes to guess the retention time. r=taras 2012-08-26 21:12:36 -07:00
Paul Adenot
38496cada6 Bug 761393 - Cache the gfxPatterns using an nsExpirationTracker and an hashtable. r=dbaron 2012-08-26 21:09:46 -07:00
David Zbarsky
17aa3f57ac Fix 2 logging calls I added today to also log the element and it's id, no bug, r=me 2012-08-26 00:14:31 -04:00
David Zbarsky
4a0bd0bac6 Bug 785657 - Enable async animations in content processes r=cjones 2012-08-25 21:27:28 -04:00
David Zbarsky
0d9ed62c15 Bug 785648 - Improve OMTA logging r=cjones 2012-08-25 21:27:28 -04:00
David Zbarsky
a3f56ea14f [Bug 785454] Remove nsPresShell::GetFrameForPoint r=smaug 2012-08-25 00:09:48 -04:00
Benoit Girard
ca001bb642 Bug 785287 - Profiler: Add the document URL in DoReflow. r=roc
--HG--
extra : rebase_source : 816fc213bdc9e3201913f8df944a2a84e6f33bfc
2012-08-23 22:07:21 -04:00
Chris Lord
161d1ea386 Bug 785333 - Keep track of merged frames with all display items. r=roc
This changes the display-item storage to store layers against the underlying
frame and all merged frames of an item (and similarly, to retrieve them against
all frames of an item).
2012-08-24 16:17:22 +01:00
Chris Lord
30b4deab7a Bug 785333 - Store container layers against merged frames. r=roc
As well as storing the container layer against the underlying frame of the
container item, store it against its merged frames as well. In addition, check
for old container layers against merged frames when building a container layer.

This protects against losing the layer when the underlying frame of a container
item changes to either a new frame or an existing, merged frame.
2012-08-24 16:17:22 +01:00
Chris Lord
777670dafd Bug 781516 - Remove DisplayItemDataEntry.mIsMergedFrame. r=roc
This is unnecessary as it just duplicates the functionality of
mIsSharingContainerLayer.
2012-08-24 11:59:37 +01:00
Ehsan Akhgari
3265eaba32 Bug 579517 follow-up: Remove NSPR types that crept in 2012-08-27 12:28:11 -04:00
Chris Lord
e285e5de5c Bug 771154 - Invalidate only the frame rect when new frames come into view. r=roc
Instead of forcing a full-layer invalidation when new frames appear, invalidate
only the bounds of the frame. Invalidating untrusted geometry still causes a
full-layer invalidation.
2012-08-23 12:14:47 +01:00
Chris Lord
d736d8336e Bug 781516 - Fix invalidation caused by unprocessed merged frames. r=roc
As clip items aren't processed, they have no associated layer entries. This is
a problem when a clip item's underlying frame is the same as one that gets
merged into a container layer, as display-item data will be created, but no
layer entry will be added. This will cause it to be removed on the next
layer-build, and cause a full invalidation.

Fix this by adding an 'mIsMergedFrame' entry to DisplayItemDataEntry and setting
it on all merged frames in BuildContainerLayerFor. This property stops the
entry from being removed when it gets updated.
2012-08-23 09:30:53 +01:00
David Zbarsky
b099208605 Bug 784846 - The ShouldPrerender check for async animations is wrong r=mattwoodrow 2012-08-23 02:05:27 -04:00
Ehsan Akhgari
a8a14f9163 Merge the landing of bug 579517 to mozilla-inbound 2012-08-22 12:12:15 -04:00
Doug Sherk
b289e024ad Bug 780397: Convert FrameMetrics.mViewportScrollOffset from nsIntPoint to gfx::Point r=roc 2012-08-21 21:37:15 -07:00
Doug Sherk
e59e1890d0 Bug 775447: Let touch-event listeners cancel async pan/zoom r=cjones 2012-08-21 21:37:06 -07:00
David Zbarsky
3822af4b7f Bug 784239 - Perform async animations even when not all properties can be asyncified r=roc 2012-08-21 21:48:47 -04:00
Ehsan Akhgari
306a98e79d Bug 688575 - Disable layout/base/tests/bug482484.html on Windows because of focus issues which cause it to fail intermittently 2012-08-21 15:05:25 -04:00
Ehsan Akhgari
8afd2ac53b Bug 689435 - Disable layout/base/tests/bug644428-1.html on Windows because of focus issues which cause it to fail intermittently
--HG--
extra : rebase_source : bac1343efa68c1833ce517bb7b63a61406ace14e
2012-08-21 14:01:21 -04:00
David Zbarsky
bc0a1fa738 Bug 783893 - Clean up async animation code r=roc 2012-08-21 00:06:47 -04:00
David Zbarsky
b27894f902 Bug 784004 - Don't include Layers.h everywhere Part 3 r=nical 2012-08-21 00:06:46 -04:00
Kyle Huey
35dc213b35 Bug 783379: Remove unnecessary (wrong) optimization of image decoding notifications. r=roc
--HG--
extra : rebase_source : d485d0f5bbe35dc969712ca50654c8671b033c80
2012-08-20 17:14:04 -07:00
Ehsan Akhgari
2962d2eed1 Bug 579517 - Part 5: Add missing StandardInteger.h #includes where needed; r=bsmedberg
Landing on a CLOSED TREE
2012-08-08 17:08:17 -04:00
Ehsan Akhgari
8c296bbcd4 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

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 "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
David Zbarsky
b59e0492e0 Bug 776401 Part 2: Add animation to the layer and then add segments directly to it r=roc 2012-08-20 09:35:42 -04:00
David Zbarsky
dce4d29828 Bug 776401 Part 1: Avoid copying animation segments when creating animations r=roc 2012-08-20 09:35:42 -04:00