Commit Graph

10609 Commits

Author SHA1 Message Date
Robert O'Callahan
2c76301582 Bug 637852. Part 23: Fix incorrect call to 'abs'. r=tnikkel 2011-06-23 00:11:28 +12:00
Robert O'Callahan
432a81c01e Bug 637852. Part 22: Detect when the contents of a ThebesLayer have shifted by a subpixel amount and repaint the entire layer when that happens. r=tnikkel
This fixes artifacts when we're scrolling inside scaled content, and includes a test for that (which fails without
this code change).
2011-06-23 00:11:28 +12:00
Robert O'Callahan
779fca303f Bug 637852. Part 21: Skip invalidation if aRegionToInvalidateIsEmpty (note that ScaleRoundOut on an empty bounds rect can return a non-empty rect). r=tnikkel 2011-06-23 00:11:28 +12:00
Robert O'Callahan
a0cb0b9295 Bug 637852. Part 20: Allow fast scrolling within transformed content. r=tnikkel
This lets us easily test scrolling with non-identity resolution.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
a71cab3bed Bug 637852. Part 19: Test (from bug 633344) 2011-06-23 00:11:28 +12:00
Robert O'Callahan
0c48fabd49 Bug 637852. Part 18: Support computing the "residual transform" for a ThebesLayer --- the difference between its snapped transform and the ideal transform --- and use it to align ThebesLayer drawing for transforms that aren't changing. r=tnikkel
This fixes bug 637597 and probably other bugs.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
59cfc47b23 Bug 637852. Part 17: Tighten up AreLayersMarkedActive so we track exactly what properties are changing. Also, clamp resolution to power-of-2 only if the frame's transform has a scale. r=tnikkel
This lets us avoid clamping the scale in more situations. We should only clamp the scale when we think
the scale is changing due to a changing transform --- the goal of clamping is to not have to redraw the content
too often when the content is zooming in or out.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
04565c4766 Bug 637852. Part 16: Mark newly-passing reftests.
Various tests that used to fail on Android now pass. One test that used to fail on Mac passes now too.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
c65d66ca40 Bug 637852. Part 15: Don't round mOuterRect/mInnerRect if there's a scale factor in the current transform. r=joe
This avoids losing information when we're drawing into a high-resolution ThebesLayer. It works well with the
previous patch; for identity scale, this rounding of the inner/outer rects ensures pixel alignment of the edges,
but with non-identity scale the rectangle snapping ensures pixel alignment of the edges. This fixes reftest failures.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
e90667f7e7 Bug 637852. Part 14: Try to use snappable rects to draw solid borders instead of using stroke, when a scaling transform is present. r=joe
The goal here is to avoid antialiased border edges when drawing into high-resolution ThebesLayers. This fixes test failures.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
55a9350095 Bug 637852. Part 13: Allow snapping of text baselines to occur when there's a scale in the current transform. r=tnikkel
This allows baselines to be snapped properly when drawing into high-resolution ThebesLayers.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
8a76eeceb9 Bug 637852. Part 12: Dump layer trees and display lists to stdout instead of stderr so that they stay in order with window.dump() and other output. r=tnikkel 2011-06-23 00:11:28 +12:00
Robert O'Callahan
fcf2510a5d Bug 637852. Part 6: Implement resolution scaling in FrameLayerBuilder. r=tnikkel
FrameLayerBuilder::BuildContainerLayerFor takes responsibility for resolution scaling. The ContainerParameters
passed in are added to any transform requested. Then we extract the scale part of the transform, round the scale
up to the nearest power of two if the transform may be actively animated (so we don't have to redraw layer contents
constantly), pass that scale down to be applied by each child and set the residual transform on the ContainerLayer.

For child layers built via BuildLayer, we just pass the requested scale factor in via the ContainerParameters.
If the returned layer is a ContainerLayer then BuildLayer is guaranteed to have already done necessary scaling.
If the returned layer is not a ContainerLayer then we apply the scale ourselves by adding the scale to the
child layer's transform.

For child ThebesLayers containing non-layer display items, we scale the drawing of those display items so that
the child ThebesLayers are simply larger or smaller (larger or smaller visible regions).

We have to scale all visible rects, clip rects etc that are in the coordinates of ThebesLayers or the parent
ContainerLayer. To keep things simple we do this whenever we convert from appunits to integer layer coordinates.

When a ThebesLayer's resolution changes we need to rerender the whole thing.

nsDisplayList::PaintForFrame needs to respect the presshell's resolution setting. We do that by building a layer tree
with a ContainerParameters requesting a scale up by the presshell resolution; once that layer tree is built, we
adjust the root layer transform to scale back down by the resolution.
2011-06-23 00:11:27 +12:00
Robert O'Callahan
93793566d0 Bug 637852: Part 5: Create ContainerParameters structure to carry resolution scale factors through layer creation. r=tnikkel
This patch shouldn't change any behavior. It just passes the ContainerParameters around, which will contain scale factors that should have been
applied when BuildLayer returns a ContainerLayer.

This patch also adds an aTransform parameter to BuildContainerLayerFor, which nsDisplayTransform uses to set the
transform for the ContainerLayer. This way BuildContainerLayerFor knows what the container's transform is going to be
before constructing the children, which in the next patch will let us construct the children with the right resolution.
2011-06-23 00:11:27 +12:00
Phil Ringnalda
ae5dee5c44 Back out bc0b2201ca85 (bug 654002) on suspicion of causing WinXP opt mochitest crashes 2011-06-22 21:46:52 -07:00
Ehsan Akhgari
f742585a1f Merge mozilla-central into mozilla-inbound 2011-06-22 20:19:47 -04:00
Mats Palmgren
f1dde034df Bug 654002 - Remove frame continuations iteratively, not recursively. r=roc 2011-06-23 01:16:00 +02:00
Robert Longson
5bf016d92d Bug 666068 - Speed up nsSVGIntegrationUtils::UsingEffectsForFrame. r=jwatt,jmuizelaar 2011-06-22 21:07:31 +01:00
Ed Morley
c5f7f0a955 Bug 665686 - Fix unused variable warnings in layout/style/; r=dbaron
--HG--
extra : rebase_source : cadde7110be42e3523c908c095cab8852f00bfb3
2011-06-22 12:00:56 -04:00
Jonathan Hage
f820acdb07 Add reftest for the bug 650530; r=karlt
--HG--
extra : rebase_source : 229c1fc19b3aeedf6b7b1c8b348d90c9d1f9193c
2011-06-22 11:55:35 -04:00
Jonathan Hage
9c55c33c76 Bug 650530 - Implement names for negative spaces; r=karlt
--HG--
extra : rebase_source : 73161560d3c781c81c780995c0abda5bf63c780c
2011-06-22 11:55:05 -04:00
Jonathan Hage
cd773d5fa7 Bug 557084 - Remove deprecated attributes and empty <mrow/>'s in mozilla/src/layout/mathml/tests/; r=fred.wang
--HG--
extra : rebase_source : 70b0187bd38c92d91df5bec8713ebe7d2ae4b14d
2011-06-22 11:53:07 -04:00
Ehsan Akhgari
006b4e90d7 Merge the last green changeset of mozilla-inbound to mozilla-central 2011-06-22 15:50:44 -04:00
Mounir Lamouri
da18a8f130 Merging last green changeset of mozilla-inbound into mozilla-central. 2011-06-22 16:13:49 +02:00
Jonathan Kew
f3ed02ab79 bug 475968 - add padding pixels to loose ink bounds on Windows because of ClearType pixel bleed. r=roc 2011-06-22 09:49:53 +01:00
Ehsan Akhgari
6b630402fa Merge the last green changeset on mozilla-inbound into mozilla-central 2011-06-21 17:46:35 -04:00
Mounir Lamouri
d0fc863efa Bug 658037 (1/2) - r=bz 2011-06-21 18:52:22 +02:00
Ed Morley
7bd9e7ed4a Bug 665723 - Fix unused variable warnings in layout/generic/; r=roc 2011-06-21 17:37:47 +02:00
Ehsan Akhgari
d71311ff57 Merge mozilla-central into mozilla-inbound 2011-06-20 23:42:45 -04:00
Robert Longson
3235a831cb Bug 652832 - Support animation of use element width/height. r=jwatt 2011-06-20 21:15:42 +01:00
Mounir Lamouri
6dd49300f3 Backed out changeset 2783e9b15954 (bug 665833) due to oranges. 2011-06-21 18:59:20 +02:00
Joe Drew
df19c75608 Bug 665833 - Use nsCRTGlue rather than nsCRT in nsStyleStruct.cpp. r=dbaron 2011-06-21 01:03:59 -04:00
Jonathan Watt
0102820a83 Bug 665009 - In SVG reftests, replace the link to Creative Commons' retired Public Domain Dedication with a link to the replacement, CC0. r=longsonr,gerv. 2011-06-21 13:19:35 +01:00
Jesse Ruderman
61fa0ff0dc Add crashtest from bug 468563 2011-06-20 11:42:05 -07:00
Jesse Ruderman
207d3878c0 Add crashtest from bug 588627 2011-06-20 11:42:05 -07:00
Jesse Ruderman
438a5d6dc3 Add crashtest from bug 541620 2011-06-20 11:42:05 -07:00
Jesse Ruderman
dcb67c9321 Add crashtest from bug 576649 2011-06-20 11:42:05 -07:00
Doug Turner
104a8914c7 Bug 615597 - Implement devicemotion and fix up deviceorientation events. r=smaug/azakai
--HG--
rename : content/events/src/nsDOMOrientationEvent.cpp => content/events/src/nsDOMDeviceOrientationEvent.cpp
rename : content/events/src/nsDOMOrientationEvent.h => content/events/src/nsDOMDeviceOrientationEvent.h
rename : dom/system/android/nsAccelerometerSystem.cpp => dom/system/android/nsDeviceMotionSystem.cpp
rename : dom/system/android/nsAccelerometerSystem.h => dom/system/android/nsDeviceMotionSystem.h
rename : dom/system/cocoa/nsAccelerometerSystem.h => dom/system/cocoa/nsDeviceMotionSystem.h
rename : dom/system/cocoa/nsAccelerometerSystem.mm => dom/system/cocoa/nsDeviceMotionSystem.mm
rename : dom/system/nsAccelerometer.cpp => dom/system/nsDeviceMotion.cpp
rename : dom/system/nsAccelerometer.h => dom/system/nsDeviceMotion.h
rename : dom/system/unix/nsAccelerometerSystem.cpp => dom/system/unix/nsDeviceMotionSystem.cpp
rename : dom/system/unix/nsAccelerometerSystem.h => dom/system/unix/nsDeviceMotionSystem.h
rename : dom/system/windows/nsAccelerometerSystem.cpp => dom/system/windows/nsDeviceMotionSystem.cpp
rename : dom/system/windows/nsAccelerometerSystem.h => dom/system/windows/nsDeviceMotionSystem.h
rename : xpcom/system/nsIAccelerometer.idl => xpcom/system/nsIDeviceMotion.idl
2011-06-19 22:36:17 -07:00
Brian Birtles
1ffb9cb392 Bug 663288 - Don't allow instance times to be self-dependent, r=dholbert 2011-06-22 10:12:35 +09:00
Cameron McCormack
1b56814d74 Bug 642175 - Part 3: Make existing plugin crash mochitests clean up after themselves. r=ted 2011-06-21 12:12:15 +12:00
Matheus Kerschbaum ext:(%2C%20L.%20David%20Baron%20%3Cdbaron%40dbaron.org%3E)
6469811981 Bug 664924 - Remove MOZ_CSS_ANIMATIONS ifdefs. r=dbaron 2011-06-20 16:47:09 -07:00
Boris Zbarsky
84f53e7260 Merge mozilla-central into mozilla-inbound 2011-06-21 17:05:11 -04:00
Boris Zbarsky
75eae9e4e4 Bug 548734. Get rid of the footgun ui.use_native_popup_windows preference. r=roc,khuey 2011-06-21 17:00:47 -04:00
Joel Maher
a62442faec Bug 663853 - move layout/xul/test/*.xul to mochitest-chrome. r=mats, a=test-only 2011-06-19 11:56:44 -04:00
Jan Varga
6976400f8a Bug 617528 Part 1 - Dispatch shift right click (contextmenu event) only to chrome. r=smaug 2011-06-19 11:23:12 +02:00
Marco Bonardo
a77ba384e4 Merge Places and mozilla-central 2011-06-18 13:09:31 +02:00
Olli Pettay
ea204bc06a Bug 664430 - Make sure PopupManager doesn't keep objects alive after xpcom-shutdown, r=enndeakin
--HG--
extra : rebase_source : 137f6507926c47686d9542f97b6d518599e5ed0f
2011-06-18 12:11:36 +03:00
Jonas Sicking
c7de44475c Bug 663768 Part 2: Remove syncload XPCOM service. r=jst 2011-06-17 20:05:41 -07:00
Mounir Lamouri
38dbd10996 Merging mozilla-central with mozilla-inbound. 2011-06-17 15:26:17 +02:00
Dão Gottwald
a3d8b786ca Bug 654411 - Use text color at 50% opacity instead of graytext to de-emphasize text in the location bar. r=roc ui-r=faaborg 2011-06-17 08:07:03 +02:00
Robert O'Callahan
89ef55940b Bug 660682. Let anonymous blocks in IB splits inherit opacity from their first inline, so that 'opacity' applies to the contents of a split inline. r=bz 2011-06-17 15:36:07 +12:00
Olli Pettay
4cf87abbdd Bug 664434 - Make sure to Destroy the old document when setting a new print document, r=roc
--HG--
extra : rebase_source : b75688d5320d9dcaf59468bd5def2fa7f2e0bbc0
2011-06-16 21:20:13 +03:00
Marco Bonardo
81d8214139 Merge Places and mozilla-central 2011-06-18 11:24:57 +02:00
Jonathan Watt
7180e71d16 Bug 664130 - Document what GetFrameBoundsForTransform is about. r=roc. 2011-06-16 12:06:05 +01:00
Jonathan Watt
ca1a7d021c Bug 664130 - Document what GetOpaqueRegion is useful for. r=roc. 2011-06-16 12:06:05 +01:00
Jonathan Watt
97132dbab9 Bug 664130 - const-ify some SVG element class methods. r=dholbert. 2011-06-16 11:53:13 +01:00
Jonathan Watt
eb919c62a6 Bug 664130 - Document what GetFrameBoundsForTransform is about. r=roc.
--HG--
extra : rebase_source : dd1843b385b0976bd318dff6cc7c59ef15970f32
2011-06-16 12:06:05 +01:00
Jonathan Watt
5ca642d50a Bug 664130 - Document what GetOpaqueRegion is useful for. r=roc.
--HG--
extra : rebase_source : abde1fd28975506a58068725e5cbb660620760f8
2011-06-16 12:06:05 +01:00
Jonathan Watt
cea21c4f74 Bug 664130 - const-ify some SVG element class methods. r=dholbert.
--HG--
extra : rebase_source : e3efcfa1b14b36a5b7f1baefde3fbffb471c6b37
2011-06-16 11:53:13 +01:00
Jonathan Kew
69e6166360 bug 467669 - pt 7 - tests for the font-face inspection API. r=roc 2011-06-16 07:31:38 +01:00
Jonathan Kew
f9cb8da613 bug 467669 - pt 6 - provide the real font name rather than our internal identifier. r=roc 2011-06-16 07:31:37 +01:00
Jonathan Kew
a7411a0c9d bug 467669 - pt 5 - expose WOFF metadata (if present) for downloaded fonts. r=roc 2011-06-16 07:31:37 +01:00
Jonathan Kew
b0ae7172d2 bug 467669 - pt 4 - expose additional attributes for downloaded fonts. r=roc 2011-06-16 07:31:37 +01:00
Jonathan Kew
0bc82a4ba2 bug 467669 - pt 3 - track which stage of font matching led to selection of a particular face. r=roc 2011-06-16 07:31:37 +01:00
Jonathan Kew
a1f20e4fc8 bug 467669 - pt 2 - find the @font-face rule (if any) responsible for the font entry. r=roc 2011-06-16 07:31:36 +01:00
Jonathan Kew
57533f6cff bug 467669 - pt 1 - get list of fonts actually used to render a document range. r=roc sr=bzbarsky 2011-06-16 07:31:36 +01:00
Ehsan Akhgari
480581876e Merge backout 2011-06-15 16:52:58 -04:00
Ehsan Akhgari
13d84f740f Backout bug 467669 and bug 660088 2011-06-15 16:52:48 -04:00
L. David Baron
cf9bffc899 Make assertion about timestamps in nsAnimationManager::GetAnimationRule non-fatal (bug 652976). r=bzbarsky 2011-06-15 12:33:36 -07:00
Jonathan Kew
8cc6bbfd24 bug 467669 - pt 7 - tests for the font-face inspection API. r=roc
--HG--
extra : rebase_source : e3ba2eb2bbe46b451cb490e6025233afee0df209
2011-06-15 20:17:54 +01:00
Jonathan Kew
be3ae9b1a0 bug 467669 - pt 6 - provide the real font name rather than our internal identifier. r=roc
--HG--
extra : rebase_source : d548ab2be329058bde101b142607abf14dce7191
2011-06-15 20:17:54 +01:00
Jonathan Kew
ba1202c246 bug 467669 - pt 5 - expose WOFF metadata (if present) for downloaded fonts. r=roc
--HG--
extra : rebase_source : 91e7f231b281e1949997996d7308aceb4935247b
2011-06-15 20:17:52 +01:00
Jonathan Kew
d5411cefc7 bug 467669 - pt 4 - expose additional attributes for downloaded fonts. r=roc
--HG--
extra : rebase_source : f3d41348ab01a21ac6b6a1713b1e5e7274cf7fbf
2011-06-15 20:17:52 +01:00
Jonathan Kew
eacb2d87b0 bug 467669 - pt 3 - track which stage of font matching led to selection of a particular face. r=roc
--HG--
extra : rebase_source : 89e65a1d612dcee7872a18a5e4bb9b3591c3a63d
2011-06-15 20:17:51 +01:00
Jonathan Kew
15913e950c bug 467669 - pt 2 - find the @font-face rule (if any) responsible for the font entry. r=roc
--HG--
extra : rebase_source : 97bab01d80e49e179e8f675ca1ec1e067d7b56ec
2011-06-15 20:17:51 +01:00
Jonathan Kew
e4e073884b bug 467669 - pt 1 - get list of fonts actually used to render a document range. r=roc sr=bzbarsky
--HG--
extra : rebase_source : 3d7699c4a201bafdfa1d97ba97117a497303c1b5
2011-06-15 20:17:50 +01:00
Matt Brubeck
6a416ce1d6 Merge last green mozilla-inbound changeset to mozilla-central 2011-06-15 08:25:48 -07:00
Simon Montagu
89980a75a5 Don't overshoot the last sibling when iterating frames. Bug 663295 (whitespace change with correct bug number) 2011-06-15 10:51:36 +03:00
Simon Montagu
6ed0b74316 Force newlines only at 0xa, not 0xd. Bug 663662, r=roc 2011-06-15 10:45:57 +03:00
Simon Montagu
47b3950db7 Include continuations of frames with no newline. Bug 582181, r=roc 2011-06-15 10:45:57 +03:00
Simon Montagu
a72fe31c09 Tests for bug 582181, r=roc 2011-06-15 10:45:57 +03:00
Simon Montagu
f54e10d007 Don't overshoot the last sibling when iterating frames. Bug 66329, r=roc 2011-06-15 10:45:57 +03:00
Benjamin Stover
608b301129 Bug 656041 Some parts of page scroll at different rates in Fennec r=roc 2011-06-14 09:20:29 -07:00
Jonas Sicking
e82dadd3d8 Bug 659539 Part 1: Give nsINodeInfos a nodeType, nodeName and localName. r=bz 2011-06-14 00:56:49 -07:00
Jonas Sicking
cc4977777e Bug 659053 Part 1: Merge nsIDOM3Node into nsIDOMNode. Also removes Node.getFeature. r=peterv 2011-06-14 00:56:48 -07:00
Ms2ger
781c069c78 Merge backout 2011-06-14 16:30:03 +02:00
Ms2ger
c665a4e4c0 Bug 664123 - Backout bugs 659053 and 659539 (changesets 9c49f69d8bab-1b11c64ffcdf) 2011-06-14 16:25:51 +02:00
Jonathan Watt
13ff11a8fa Bug 663371 - Make runreftests.py default to appending reftest.list to the test path when only a test directory is specified. r=ted. 2011-06-14 13:56:13 +01:00
Jonas Sicking
5f95458332 Bug 659539 Part 1: Give nsINodeInfos a nodeType, nodeName and localName. r=bz 2011-06-14 00:56:49 -07:00
Jonas Sicking
17ec46a39a Bug 659053 Part 1: Merge nsIDOM3Node into nsIDOMNode. Also removes Node.getFeature. r=peterv 2011-06-14 00:56:48 -07:00
Daniel Holbert
9725867292 Bug 654858: Fix float-to-nscoord rounding issue in SVG intrinsic ratio, with certain GCC versions & optimizations. r=roc 2011-06-13 14:48:50 -07:00
Matt Brubeck
830f102cc9 Bug 663959 - Mark crashtests as asserting intermittently [r=ehsan] 2011-06-13 14:24:04 -07:00
Ted Mielczarek
a88f0715f0 merge m-c and b-s 2011-06-13 09:09:43 -04:00
Philipp von Weitershausen
5e6eaf23f9 Merge mozilla-inbound and mozilla-central 2011-06-13 11:57:17 +02:00
Robert O'Callahan
a3ffca93f4 Bug 662898. Test 2011-06-13 13:42:48 +12:00
Ed Morley
223c46b36b Bug 659621 - Remove EXTRA_DSO_LIBS, EXTRA_DSO_LDOPTS, OS_LIBS from makefiles containing LIBXUL_LIBRARY = 1, now that libxul is always built; r=ted 2011-06-12 03:49:00 -04:00
Masayuki Nakano
f96e0ef619 Bug 663041 layout should use mozilla::Preferences r=roc 2011-06-12 11:30:16 +09:00
Randell Jesup
98b0626e03 Bug 505108: Don't leak strings on early returns from Area::ParseCoords(), fix how CString is freed. r=roc 2011-06-11 16:40:39 -04:00
Ms2ger
a2b407958f Bug 660433 - Remove nsIDOMNSHTMLTextAreaElement; f=volkmar r=peterv 2011-06-11 09:52:24 +02:00
Steven Michaud
efe681f006 Bug 661636 - [10.7 SDK] QuickDraw APIs undefined when doing 32-bit builds using the OS X 10.7 SDK. r=bgirard 2011-06-11 09:12:58 +02:00