Commit Graph

8171 Commits

Author SHA1 Message Date
Oleg Romashin
6f6b0b1b72 Bug 681192. Part 1: Add "allowed scroll destination range" to nsIScrollableFrame::ScrollTo and nsGfxScrollFrame implementation. r=roc,matspal
--HG--
extra : rebase_source : 51d04f7e7db35c02de3401a3481d4cc3827c19ec
2012-02-07 16:53:18 -08:00
Ehsan Akhgari
8b7988e945 Bug 612128 - Prevent the editor from modifying nodes which are not under an editing host; r=roc,bzbarsky
This patch ensures that the NODE_IS_EDITABLE flag is only set on nodes living
under an editing host.  Things like text controls which used to have that flag
previously will not have it any more.  The flag would be set on their anonymous
div node instead.  Note that if text controls actually fall under an editing
host, they will get the NODE_IS_EDITABLE flag.

This patch also makes nsHTMLEditor::IsEditable return sane results (text nodes
are always considered to be editable).
2010-11-16 15:45:49 -05:00
Ed Morley
3007ba8913 Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2012-05-09 10:15:40 +01:00
Joe Drew
adeb871cdd Back out changeset 501d38d3892c (Bug 733553) for causing crashes in xpcshell tests. 2012-05-08 21:59:30 -04:00
Adam Dane [:hobophobe]
f72c3770d4 Bug 733553 - Allow multipart image streams to cope with stream changes. r=joe
--HG--
extra : rebase_source : 21ebc85f26fcbc4a4a27387d1ec5007c0886c386
2012-05-08 16:19:01 -05:00
Timothy Nikkel
930853f2df Bug 749425. Push the scroll frame clip inside the scroll layer so it gets transformed by the shadow transform. r=roc 2012-05-08 23:15:00 -04:00
Jeff Muizelaar
7644fad8f2 Bug 753058. Add SAMPLE_LABELS for shadows. r=ehsan
This will make this things more obvious on the profile.
2012-05-08 18:10:02 -04:00
Makoto Kato
e70f17856c Bug 249159 - Part 2 Implement CSS3 Text word-break property. r=dbaron, smontagu 2012-05-07 12:18:23 -07:00
L. David Baron
a1cd81752c Add missing GetFirstInFlow() call that was causing a crash in ComputeDescendantWidth when printing with font inflation enabled (or a debug build). (Bug 751797) r=roc
--HG--
extra : transplant_source : %ED%23%02%AFR%24tw%FE%96%D7%D3p%D8%87%F7gV%28L
2012-05-07 07:17:00 +02:00
Jonathan Kew
d3946f0d23 bug 752176 - only read the style array for valid offsets within the textrun. r=smontagu 2012-05-06 15:55:12 +01:00
L. David Baron
bebbcf9bbd Make effect of form controls on font size inflation text threshold not depend on user changes to their value. (Bug 747857) r=roc
--HG--
extra : transplant_source : %82%DCX%81%B2%AAM%A3%A1%A1-%87%10%B3%B6%10kw%F4%FB
2012-05-05 15:24:45 +02:00
Ms2ger
0f52915bb5 Bug 716439 - Followup: remove unused variable 'sf'; r=roc 2012-05-05 11:00:06 +02:00
Scott Johnson
386740b5cf Bug 749186: Make the root frame always be an inflation container to prevent a crash during font inflation. [r=dbaron] 2012-05-04 12:08:23 -05:00
Scott Johnson
38884c343b Bug 746966: Conditionally set NS_FRAME_IN_CONSTRAINED_HEIGHT for font inflation on percentage-based height so fonts with room to inflate can do so. [r=dbaron] 2012-05-04 12:07:37 -05:00
Ed Morley
748e96fc18 Backout f8125b89352d (bug 747857) for frequent test failures 2012-05-04 15:24:42 +01:00
L. David Baron
066e072629 Add missing GetFirstInFlow() call that was causing a crash in ComputeDescendantWidth when printing with font inflation enabled (or a debug build). (Bug 751797) r=roc
--HG--
extra : transplant_source : %B5%FE%E5%DFaH%06%0F%3B%26%C0%E2%8B%3E4%F37%BFi-
2012-05-03 22:55:33 -04:00
L. David Baron
2d4692f3e0 Make effect of form controls on font size inflation text threshold not depend on user changes to their value. (Bug 747857) r=roc
--HG--
extra : transplant_source : %1F%7B%3Fk%A6%F1%2C%EAZ%920%FB%FD%FB%3D%8E%9C%C9y%19
2012-05-03 20:04:30 -04:00
Mats Palmgren
84561c7f26 Bug 750745 - Allocate nsLineBoxes from their own presshell arena list. part=3/3 r=roc 2012-05-04 02:14:02 +02:00
Mats Palmgren
0f5b4c9982 Bug 750745 - Introduce AllocateByObjectID/FreeByObjectID for allocating non-frame objects from per-type lists in the PresArena. part=2/3 r=roc 2012-05-04 02:14:02 +02:00
Mats Palmgren
fbfd445216 Bug 735641 - No way to deselect image of image document after select all (Ctrl+A). r=bz 2012-05-04 02:14:01 +02:00
Mats Palmgren
dbd1fc0851 Bug 747688. r=roc 2012-05-04 02:14:01 +02:00
Mats Palmgren
6e43b822bd Bug 750066. r=roc 2012-05-04 02:14:01 +02:00
Mats Palmgren
fb481c3dad Bug 748961 - Flush styles to ensure frames are created. r=smaug,Ms2ger 2012-05-04 02:14:01 +02:00
Andreas Gal
7db0b87ef1 Do image scaling on the GPU (bug 650988, r=roc,cjones). 2012-05-03 07:05:55 -07:00
Ed Morley
46622a4bc4 Merge mozilla-central to mozilla-inbound 2012-05-03 20:13:41 +01:00
Ali Juma
84e253b4d4 Bug 748048 - Part 1: Remove SetInvalidationDimensions and GetInvalidationDimensions. r=roc 2012-05-03 12:33:51 -04:00
Jared Wein
4a14801895 Bug 702463 - Increasing the timeout of the tests due to the presence of multiple refresh drivers. r=ehsan 2012-04-30 13:44:55 -04:00
Avi Halachmi
f87d6740b5 Bug 702463 - Smooth scrolling should use refresh observer instead of a timer. r=roc 2012-03-31 16:08:00 +03:00
Masatoshi Kimura
473d12ee2a Bug 745498 - Add testcases for DOM4 exception types. r=sicking 2012-04-26 09:42:26 -07:00
Jonathan Kew
738ec7908f bug 307039 - implement Greek-specific uppercasing for text-transform & small-caps. r=past 2012-05-03 08:57:18 +01:00
Nicholas Cameron
15952fc068 Bug 716439; remove a check for rounded rects to enable the use of mask layers. r=roc 2012-02-08 11:26:46 +13:00
Aryeh Gregor
7e70350cb8 Bug 702948 - Make Range.detach() a no-op; r=smaug 2012-04-25 15:03:48 +03:00
Masayuki Nakano
5c0d118456 Bug 630811 part.2 Replace nsInputEvent::isShift, nsInputEvent::isControl, nsInputEvent::isAlt and nsInputEvent::isMeta r=smaug 2012-04-25 12:00:02 +09:00
Timothy Nikkel
bf94b3bb93 Bug 732016 Allow override of the scroll port size used for clamping scroll positions. r=roc 2012-04-24 13:52:35 -05:00
Jonathan Kew
7cba3e9c76 bug 744357 - implement mappings from Unicode's SpecialCasing.txt for text-transform. r=smontagu 2012-04-24 18:53:39 +01:00
Robert O'Callahan
1c1601b380 Bug 749075. Part 1: Refactor the nsDisplayItem API for testing whether the item needs to be rendered to a transparent surface. r=mattwoodrow
Currently we return an extra out parameter on GetOpaqueRegion. This is ugly and it's also going to be inefficient
because in a followup patch I'm going to avoid calls to GetOpaqueRegion, but we still need to know whether the item
needs a transparent surface. So this patch removes that out parameter. Instead, we rely on the fact that only
Windows' glass-window-background display item needs to force a transparent surface, and there can only be one
of those per window. So we store a reference to it in the nsDisplayListBuilder if there is one, and then we can
efficiently tell if any leaf display item is the one that forces a transparent surface. For display items that
wrap a list, we continue to store whether they need to force a transparent surface in a boolean in the list.
2012-05-03 16:29:05 +12:00
Jeff Muizelaar
aca6f7c82d Bug 745864. Add SAMPLE_LABELs to layout code. r=roc, a=joe
--HG--
extra : rebase_source : d826780c34692d333442b6bf563791b53bf3aa3d
2012-04-16 14:37:59 -04:00
Joe Drew
04af952550 Backout 492d12fa8b65 (bug 732016) for regressions. a=regression
--HG--
extra : rebase_source : cda0401baa2c3e5f6192f76c1cd25eca8187a9a0
2012-04-23 11:13:33 -07:00
Timothy Nikkel
129d597bb7 Bug 732016 Allow override of the scroll port size used for clamping scroll positions. r=roc 2012-04-19 20:54:54 -05:00
Robert O'Callahan
23f723d5cc Bug 745934. Update bounds of nsDisplayOpacity after we've mutated its list. r=mattwoodrow,a=blocking-fennec 2012-04-19 14:40:43 +12:00
Ehsan Akhgari
483c294149 Backout changeset 0b25ccd32a49 (bug 745934) for reftest failures; a=bustage 2012-04-18 23:52:59 -04:00
Robert O'Callahan
ddeb57aca1 Bug 745934. Update bounds of nsDisplayOpacity after we've mutated its list. r=mattwoodrow,a=blocking-fennec 2012-04-19 14:40:43 +12:00
Robert O'Callahan
8a8de768a2 Bug 735898. Part 7: Remove expensive nsIFrame::HasBorder checks, just check style instead. r=dbaron,a=blocking-fennec 2012-04-18 17:14:31 +12:00
Robert O'Callahan
df01b1f9dc Bug 735898. Part 6: Avoid nsIFrame::GetOffsetTo calls by caching a frame/offset pair in nsDisplayListBuilder, using the cache from nsDisplayListBuilder::ToReferenceFrame, and having BuildDisplayListForChild efficiently update the cached frame from parent to child when possible. Also, use display items' precalculated ToReferenceFrame() instead of calling nsDisplayListBuilder::ToReferenceFrame where possible. r=mattwoodrow,a=blocking-fennec 2012-04-18 17:14:14 +12:00
Wes Johnston
d71e3a7466 Bug 745936 - Display port should not override dirtyRect during hit detection r=roc 2012-04-17 08:08:29 -04:00
L. David Baron
1f0b12c8b8 Build font data structure by walking the necessary text. (Bug 706193, patch 3) r=roc
Compute the amount of text in the scope of an nsFontInflationData
object.  This walks the text that's inside of the block formatting
context at which this object is rooted, excluding the text that's inside
any nested BFC.  Using the amount of text, the font sizes of the text,
and the line threshold preference, we compute whether to enable font
size inflation within that block formatting context.
2012-04-16 15:32:12 -07:00
L. David Baron
90733eea84 Add a font inflation data structure per block formatting context. (Bug 706193, patch 2) r=roc
This structure is per block formatting context because we have to make a
single inflation decision for things like consecutive runs of paragraphs
of text.  Inflating some paragraphs and not others (within the same
sequence of adjacent paragraphs) based on the amount of text in each one
would be disastrous.  Otherwise it's ideal for the units to be as small
as possible as long as they merge such sequences; therefore this uses a
definition corresponding to CSS's idea of elements that establish new
block formatting contexts.
2012-04-16 15:32:12 -07:00
Robert O'Callahan
830c777ab4 Bug 735898. Part 5: Simple tweaks to avoid wrapping empty lists and to reorder boolean tests. r=mattwoodrow 2012-04-16 17:43:47 +12:00
Robert O'Callahan
8086b9a611 Bug 735898. Part 4: Create Inner/Outer box-shadow items only if we actually have inset/outset shadows. r=mattwoodrow 2012-04-16 17:43:33 +12:00
Jonathan Kew
75f604552e bug 740120 - implement context-sensitive mapping for Greek sigma in text-transform:lowercase. r=smontagu 2012-04-15 15:52:47 +01:00
Jonathan Kew
a3eed72b65 bug 745454 - don't lose line-break flag when merging case-transformed characters in text run. r=smontagu 2012-04-15 15:52:47 +01:00
Mats Palmgren
f4490cde11 Bug 740743 - Implement CSS overflow for <legend>. r=bz 2012-04-13 17:52:13 +02:00
Robert O'Callahan
bf5a330929 Bug 735898. Part 3: In DisplayBorderBackgroundOutline, when we have created an nsDisplayBackground item and it's themed, don't bother checking to create an nsDisplayBorder item. r=mattwoodrow
It turns out that calling HasBorder() is especially expensive for themed frames since we call into the theme engine to compute the border, so avoiding it is a nice win.
2012-04-13 23:44:06 +12:00
Mark Capella
bb0cb90d39 Bug 740688 - Use uintptr_t instead of PRUword, and intptr_t instead of PRWord. r=jwalden
--HG--
extra : rebase_source : 648a581323d2c2893df780f71fe34dadcc4bbaab
2012-04-11 17:17:44 -07:00
Robert O'Callahan
4e3da44c46 Backing out changesets ef599d7f3f11, 70ef464f50e3 and 1a204c38918e (bug 735898) due to test failures. 2012-04-12 00:34:23 +12:00
Robert O'Callahan
5e8bcd0f82 Bug 735898. Part 3: In DisplayBorderBackgroundOutline, when we have created an nsDisplayBackground item and it's themed, don't bother checking to create an nsDisplayBorder item. r=mattwoodrow
It turns out that calling HasBorder() is especially expensive for themed frames since we call into the theme engine to compute the border, so avoiding it is a nice win.
2012-04-11 16:49:34 +12:00
Robert O'Callahan
b4cf0ae077 Bug 735898. Part 2: When nsOverflowClipWrapper is asked to clip a display item that is entirely inside the clip rect, don't bother wrapping the item. r=mattwoodrow 2012-04-11 16:48:56 +12:00
Robert O'Callahan
7c34e38876 Bug 733607. Restructure logic to compute snapped bounds of display items in layer coordinates. Moves responsibility for computing snapped bounds from within the display items to callers of GetBounds/GetOpaqueRegion. r=tnikkel
Previously we snapped the results of nsDisplayItem::GetBounds and
nsDisplayItem::GetOpaqueRegion internally. By tracking which display items were
inside transforms, we disabled snapping quite conservatively whenever an ancestor
had a transform, which is undesirable.

With this patch, we don't snap inside GetBounds or GetOpaqueRegion, but just return
a boolean flag indicating whether the item will draw with snapping or not. This flag
is conservative so that "true" means we will snap (if the graphics context has a transform
that allows snapping), but "false" means we might or might not snap (so it's always safe
to return false).

FrameLayerBuilder takes over responsibility for snapping item bounds. When it converts
display item bounds to layer pixel coordinates, it checks the snap flag returned from
the display item and checks whether the transform when we draw into the layer will be
a known scale (the ContainerParameters scale factors) plus integer translation. If both
are true, we snap the item bounds when converting to layer pixel coordinates. With
this approach, we can snap item bounds even when the items have ancestors with active
transforms.
2012-04-10 23:24:18 +12:00
Steven Michaud
0ed44bc095 Bug 730066 - Crash at mozilla::layers::ImageContainer::GetCurrentSize on printing http://www.mozilla.org/projects/firefox/prerelease.html. r=roc 2012-04-09 14:17:19 -05:00
Wes Johnston
206d8691e9 Backed out changeset f5d6cc2e4726 2012-04-09 10:44:32 -07:00
Wes Johnston
eea4dccc79 Bug 740218 - Support transactions in sqlitebridge and use them. r=gcp,rnewman,lucasr 2012-04-09 10:08:37 -07:00
Kyle Huey
5e3fddb58d Back out Bug 679230 due to Android reftest failures. 2012-04-07 10:36:49 -07:00
Kyle Huey
dd495263dd Bug 697230: Part 1 - Centralize style image observers. r=bz 2012-04-07 08:58:41 -07:00
Mats Palmgren
7c71c27f9d Bug 724352 - Decrement assertion counts for some layout crashtests. r=roc 2012-04-05 16:30:21 +02:00
Mats Palmgren
c101f77175 Bug 724352 - Don't add vertical margin to scrollable overflow here, it's already done during reflow and we don't need it for UpdateOverflow yet (and we need to account for margin-collapsing when we do). r=roc 2012-04-05 16:30:21 +02:00
Nicholas Nethercote
6ca9f23930 Bug 711895 - Tweak the warning options used for GCC builds (3rd attempt). r=waldo,derf,khuey,mhommey.
--HG--
extra : rebase_source : 20540c9b838ee3be6cb0847c1b90fdc3bd44059d
2012-03-21 22:21:16 -07:00
Jared Wein
35ffddb085 Backed out changeset 3b8a666e351e (bug 702463) 2012-04-03 16:50:25 -07:00
Avi Halachmi (:avih)
81c2476edd Bug 702463: Smooth scroll - Use refresh observer instead of a timer. r=roc 2012-03-31 16:08:00 +03:00
Jared Wein
53e5c5ecbe Backed out changeset 4e515b6a5a41 (bug 702463) 2012-04-03 16:22:49 -07:00
Avi Halachmi (:avih)
644cee4dde Bug 702463: Part 1 v8 - Smooth scroll - Use refresh observer instead of a timer 2012-03-31 16:08:00 +03:00
Ms2ger
bfc7667f02 Bug 741048: Remove gfxAtoms. r=roc 2012-03-30 23:08:46 -07:00
Dave Townsend
dfa7430e83 Backing out changeset 432c4be058b5 which landed with no bug. 2012-03-30 22:23:24 -07:00
Jonathan Kew
8312896bc4 bug 740477 - handle Dutch-specific capitalization of the ij digraph. r=smontagu 2012-03-30 17:37:46 -07:00
Ehsan Akhgari
47c2f5bb15 Bug 740857 - Remove dead code from nsFrame::BoxReflow; r=dbaron 2012-03-30 10:27:51 -07:00
Ms2ger
4827357dcf No bug - Remove gfxAtoms; r=roc 2012-03-29 23:08:43 +02:00
Avi Halachmi (:avih)
aafc4d0157 Bug 737758: part 3: Cleanups and semantic consistency [r=roc] 2012-03-26 11:53:45 +02:00
Avi Halachmi (:avih)
5d73a5eeb8 Bug 737758: part 1: Propagate mouse wheel event origin from ESM [r=roc] 2012-03-26 11:50:30 +02:00
Jonathan Kew
150f83cec7 bug 231162 - support custom casing behavior for Turkish and similar writing systems. r=smontagu 2012-03-27 08:49:03 -07:00
Scott Johnson
d8e24f230b Bug 708187: Disable caching of font inflation inside of BuildTextRunsScanner to prevent bleeding of bad values. [r=dbaron] 2012-03-26 22:37:16 -07:00
Scott Johnson
52b46b2c2c Bug 733640: Add crashtest for bug 718516. [r=ehsan]
--HG--
extra : rebase_source : 45e73bc4a7e36da12630c368040b152b83005664
2012-03-26 12:43:22 -07:00
Daniel Holbert
5b36b1e0f9 backing out 56664e0e2f2 (bug 718516) due to wrong commit message 2012-03-26 11:35:16 -07:00
Matt Woodrow
a8e6a51c3c Bug 729955 - Invalidate destroyed out-of-flow frames before unregistering the placeholder frame. r=bz 2012-03-26 11:27:37 -07:00
Scott Johnson
d479d3ab15 Bug 718516: Remove call to FinishReflowWithAbsoluteFrames until nsColumnSetFrame is fully implemented as an absolute container. [r=ehsan] 2012-03-26 10:29:59 -07:00
Ehsan Akhgari
4ec820fdcb Bug 726592 - Uninitialised value use in nsTextFrame::GetChildFrameContainingOffset; r=roc
--HG--
extra : rebase_source : 3e5d2fafc028edb2940bef07302161670692d5a1
2012-03-26 09:09:38 -07:00
Ehren Metcalfe
23b7cab793 Bug 738957 - Remove the nsMathMLForeignFrameWrapper class and related files. r=karlt 2012-03-26 09:59:54 +02:00
Henri Sivonen
88c3e0947f Bug 738572 - #include nsIHTMLContentSink.h in fewer places. r=bzbarsky. 2012-03-23 17:21:44 +02:00
Scott Johnson
c58b7f713b Bug 711418 - Enable font inflation for body and html elements with fixed heights. [r=dbaron] 2012-03-23 22:47:43 -05:00
Edwin Flores
444323eb38 Bug 738392 - Fix plugins not rendering inside CSS transform on Mac OSX r=roc 2012-03-23 11:21:57 -07:00
Daniel Holbert
bed9c46483 Bug 738705: Remove dead helper-class CompareByContentOrderComparator. r=bz 2012-03-23 11:17:33 -07:00
Jonathan Kew
10ed2c363d bug 736210 - fix bug in nsCaseTransformTextRunFactory surrogate handling. r=smontagu 2012-03-23 17:48:11 +00:00
Nicholas Nethercote
1dae898653 merge 2012-03-21 21:48:40 -07:00
Nicholas Nethercote
7ac3a573ad Backed out changeset 0124795a8cbb (bug 711895) due to i10n build bustage. r=me. 2012-03-21 21:46:27 -07:00
Robert O'Callahan
6c9f0480a1 Bug 737784. Create mInnerView eagerly to ensure that its bounds will always be correctly set in Reflow. r=tnikkel 2012-03-22 16:15:19 +13:00
Nicholas Nethercote
e2181e8fb2 Bug 711895 - Tweak the warning options used for GCC builds (2nd attempt). r=waldo,derf,khuey,mhommey,jwatt. 2012-03-15 19:40:00 -07:00
Aryeh Gregor
973b7ff046 Bug 668716 - Change test_bug632379.xul failure on Mac to a todo(); r=orange 2012-03-21 15:41:35 -04:00
Aryeh Gregor
18007ca69a Bug 735805 part 1 - Fix DOM and layout mochitests that run no tests; r=bz 2012-03-16 16:07:09 -04:00
Daniel Holbert
21f77f436b Bug 737313: Make nsCSSFrameConstructor::ConstructInline more robust when one of its child frames fails to construct. r=bz 2012-03-20 10:23:03 -07:00
Jonathan Watt
c4e6b7547e Bug 736890 - Speed up building of layout/svg/base/src by cleaning up #include directives in its header files. r=dholbert. 2012-03-20 12:15:55 +00:00
Adam Dane [:hobophobe]
a4e77c0d40 Bug 720126 - Update scroll API to use ScrollAxis parameters (where and when). r=roc 2012-03-19 21:09:50 -05:00
Simon Montagu
5a201aafa0 Add a mParagraphDepth member to BidiParagraphData and cache it on frames to track nested bidi-isolated paragraphs. Use mParagraphDepth (* 2 + isRTL in order to keep LTR even and RTL odd) as the initial paragraph embedding level instead of pushing a stack of embedding codes. Pass the <bdi> frame instead of its first-child to BidiParagraphData::Reset and save a call to GetParent(). Split inline ancestors before and after bidi-isolated paragraphs, in the same way that we currently do between runs in different directions. This required also adding code to SplitInlineAncestors to handle situations where the parent frame is being split before its first child or after its last child. In JoinInlineAncestors, prevent frames that belong to paragraphs isolated from one another from being rejoined. Bug 712600, r=ehsan, roc 2012-01-11 21:26:02 +02:00