Commit Graph

651 Commits

Author SHA1 Message Date
Robert O'Callahan
cfa4fb4af5 Bug 702739. When a element has an active transform and the element's content (before being transformed) is no larger than the window, prerender its entire contents into layers when any of it is visible, so we don't have to rerender it and/or resize its layers as it moves into or out of view. r=mats 2011-12-18 21:46:44 +13:00
Matthew Schranz
91b4e4faac Bug 334573 - Renamed all references of nsPLDOMEvent to nsAsyncDOMEvent. r=sicking
--HG--
rename : content/events/public/nsPLDOMEvent.h => content/events/public/nsAsyncDOMEvent.h
rename : content/events/src/nsPLDOMEvent.cpp => content/events/src/nsAsyncDOMEvent.cpp
2011-12-17 01:02:05 -05:00
Robert O'Callahan
854ef91454 Bug 699351. Add nsIFrameLoader::clipSubdocument API to allow XUL <iframe> and <browser> to not clip the subdocument. r=tnikkel,sr=bzbarsky 2011-12-06 01:38:46 +13:00
Brad Lassey
8d2f605b6d Bug 687972 - backing out changesets b17ab862bbc1 and a6db0c6c94a3 r=orange 2011-11-30 22:59:00 -05:00
Robert O'Callahan
a86c192475 Bug 699351. Add nsIFrameLoader::clipSubdocument API to allow XUL <iframe> and <browser> to not clip the subdocument. r=tnikkel,sr=bzbarsky 2011-11-30 21:14:26 -05:00
L. David Baron
b5db9e038b When font size inflation is enabled, horizontal resizes of blocks must cause a full dirty reflow. (Bug 627842, patch 5) r=bzbarsky
This change is sufficient because the places that set mHResize to true
other than InitResizeFlags and nsFrame::BoxReflow aren't a problem
because they're in table code whose goal is to force the reflow to
propagate down to the cell, and once we reach the cell we'll hit the
code we've added here.
2011-11-23 18:48:23 -08:00
L. David Baron
51ec63eaad When reflowing a frame (such as text controls) that jumps from HTML layout into XUL layout and then jumps back to HTML on the child frame, link the parent reflow state chain correctly. (Bug 627842, patch 3) r=roc 2011-11-23 18:48:23 -08:00
Neil Deakin
e40bc148fb Bug 703260, part 1, remove view from eventstatemanager and presshell event handling, r=smaug,sr=roc 2011-11-21 12:53:20 -05:00
Matt Woodrow
3c6be362f5 Bug 701656 - Make WrapPreserve3DList capable of walking through child display items for the same frame. r=roc 2011-11-17 16:45:41 +13:00
Matt Woodrow
e443e6f703 Bug 702375 - Include the current frame bounds in preserve-3d overflow calculations. r=roc 2011-11-17 16:45:39 +13:00
Phil Ringnalda
fb732c5149 Backout changesets c9abc8ef4626, d62512892555, 69f89ee5d08f, c511af7d8f58, 6a6a560a1492, ac0ec1183d19, 46669afabd15, 74f32abaa8c0, f197554cf989, 0a2405eb5b90, b48954598d7d, e0a82577259c, 0235d1541e58, 450f2557d3a2, e24d196602bf, 03c2ea0eeba3, 7aca4ef8e538, 11ec362e780b, 4b92a3b96446 (bug 627842) for Windows crashtest assertions and Android reftest failures
--HG--
extra : rebase_source : fc8946055314369bfba5038ded32afcb00bf134d
2011-11-14 22:12:31 -08:00
L. David Baron
b93eea884b When font size inflation is enabled, horizontal resizes of blocks must cause a full dirty reflow. (Bug 627842, patch 5) r=bzbarsky
This change is sufficient because the places that set mHResize to true
other than InitResizeFlags and nsFrame::BoxReflow aren't a problem
because they're in table code whose goal is to force the reflow to
propagate down to the cell, and once we reach the cell we'll hit the
code we've added here.
2011-11-15 17:02:00 +13:00
L. David Baron
430f422bc5 When reflowing a frame (such as text controls) that jumps from HTML layout into XUL layout and then jumps back to HTML on the child frame, link the parent reflow state chain correctly. (Bug 627842, patch 3) r=roc 2011-11-15 17:02:00 +13:00
Robert O'Callahan
29ebbe758a Bug 696307. Floats in a different block to their placeholders should only be painted once. r=mats 2011-11-08 13:09:39 +13:00
Robert O'Callahan
60655dac4c Bug 696307. Don't overwrite the aChild parameter of BuildDisplayListForChild. r=mats 2011-11-08 13:09:39 +13:00
Timothy Nikkel
df8878f8ed Bug 658005. Part 4. Remove nsIFrame::AreAncestorViewsVisible now that it is unused. r=roc 2011-10-26 18:57:55 -05:00
Timothy Nikkel
09778341dc Bug 658005. Part 2. Add a frame visibility API that takes into account everything we need, and use it. r=roc 2011-10-26 18:57:55 -05:00
Matt Woodrow
b18a7f9176 Bug 695275 - Add CheckAndClearPaintedState to test painting. r=roc 2011-10-26 16:23:26 +13:00
Robert O'Callahan
866833ced3 Bug 696739. Treat inline fieldsets as pseudo-stacking-contexts. r=bz 2011-10-25 16:52:52 +13:00
Ehsan Akhgari
2a602a5685 Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Jeff Walden
b7753477cf Bug 693469 - Implement mozilla::ArrayLength and mozilla::ArrayEnd, and replace uses of NS_ARRAY_LENGTH whenever possible. (Exceptions: assigning to static initializers, use in static assertions, as template parameters, etc. These will go away when the relevant compilers have C++11 constexpr support.) r=cjones
--HG--
extra : rebase_source : b4bae9a0f85abf2feb828609b50e756916b99a6f
2011-10-10 22:50:08 -07:00
Matt Woodrow
d7e185cd24 Bug 691864 - Recompute preserve-3d children overflow areas after all needed sizes are available. r=roc 2011-10-15 09:43:38 +13:00
Jeff Walden
eb2cb918a4 Back out everything since 5435ee09cf7b. Tinderbox compilers hate me. r=epic-fail 2011-10-12 12:21:53 -07:00
Jeff Walden
77ebbde4ab Bug 639469 - Implement mozilla::ArrayLength and mozilla::ArrayEnd, and replace uses of NS_ARRAY_LENGTH whenever possible. r=cjones
--HG--
extra : rebase_source : 860a8271bf7e51cde358f2a4185c410de1fc2960
2011-10-10 22:50:08 -07:00
Matt Woodrow
3345b1be69 Bug 693519 - Don't call GetHitDepthAtPoint if we didn't hit anything. r=roc 2011-10-12 16:16:05 +13:00
Matt Woodrow
bae1be5757 Bug 684759 - Part 1 - Flatten out nsDisplayWrapLists when we are preserving 3d. r=roc 2011-10-07 10:21:44 +13:00
Ehsan Akhgari
b48411171f Bug 692109 - The intended crash in nsIFrame::GetOffsetToCrossDoc won't actually crash with some compilers; r=tn
--HG--
extra : rebase_source : 47ddd0eb634c25ff84a49ea9a0a856e0a3ffbec8
2011-10-05 19:55:02 -04:00
Ehsan Akhgari
4d7d5788b7 Bug 692105 - Useless null check in nsFrame::IsSelectable; r=roc
--HG--
extra : rebase_source : 645624b1738073fc6b4192c08af514ec517036ab
2011-10-05 19:49:15 -04:00
Matt Woodrow
97e680e837 Bug 691431 - Remove invalid assertion and NULL check childFrame in WrapPreserve3DList. r=roc 2011-10-04 14:23:04 +13:00
Ehsan Akhgari
fddd9ce5af Bug 656875 - Use the transformed dirty rectngle when building display list items for stacking context; r=roc
--HG--
extra : rebase_source : a98568046ab5e4b4382e380f0fd2d03be481edaa
2011-05-16 13:27:24 -04:00
Matt Woodrow
da4a9cda9a Bug 691106 - Merge sequential nsDisplayTransforms and give them unique frame keys. r=roc 2011-10-03 17:02:25 +13:00
Matt Woodrow
0b23a6bac7 Bug 689501 - Remove invalid assertion with 3d transforms. r=roc 2011-09-30 14:07:04 +13:00
Ehsan Akhgari
c15d8c0733 Bug 10209 - Part 6: Implement the CSS "containing block" concept correctly as a binary relation, as opposed to a unary relation; r=bzbarsky 2011-05-12 00:04:30 -04:00
Ehsan Akhgari
b273fc68d8 Bug 10209 - Part 2: Implement the absolute positioning support for all frames; r=roc 2011-04-29 19:02:33 -04:00
Ehsan Akhgari
47d44b9dc3 Bug 10209 - Part 1: Add an API for absolute container support for all frame types; r=roc 2011-04-27 19:41:43 -04:00
Michael Wu
d8e503c38b Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Adam Dane [:hobophobe]
35dfe378d7 bug 591249 - event dragleave not properly dispatched if drag-and-drop aborted with ESC within iframe. r=smaug 2011-09-26 15:55:04 -05:00
Ms2ger
21263e0741 Bug 687070 - Remove unused variable 'result' in nsDisplaySelectionOverlay::Paint; r=masayuki 2011-09-18 11:22:18 +02:00
Mats Palmgren
4a82c200c1 Bug 685154 - Cleanup nsIFrame::GetParentStyleContextFrame and related code. r=roc
Make nsIFrame::GetParentStyleContextFrame return the frame directly
instead of indirectly through an out parameter.  Remove the unused
nsPresContext parameter.
2011-09-12 09:08:07 -07:00
Masayuki Nakano
d9869bfccf Bug 669028 part.13 layout should use mozilla::LookAndFeel rather than nsILookAndFeel r=roc 2011-09-09 11:27:13 +09:00
Jonathan Watt
9a2fd9b810 Bug 664130 - Rename isComposited to isVisuallyAtomic. r=roc. 2011-09-08 12:15:00 +01:00
Jonathan Watt
3d83b361b0 Bug 664130 - avoid creating empty nsAbsPosClipWrapper items. r=roc. 2011-09-08 12:15:00 +01:00
Jonathan Watt
c6f1afaf71 Bug 664130 - Clarify some display list comments and code. r=roc. 2011-09-08 12:15:00 +01:00
Matt Woodrow
a5e0a1b39b Bug 682922 - Disable preserve-3d on scroll frames. r=roc 2011-09-05 10:25:35 +12:00
Daniel Holbert
5d075a7a42 Bug 683702: In nsFrame teardown, clear the reference to me on my prev IB sibling (as well as on my next IB sibling). r=roc 2011-09-01 00:10:22 -07:00
Matt Woodrow
ec5a391004 Bug 505115 - Part 14b - Layout support for -moz-transform-style. r=roc 2011-08-27 12:01:46 +12:00
Daniel Holbert
9d95437600 Bug 679933: When a frame is destroyed, remove next special-sibling's pointer to it. r=roc 2011-08-25 01:31:11 -07:00
Mats Palmgren
6894179e71 Bug 653649 - New way of getting child lists from frames. (part 4/5) r=roc
Remove the nsIAtom* child list names and use child list ID enum instead.
2011-08-24 22:54:30 +02:00
Mats Palmgren
f06792a6ef Bug 653649 - New way of getting child lists from frames. (part 3/5) r=roc
Update GetAdditionalChildListName consumers to use the new
child list iterator instead.
2011-08-24 22:54:29 +02:00
Mats Palmgren
90d0315f85 Bug 653649 - New way of getting child lists from frames. (part 2/5) r=roc sr=dbaron
Implement GetChildList(ChildListID) and GetChildLists(nsTArray<ChildList>*)
for various frame classes.  Remove GetAdditionalChildListName(PRInt32)
methods and associated macros and list index constants.
2011-08-24 22:54:29 +02:00
Josh Matthews
610775bbe2 Bug 679791 - Make nsIFrame::IsFocusable use heuristics that don't depend on the graphical display of scrollbars. r=roc 2011-08-17 13:55:57 -04:00
Marco Bonardo
b92ca56a08 Merge last green changeset from mozilla-inbound to mozilla-central 2011-08-03 10:46:22 +02:00
Masayuki Nakano
1380b10143 Bug 675865 backout new dragginf for selection handling code from Mozilla8 r=smaug (backed out patches are: bug 552707, bug 644621, bug 670058, bug 670508, bug 671319) 2011-08-03 12:39:02 +09:00
Matt Woodrow
fd49690163 Bug 505115 - Part 8c - Use ray tracing to untransform 2d points on a 3d plane. r=roc 2011-08-03 15:04:21 +12:00
Michael Wu
cb03114f5c Bug 675485 - Fix PRBool misuses found in a debug build, r=bz,taras 2011-08-01 18:20:52 -07:00
Ehsan Akhgari
cadef9ec48 Merge mozilla-central and mozilla-inbound 2011-07-24 12:52:51 -04:00
Masayuki Nakano
fd858e2321 Bug 673315 part.1 selection change reason must be MOUSEUP_REASON when dragging for selection finishes normally r=smaug 2011-07-24 23:26:40 +09:00
Matt Woodrow
6366c7e2e7 Bug 505115 - Part 5 - Use gfx3DMatrix in layout. r=roc 2011-07-23 10:28:51 +12:00
Masayuki Nakano
7d481573dc Bug 671319 Should abort drag for selection at resetting capture r=smaug 2011-07-21 09:29:32 +09:00
Masayuki Nakano
06edb8bcd1 Bug 644621 Drag selection scrolling does not work properly in fullscreen and maximized mode ui=faaborg, r=roc 2011-07-18 03:35:33 +09:00
Masayuki Nakano
dc57bc48ad Bug 670508 Needs null check at starting table selection handling r=roc 2011-07-14 12:55:27 +09:00
Jonathan Watt
3de087f518 Bug 664130. Remove redundant isPositioned check. r=roc. 2011-07-13 08:56:39 +01:00
Masayuki Nakano
61a5b62f82 Bug 670081 Cannot scroll any scrollable elements by drag if non-scrollable element captures mouse events r=roc 2011-07-12 10:13:24 +09:00
Daniel Holbert
55e87ce52f Fix typo in comment within nsFrame.cpp (no bug) rs=dbaron DONTBUILD 2011-07-07 17:57:55 -07:00
L. David Baron
dbb636b97e Only apply overflow area reported by native theme to the visual overflow, and not to the scrollable overflow. (Bug 669284) r=bzbarsky 2011-07-06 12:03:23 +02:00
Masayuki Nakano
180918ceb1 Bug 552707 While we're expanding selection by dragging, the selection root element should capture mouse events and all scrollable elements should be scrollable r=roc+smaug, ui=faaborg 2011-07-06 11:16:18 +09:00
Ehsan Akhgari
c4436101c8 Back out bug 10209 and bug 656875 (its regression fix) from Aurora because the work on this bug has not been finished yet
--HG--
extra : transplant_source : t%9F%EB%2Aa%A4%C0%9Ab%A5%DDQ%3EMD%5E%01h%E7%2A
2011-06-01 16:18:15 -04:00
Simon Montagu
ca0b6c0240 Check for null frame selection. Bug 666225, r=roc 2011-06-27 19:33:28 +03:00
Craig Topper
43c8429d0c Bug 654369 - Part 9: Remove OOM checks from layout/generic r=bz
--HG--
extra : rebase_source : b828e73151ceb8cb59e1d8f7c0671dc88397057c
2011-04-28 22:02:16 -07: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
Timothy Nikkel
85cdf3236a Bug 621551. If someone is trying to get the offset between frames in different document hierarchies just crash right away so we get useful stacks. r=roc 2011-05-31 17:53:21 -05:00
Ed Morley
9e71e5b9ac Bug 614515 - Remove MOZ_SVG conditions. r=roc 2011-05-30 09:34:50 +02:00
Ms2ger
bfe60518ca Bug 659990 - Remove nsIDOMNSHTMLHRElement; r=peterv 2011-05-28 09:43:44 +02:00
Masayuki Nakano
49814a538d Bug 659536 part.2 Replace nsContentUtils::GetIntPref() with Preferences::GetInt() or Preferences::GetUint() r=roc 2011-05-25 15:32:00 +09:00
Masayuki Nakano
060287addd Bug 659533 Replace nsContentUtils::GetBoolPref() with Preferences::GetBool() r=roc 2011-05-25 15:31:59 +09:00
Robert O'Callahan
e9b914654e Bug 656749. Only optimize away zero-opacity elements when we're painting, not for any other kind of display list construction such as plugin geometry. r=tnikkel 2011-05-23 12:28:47 +12:00
Craig Topper
4e38ca20a7 Bug 658143 - Part 1: Changes nsCOMPtr<nsFrameSelection> to nsRefPtr. r=roc 2011-05-18 20:10:49 -07:00
Mounir Lamouri
cffb492c94 Backout bug 656749. 2011-05-17 13:43:10 +02:00
Robert O'Callahan
9f2fc5b8e2 Bug 656749. Only optimize away zero-opacity elements when we're painting, not for any other kind of display list construction such as plugin geometry. r=tnikkel 2011-05-17 11:05:46 +12:00
Ehsan Akhgari
5aaebed294 Bug 656875 - Use the transformed dirty rectngle when building display list items for stacking context; r=roc 2011-05-16 13:27:24 -04:00
Ehsan Akhgari
e4c89e2e5d Bug 10209 - Part 2: Implement the absolute positioning support for all frames; r=roc 2011-04-29 19:02:33 -04:00
Ehsan Akhgari
ce02059ba9 Bug 10209 - Part 1: Add an API for absolute container support for all frame types; r=roc 2011-04-27 19:41:43 -04:00
Dão Gottwald
ca1f9f0f94 Bug 451833 - Highlight the domain name in the address bar. r=roc,sdwilsh ui-r=faaborg
--HG--
extra : rebase_source : 1010ad246e94e271a0efaaca13356aff5d4b3bc3
2011-05-02 19:50:18 +02:00
David Zbarsky
5ecf0a2bd3 Bug 610305: decom nsEventStateManager r=smaug 2011-04-21 19:35:52 +02:00
Mounir Lamouri
b4cf8cd184 Backed out changeset c1a7c1bc1aeb due to busted build. 2011-04-20 22:26:06 +02:00
David Zbarsky
c4d29900ed Bug 610305: decom nsEventStateManager r=smaug 2011-04-20 21:42:33 +02:00
Zack Weinberg
51864c09d8 Bug 651017, part 1: minimize inclusion of ns*DeviceContext.h; move the printing error codes to nsIDeviceContextSpec.h; os2 small widget cleanup.
--HG--
extra : rebase_source : 5b7cebe68f71a760463e3522b159c7cde8a72f5e
2011-04-16 18:22:41 -07:00
Robert O'Callahan
72627bced2 Bug 641426. Part 6: Rename Empty to SetEmpty. r=cjones 2011-04-19 15:07:23 +12:00
Robert O'Callahan
c957ae039e Bug 641426. Part 5: Avoid operator== where possible to distinguish between 'equal edges' and 'equal areas' for rectangles. r=dbaron,sr=cjones 2011-04-19 15:07:23 +12:00
Robert O'Callahan
763a5f47a7 Bug 641426. Part 4.2: Rename BaseMargin::side to BaseMargin::Side. r=cjones 2011-04-19 15:07:22 +12:00
Robert O'Callahan
75ad705b3b Bug 641426. Part 3.5: Remove usage of nsMargin::TopLeft and nsMargin::IsZero. r=dbaron 2011-04-19 15:07:22 +12:00
Jan Küchler
5ef6bf26cf Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
extra : rebase_source : 34884bfcafd885feaf73300bc7246cd192062a48
2011-04-07 18:04:40 -07:00
Robert O'Callahan
c6e4498a20 Bug 622072. Part 3: Support empty transactions for canvas layers. r=tnikkel
The basic idea is that whenever a layer transaction updates the window, we clear out the invalidation state for the canvas rendering context,
using a DidTransactionCallback registered on the layer(s) for the canvas, which calls MakeContextClean.

The DidTransactionCallbacks are directed to the user data attached to the Layer, which holds a strong reference to the canvas element. This
ensures that the element lives as long as the layer. Layers are destroyed when the presentation is torn down (including if the frame is destroyed),
so we can't have a leak here. The reference to the canvas element is only strong because the layer might briefly outlive the frame (the layer
won't be destroyed until the next paint of the window).

This patch moves responsibility for calling CanvasLayer::Updated and nsFrame::MarkLayersActive from the canvas context to nsHTMLCanvasElement::InvalidateFrame.
We call Updated on the retained CanvasLayer, if there is one; any other CanvasLayers created for this canvas would only be used once, and have Updated
called on them in BuildLayer when created.
2011-03-28 12:59:47 +13:00
Ehsan Akhgari
a0f4acae30 Merge cedar into mozilla-central 2011-03-30 13:53:35 -04:00
Ehsan Akhgari
5199d98d91 Bug 645914 - Do not eat the white-space when doing word selection if the eaten whitespace is a newline character and we have been instructed not to jump between lines; r=roc
This fixes a bug in selecting words at the end of lines in textarea's for Windows.
2011-03-30 11:56:48 -04:00
Jonathan Kew
1095b2347e bug 418975 - support &shy; when calculating min width for table and fieldset. r=roc. landing on the CLOSED TREE after dbaron went to bed :) 2011-03-24 15:22:37 +00:00
Ehsan Akhgari
ca0a27ab24 Merge cedar into mozilla-central 2011-03-29 10:39:07 -04:00
David Bolter
8756e3e643 Bug 616594 - overflow:auto causes DIV to get tab focus, r=bz 2011-03-29 13:43:59 +09:00
Chen Liu
86a955132e Use PL_strncpyz in DR_FrameTypeInfo. (Bug 639220) r=dbaron 2011-03-28 16:07:27 -07:00
Robert O'Callahan
4ca813ae6e Bug 622072. Part 3: Support empty transactions for canvas layers. r=tnikkel
The basic idea is that whenever a layer transaction updates the window, we clear out the invalidation state for the canvas rendering context,
using a DidTransactionCallback registered on the layer(s) for the canvas, which calls MakeContextClean.

The DidTransactionCallbacks are directed to the user data attached to the Layer, which holds a strong reference to the canvas element. This
ensures that the element lives as long as the layer. Layers are destroyed when the presentation is torn down (including if the frame is destroyed),
so we can't have a leak here. The reference to the canvas element is only strong because the layer might briefly outlive the frame (the layer
won't be destroyed until the next paint of the window).

This patch moves responsibility for calling CanvasLayer::Updated and nsFrame::MarkLayersActive from the canvas context to nsHTMLCanvasElement::InvalidateFrame.
We call Updated on the retained CanvasLayer, if there is one; any other CanvasLayers created for this canvas would only be used once, and have Updated
called on them in BuildLayer when created.
2011-03-28 12:59:47 +13:00
Ehsan Akhgari
11ad8ed434 Bug 642823 - Make the behavior of nsISelection::Modify consistent for word selection across platforms by not eating spaces on any platform; r=roc 2011-03-20 15:49:06 -04:00
Chris Jones
b24d5d1e6d Bug 637278: INVALIDATE_NO_UPDATE_LAYER_TREE should subsume INVALIDATE_NO_THEBES_LAYERS. r=tn sr=roc 2011-03-01 12:27:35 -06:00
Matt Woodrow
5a9d39c5e9 Bug 629857 - When invalidating transformed items, round the original area out to the nearest pixel. r=roc a=roc 2011-02-25 11:55:23 +13:00
Ehsan Akhgari
44c6ad0a4f Merge backout of bug 622072 2011-03-29 14:32:11 -04:00
Ehsan Akhgari
931bd6ee19 Back out bug 622072 because it caused bug 645987 2011-03-29 14:31:53 -04:00
Neil Deakin
fd67e69ef1 Bug 624127, clear mousedown selection state in frame where mouse was pressed down,r=smaug,a=jst 2011-02-03 12:08:30 -05:00
Robert O'Callahan
715a68eba1 Bug 619117. When invalidating due to a transform change, use the cached post-transform visual overflow rect to avoid depending on the new transform style. r=dbaron,a=blocking 2011-01-25 21:41:56 +13:00
Boris Zbarsky
2b3d8a6402 Bug 626395. Make sure that when we're clipping our kids we don't create overflow containers for their overflow. Force the kids to lay out within our size instead. Also don't include overflowing kids in our overflow area if we're clipping them. r=roc, a=blocker 2011-01-19 17:39:31 -05:00
L. David Baron
46b5820693 Report incomplete reflow status as appropriate when frame tree is too deep. (Bug 619021) r=roc a2.0=blocking 2011-01-11 17:09:22 -08:00
L. David Baron
387c0a2245 Issue console warning when we abort reflow because the frame tree is too deep. (Bug 619021) r=roc a2.0=blocking 2011-01-11 17:09:22 -08:00
Robert O'Callahan
319639d128 Bug 615870. Part 2: Track per-display-root-frame 'update layer tree' state bit. r=tnikkel a=b-f 2010-12-10 21:32:52 +02:00
Jonathan Kew
a9323f7452 bug 332636 - fix editor's handling of surrogate-pair combining marks with backspace. r=ehsan a=roc 2010-12-16 14:17:41 -08:00
Jonathan Kew
6531a7f776 Backed out changeset 1958ebae93cc for causing mochitest orange. a=backout 2010-12-16 15:15:35 -08:00
Jonathan Kew
7a31c3e079 bug 332636 - fix editor's handling of surrogate-pair combining marks with backspace. r=ehsan a=roc 2010-12-16 14:17:41 -08:00
Michael Wu
a3ec8a5ae1 Backed out changeset 34bd12eb4a9c for causing bug 618916, a=stuart 2010-12-13 16:14:07 -08:00
Oleg Romashin
0da1b085e9 Bug 615870 - Remote HTML5 video rendering pipeline should be shorter r=roc a=b-f 2010-12-10 21:32:52 +02:00
Boris Zbarsky
315d8d3845 Bug 614397. Always descend through all placeholders while doing any sort of selection display list. r=roc, a=roc 2010-12-07 08:54:50 -05:00
Boris Zbarsky
b0c658578e Bug 609272. Make sure to not apply clipping of overflow when printing to the root element, because it doesn't really make use of its overflow style itself. r=dbaron 2010-11-30 13:19:57 -05:00
Dave Townsend
7a0e0a5cd9 Backing out bug 614058, bug 609272, bug 478445, bug 499628, bug 605296, bug 608914 and bug 614724 due to potentially causing bug 615736 CLOSED TREE. a=backout 2010-12-01 11:01:56 -08:00
Boris Zbarsky
f5eba2ae67 Bug 609272. Make sure to not apply clipping of overflow when printing to the root element, because it doesn't really make use of its overflow style itself. r=dbaron 2010-11-30 13:19:57 -05:00
Ehsan Akhgari
5febe4410c Bug 424627 - Ctrl+clicking on a text control border followed by an editing operattion (e.g. paste) removes the table cell from a non-editable document; r=roc a=blocking-final+ 2010-11-01 19:04:12 -04:00
Alexander Surkov
b049d3e67a Bug 570275 - rework accessible tree update code, r=marcoz, davidb, bz, a=blocking 2010-10-21 13:16:10 +09:00
Timothy Nikkel
9fa3e05ad4 Bug 599113. Part 3. Can't restrict invalidated rects to visible portion of a scroll frame if we retain content that might be outside the visible portion of the scroll frame. r=roc a=blocking-betaN+ 2010-10-14 20:03:46 -05:00
L. David Baron
cd40905288 When a frame is themed, report a border-radius of 0. (Bug 595652) r=roc a2.0=blocking2.0:betaN 2010-10-06 21:25:47 -07:00
L. David Baron
a56a24a514 Change callers to use new nsIFrame overflow APIs. (Bug 542595, patch 20) r=roc a2.0=blocking2.0:beta8 2010-10-06 21:25:47 -07:00
L. David Baron
40d60928c6 Fix miscellaneous reflow methods to use new overflow area APIs. (Bug 542595, patch 19) r=roc a2.0=blocking2.0:beta8 2010-10-06 21:25:46 -07:00
L. David Baron
bf7624301d Now that overflow areas are split, change nsIFrame::ComputeTightBounds to use visual overflow. While it really only needs to include frame bounds, glyph bounds, and text decorations, since glyph bounds are not part of scrollable overflow, it must use visual overflow. (Bug 542595, patch 15) r=roc a2.0=blocking2.0:beta8 2010-10-06 21:25:46 -07:00
L. David Baron
d86ede8347 Change FinishAndStoreOverflow API to take two overflow areas. (Bug 542595, patch 4) r=roc a2.0=blocking2.0:beta8 2010-10-06 21:25:45 -07:00
L. David Baron
9cc9011dcd Convert nsIFrame APIs from having a single overflow rect to having two distinct overflow rects. (Bug 542595, patch 1) r=roc sr=bzbarsky a2.0=blocking2.0:beta8 2010-10-06 21:25:45 -07:00
Boris Zbarsky
a7d2e54c98 Bug 129941 followup. Continue creating scrollframes for native anonymous content. a=crashing tests 2010-10-06 22:21:58 -04:00
Boris Zbarsky
280f2c88c6 Bug 129941. Don't create scrollframes for blockframes (except inline blocks) while printing, and make such blockframes clip their contents instead. r=dbaron 2010-10-06 21:01:24 -04:00
Robert O'Callahan
594cd74d3d Bug 584494. Avoid creating opacity/transform wrappers for empty lists. r=tnikkel a2.0=blocking2.0:betaN 2010-09-17 12:29:52 -07:00
Ehsan Akhgari
dae8839f12 Bug 596506 - Going to end of line using Ctrl-e on Mac positions caret after newline in textareas; r=bzbarsky a=blocking-final+ 2010-09-16 14:40:26 -04:00
Ehsan Akhgari
8c0a628bb6 Bug 240933 - Part 3: Correct the caret movement throughout textareas (and pre elements with caret browsing turned on as well); r=roc a=dbaron
--HG--
extra : rebase_source : 9f015607bc84a11137ab11ba47c14e98c20e3970
2010-07-13 21:49:16 -04:00
L. David Baron
344df4887f Simplify storage of computed calc() as a result of removing min() and max(). (Bug 363249) r=bzbarsky a2.0=blocking2.0:beta6 2010-09-11 09:27:13 -07:00
L. David Baron
fa356d0a17 Remove support for min() and max() in calc(): remove support for parsing and storage. (Bug 363249) r=bzbarsky a2.0=blocking2.0:beta6 2010-09-11 09:27:12 -07:00
L. David Baron
b272e35a61 Change the blur radius for -moz-box-shadow and text-shadow to match what is specified in css3-background, and the blur radius for canvas to follow what is specified in HTML5. (Bug 590039) r=roc a2.0=blocking2.0:beta6
This fixes the multiplication by 1.5 in
gfxAlphaBoxBlur::CalculateBlurRadius (originally added in changeset
ce9f05b57b95 for bug 467518) to work correctly.  It was previously a
multiplication by 1 due to integer division.  CalculateBlurRadius
previously multiplied by 1.880; it now multiplies by 2.820.

This changes canvas shadow handling to multiply shadowBlur by 2 before
taking its square root, as described in the spec.  This means that
canvas shadow blurs 8px or smaller are 1.5 times larger than they were
previously (due to the CalculateBlurRadius change), and canvas shadow
blurs larger than 8px are 2.121 times larger than they were previously
(due to the CalculateBlurRadius change *and* the additional factor of
sqrt(2)).

This changes text-shadow and -moz-box-shadow handling to use
CalculateBlurRadius on half of the value given instead of passing the
value through directly.  This means that text-shadow and box-shadow
blurs are multiplied by 1.410 relative to their old sizes.  It also
means that we round rather than floor, so that the effect that used to
be drawn by a blur in the range 1px to 1.99px is now drawn by a blur
anywhere in the range 0.36px to 1.05px, the effect that used to be drawn
by a blur in the range 2px to 2.99px is now drawn by a blur anywhere in
the range 1.06px to 1.77px, what used to be a drawn by a blur in the
range 3px to 3.99px is now drawn by a blur anywhere in the range 1.78px
to 2.47px, etc.
2010-09-11 09:27:12 -07:00
L. David Baron
d99ac32acf Clip replaced elements (for now, images, canvases, videos, and windowless plugins) to the border radius. (Bug 485501) r=roc a2.0=blocking:beta6 2010-09-09 08:21:47 -07:00
L. David Baron
d44b4ee882 Clip contents of elements with overflow != visible to the border radius. (Bug 459144, patch 14) r=roc a2.0=blocking2.0:beta6 2010-09-09 08:21:46 -07:00
L. David Baron
27b2504e3c Make nsIFrame::DisplaySelectionOverlay take an nsDisplayList* instead of nsDisplayListSet&. (Bug 485501) r=roc a2.0=blocking:beta6 2010-09-09 08:21:46 -07:00
L. David Baron
4113d6f1f9 Remove unneeded nsAbsPosClipWrapper::mContainer. (Bug 459144, patch 12) r=roc a2.0=blocking2.0:beta6 2010-09-09 08:21:46 -07:00
L. David Baron
cec33102e4 Remove unneeded nsDisplayClip::mClippingFrame. (Bug 459144, patch 11) r=roc a2.0=blocking2.0:beta6 2010-09-09 08:21:46 -07:00
L. David Baron
f9bc2d9cef Fix places where I missed clamping negative calc() to 0. (Bug 585715) r=bzbarsky a2.0=blocking2.0:beta6 2010-09-09 08:21:46 -07:00
L. David Baron
8aaf22a0f4 Add support for calc() on -moz-border-radius and -moz-outline-radius. (Bug 585715) r=bzbarsky a2.0=blocking2.0:beta6 2010-09-09 08:21:45 -07:00
L. David Baron
4f34aba74d Add border-radius-related helper functions to nsIFrame. (Bug 459144, patch 6) r=roc a2.0=blocking:beta6+ 2010-09-07 15:20:35 -07:00
L. David Baron
fb568df1f4 Move clamping of border-radii that are too big from nsCSSRendering::ComputePixelRadii to nsIFrame::ComputeBorderRadii. This also fixes a bug in nsDisplayBoxShadowOuter::ComputeVisibility. (Bug 459144, patch 5) r=roc a2.0=blocking:beta6+ 2010-09-07 15:20:35 -07:00
L. David Baron
59ce09e952 Move skip-sides handling from nsCSSRendering::ComputePixelRadii to nsIFrame::ComputeBorderRadii. This fixes a bug (ignoring skip-sides) in nsDisplayBoxShadowOuter::ComputeVisibility, and improves the no-border-radius optimizations when skip-sides allow us to take them. (Bug 459144, patch 3) r=roc a2.0=blocking:beta6+ 2010-09-07 15:20:34 -07:00
L. David Baron
228dbed13a Make nsIFrame::ComputeBorderRadii take an nsSize instead of two nscoords. (Bug 459144, patch 2) r=roc a2.0=blocking:beta6+ 2010-09-07 15:20:34 -07:00
L. David Baron
452d0afadd Move nsCSSRendering::GetBorderRadiusTwips to nsIFrame and rename it to ComputeBorderRadii. (Bug 459144, patch 1) r=roc a2.0=blocking:beta6+ 2010-09-07 15:20:34 -07:00
Ehsan Akhgari
7b654288bf Back out bug 240933 and bug 590554 because of reftest failure on Win7 and also bug 593211 2010-09-02 19:54:23 -04:00
Ehsan Akhgari
8b538d8a3a Bug 240933 - Part 3: Correct the caret movement throughout textareas (and pre elements with caret browsing turned on as well); r=roc a=dbaron
--HG--
extra : rebase_source : 198f679bb5cea82b710c921576fa44c59f77aa23
2010-07-13 21:49:16 -04:00
Robert O'Callahan
7db127ab8d Bug 584494 - Regression: Transform rotation testcase performs significantly worse - r=dbaron 2010-09-02 14:07:37 -04:00
L. David Baron
ed01917887 Add support for calc() to the '{margin,padding}-{top,right,bottom,left}' and '-moz-margin-{start,end}' properties. (Bug 585715) r=bzbarsky a2.0=blocking:beta6+ 2010-08-31 12:05:12 -04:00
Robert O'Callahan
c7acef03ff Bug 579323. Part 1.8: Rename InvalidateOverflowRect to InvalidateFrameSubtree. r=tnikkel
--HG--
rename : layout/generic/nsFrameFrame.cpp => layout/generic/nsSubDocumentFrame.cpp
extra : rebase_source : f7bd38670a03e8a7f3f8c40838af114be79b06f1
2010-08-31 12:49:12 +12:00
Robert O'Callahan
f566520efb Bug 579323. Part 1: Add FrameLayerBuilder::InvalidateThebesLayersInSubtree, and call it from InvalidateOverflowRect. r=tnikkel,sr=dbaron
--HG--
extra : rebase_source : c1dbc5b625e23d55ba030709f5cd429122977685
2010-08-31 12:46:26 +12:00
L. David Baron
a9774b11d6 Make IsAutoHeight be a member of nsLayoutUtils so we don't have to have two copies of it. (Bug 585715) r=bzbarsky a2.0=blocking+ 2010-08-25 12:17:56 +02:00
L. David Baron
091d6b7837 Add support for calc() to the 'height', 'min-height', and 'max-height' properties. (Bug 585715) r=bzbarsky a2.0=blocking+ 2010-08-25 12:17:55 +02:00
Robert O'Callahan
794cc06f63 Bug 581222. Back out patch that disabled box-shadows for native-themed content elements.
--HG--
extra : rebase_source : 4685dfdddd9e0bf1ed9e5f8401d6bc73b91a5600
2010-08-23 21:30:07 +12:00
Robert O'Callahan
a581cd6197 Bug 584282. Add nsDisplayItem::mToReferenceFrame and initialize it in the constructor. r=tnikkel,a=dbaron
--HG--
extra : rebase_source : 496cbde7c495eb8872c3d0ffc0ca4c57c2a6a777
2010-08-13 22:01:13 +12:00
Timothy Nikkel
cc09403fac Bug 587542. If painting is suppressed in the presshell, drop invalidations that come through the view subsystem as well as through the usual frame invalidation path. r=roc 2010-08-18 20:16:58 -05:00
Bobby Holley
20c25243b6 bug 512260 - part 5 - make nsCursorImage::mImage private, add getter/setter, and lock images in the setter.r=dbaron,a=blocker 2010-08-16 12:19:26 -04:00
Robert O'Callahan
f8dc984ede Backing out bug 584282 and bug 537890 2010-08-14 02:35:06 +12:00
Markus Stange
438fa8a236 Bug 506826 - Invalidate -moz-element rendering observers when necessary. r=roc 2010-08-13 15:36:13 +02:00
Markus Stange
2ea78354c5 Bug 572689 - Make nsSVGRenderingObservers observe elements instead of frames. r=roc 2010-08-13 15:31:31 +02:00
Robert O'Callahan
0b542b46ed Bug 579258. Remove the 'before move' region parameter to ComputeVisibility. r=tnikkel,a=joe 2010-08-13 21:55:54 +12:00
Timothy Nikkel
495b7af67e Bug 582754. Remove cross doc check in nsIFrame::GetOffsetTo. r=mats a=dbaron 2010-08-08 13:49:06 -05:00
Robert O'Callahan
6ea38bb418 Bug 584282. Add nsDisplayItem::mToReferenceFrame and initialize it in the constructor. r=tnikkel,a=dbaron 2010-08-13 22:01:13 +12:00
Timothy Nikkel
eaf04d25f4 Bug 563878. Part 15. Fix GetOffsetTo callsites. r=mats 2010-07-18 21:23:48 -05:00
Timothy Nikkel
460def762d Bug 563878. Part 7. Change frame, point, rect, region APIs. r=mats sr=roc 2010-07-18 21:23:47 -05:00
Robert O'Callahan
27f182eeac Bug 564991. Part 42: When the root frame changes size, invalidate the changed area. r=tnikkel 2010-07-16 09:08:12 +12:00
Robert O'Callahan
2b0f4a408a Bug 564991. Part 38: Make invalidation-during-paint work reliably. r=mats,sr=dbaron 2010-07-16 09:08:11 +12:00
Robert O'Callahan
1cbc86420d Bug 564991. Part 25: Introduce a 'has active layers' flag on frames, which times out, and use it for 'opacity'. r=mats,sr=dbaron 2010-07-16 09:08:06 +12:00
Robert O'Callahan
1917c1d836 Bug 564991. Part 13: Optimize invalidation to avoid repainting ThebesLayer contents sometimes. r=mats,sr=dbaron 2010-07-16 09:07:53 +12:00
Robert O'Callahan
fa45207070 Bug 564991. Part 7: Create Begin/EndDeferredInvalidates API so we can catch and defer invalidates on frames (and suppress certain areas completely). r=mats,sr=dbaron 2010-07-16 09:07:50 +12:00
Michael Ventnor
8139bee929 Bug 564991. Part 3: Create unique nsDisplayItem types for every single display item. r=tnikkel 2010-07-16 09:07:49 +12:00
Robert O'Callahan
a7c0fe60ac Bug 564991. Part 2: Create retained layer API: methods on FrameLayerBuilder that frames can use to access, reuse and invalidate retained layers. r=mats,sr=vlad 2010-07-16 09:07:46 +12:00
Mats Palmgren
a1c32a5075 Bug 556432 - Dragging a content selection shows non-selectable text in the drag feedback. r=roc 2010-07-12 22:24:33 +02:00
Timothy Nikkel
976046bf62 Bug 563878. Part 5. Rename nsIFrame::GetWindow(Offset) to GetNearestWidget. r=mats 2010-07-02 14:11:04 -05:00
Alexander Surkov
1b2bbba526 Bug 573706 - make frame based accessible creation more pellucid, r=davidb, sr=roc 2010-06-28 21:02:03 +09:00
Robert O'Callahan
9411b2cc9f Bug 572914. Overflow areas for theme backgrounds should not be clipped by -moz-hidden-unscrollable. r=dbaron 2010-06-28 12:28:21 +12:00
Timothy Nikkel
c25a766301 Bug 574756. Make sure nsIFrame::List outputs the stylecontext of the frame. r=dbaron 2010-06-25 16:51:17 -05:00
Jim Mathies
bd6651b892 Bug 513162 - Cleanup unused widget code and CID statics. r=vlad. 2010-06-24 21:01:06 -05:00
Jesse Ruderman
f04ef428cb Remove stray line breaks from NS_ERROR messages, since they interfere with log processing. rs=jst
--HG--
extra : rebase_source : 87421691da969e0ebe5fbfbc44cd8f18617d1351
2010-06-17 13:28:38 -07:00
Masayuki Nakano
6e00300d75 Bug 550434 Clicking in an empty contenteditable element that has focus causes the caret to disappear (alternative approach) r=roc 2010-06-14 12:11:30 +09:00
Daniel Holbert
c76f173bb3 Bug 571059: Update debugging printfs to treat nsFrameState objects as 64-bit & fix build warnings. r=dbaron 2010-06-10 11:26:57 -07:00
L. David Baron
d574dd00ce Use macros for frame state so that it's easy to change the size and easier to read the constants. (Bug 570837) r=roc 2010-06-08 22:28:14 -07:00
Ehsan Akhgari
d051ffeaed Bug 534785 - Move the ownership of editor and selection controller from the text frame to the content node; r=roc,jst sr=roc
(transplanted from 2437636244f39bbdc7d20b062e2c978b9d85c239)

--HG--
rename : layout/reftests/forms/placeholder/placeholder-14.html => layout/reftests/forms/placeholder/placeholder-18.html
extra : transplant_source : %247cbD%F3%9B%BD%C7%D2%0B%06.%2C%97%8B%9D%85%C29
2010-04-21 16:17:41 -04:00
Zack Weinberg
7dfad97c7a Bug 562093: Add reflow tracing for InitConstraints, InitOffsets, InitFrameType. r=dbaron 2010-05-01 14:40:16 -07:00
Markus Stange
5654a6a17c Bug 550889 - Don't pass negative values to SetComputedWidth/Height in nsFrame::BoxReflow. r=bzbarsky 2010-05-01 12:40:22 +02:00
Boris Zbarsky
4d2b5f13cc Bug 562688 part 11. Eliminate eELEMENT usage in layout/generic. r=dbaron 2010-04-30 09:12:06 -04:00
Neil Deakin
ceb1712f98 Bug 418521, improve the way focus indicators are displayed to correlate better with system behaviour, add -moz-focusring property to apply only when focus rings should be drawn, r=dao,jmathies,dbaron sr=neil 2010-04-21 10:53:42 -04:00
L. David Baron
d93e0789b9 Exit loop when needed. (Bug 497256) r=roc 2010-04-06 12:42:41 -07:00
Ehren Metcalfe
e0ac5d5547 Bug 556446: Remove dead code in layout. r=roc,bz 2010-04-03 07:36:19 -04:00
L. David Baron
68d7839f41 Make PaintBackgroundWithSC and related methods operate on nsStyleContext* rather than const nsStyleBackground*. (Bug 147777) r=zweinberg 2010-04-02 18:58:26 -07:00
Vivien Nicolas
8d0a5ca6d8 Bug 461843: Backout changes to avoid assertions but broke scrollbar margin support [r=roc] 2010-04-02 18:25:40 -04:00
Zack Weinberg
54ad0fb73a Bug 494117: Mechanically change 'ReParent' to 'Reparent' throughout the tree. r=bzbarsky 2010-04-01 23:07:43 -07:00
Masayuki Nakano
553922eee1 Bug 554822 Caret should refer the actual text color instead of the value of CSS color property r=roc 2010-04-01 11:35:48 +09:00
Masayuki Nakano
313a3bd180 Bug 554822 backout the previous patch 2010-04-01 02:31:06 +09:00
Masayuki Nakano
55bbbc0a73 Bug 554822 Caret should refer the actual text color instead of the value of CSS color property r=roc 2010-04-01 02:12:43 +09:00
Craig Topper
1921815643 Bug 253889: DeCOMtaminate nsIPresShell - IsPaintingSuppressed(). r=roc
--HG--
extra : rebase_source : 9ee8283e8bce33402893ae5316f89c9f699a1236
2010-03-31 08:43:49 -04:00