Commit Graph

362 Commits

Author SHA1 Message Date
L. David Baron
54669c062f Bug 1010675 - Stop allowing button contents to overflow into the CSS padding and border (although still allow them to overflow into our internal focuspadding when the min-content width says the contents don't fit). r=dholbert
Note that this replaces the code that allows eroding the space with new
code that reduces the focusPadding value.

(Also, we previously didn't count the focusPadding towards what could be
eroded, which meant we wouldn't quite get to the edge of the padding and
border, because we weren't counting the extra for the focusPadding.)

The existing reftests that I'm changing from == to != are ones that were
specifically testing issues related to erosion of padding.

The change to 491180-{1,2}-ref.html is because we now *do* erode the
focusPadding, which is 3px in the horizontal dimensions (see the
button::-moz-focus-inner styles in forms.css), and that was the only
nonzero style on the button in 491180-{1,2}.html.
2015-03-20 06:47:29 -07:00
Phil Ringnalda
847ef7cdb7 Back out ceaac3da2eff (bug 1010675) for Android reftest failures
CLOSED TREE
2015-03-19 22:49:45 -07:00
L. David Baron
d8b5309f82 Bug 1010675 - Stop allowing button contents to overflow into the CSS padding and border (although still allow them to overflow into our internal focuspadding when the min-content width says the contents don't fit). r=dholbert
Note that this replaces the code that allows eroding the space with new
code that reduces the focusPadding value.

(Also, we previously didn't count the focusPadding towards what could be
eroded, which meant we wouldn't quite get to the edge of the padding and
border, because we weren't counting the extra for the focusPadding.)

The existing reftests that I'm changing from == to != are ones that were
specifically testing issues related to erosion of padding.

The change to 491180-{1,2}-ref.html is because we now *do* erode the
focusPadding, which is 3px in the horizontal dimensions (see the
button::-moz-focus-inner styles in forms.css), and that was the only
nonzero style on the button in 491180-{1,2}.html.
2015-03-19 21:10:00 -07:00
Jonathan Kew
84d2a6e79e Bug 1130231 - Properly logicalize the implementation of padding on button contents. r=smontagu 2015-02-09 14:40:23 +00:00
Mats Palmgren
a18f7767f2 Bug 1111995 - Clip buttons to their border area for event hit testing. r=roc 2014-12-20 20:19:12 +00:00
Jonathan Kew
be0a53270a Bug 1106667 - Vertical writing-mode support for HTML button elements. r=smontagu 2014-12-04 00:57:17 -08:00
Mats Palmgren
91f5f358ea Bug 1102791 - Always return NS_FRAME_COMPLETE status from nsHTMLButtonControlFrame::Reflow. Don't create overflow container continuations unless the delegating frame has eCanContainOverflowContainers. r=roc 2014-11-24 16:42:31 +00:00
Jonathan Kew
297164bb88 bug 1046950 pt 1 - additional/modified APIs on LogicalSize. r=smontagu 2014-08-24 15:34:21 +01:00
Jonathan Kew
f6c74bf220 bug 1031241 pt 4 - Rename the {MIN,PREF}_WIDTH constants used to identify the type of intrinsic inline-size. r=smontagu 2014-07-24 18:03:26 +01:00
Jonathan Kew
c7e5b8d9dc bug 1031241 pt 1 - Rename Get{Min,Pref}Width to Get{Min,Pref}ISize throughout layout. r=dbaron,smontagu 2014-07-24 18:03:25 +01:00
Simon Montagu
0132cc9646 Bug 789096 patch 9: use logical coordinates in nsHTMLReflowState available size. r=jfkthame 2014-07-24 01:28:46 -07:00
Simon Montagu
614fa9614f Replace GetBaseline with GetLogicalBaseline and use logical coordinates in the line position and baseline getters in nsLayoutUtils. Bug 789096, r=jfkthame 2014-06-17 05:19:38 -07:00
Simon Montagu
7182a1b8b9 Replace Get/SetTopAscent with Get/SetBlockStartAscent. Bug 789096, r=jfkthame 2014-06-11 02:45:31 -07:00
Mats Palmgren
32c06aeee4 Bug 1015781 - part 10, Make nsHTMLButtonControlFrame::AppendFrames/InsertFrames/RemoveFrame DEBUG only. r=roc 2014-05-28 19:36:59 +00:00
Mats Palmgren
a43fc7a0a3 Bug 1015781 - part 1+2, Make the SetInitialChildList/AppendFrames/InsertFrames/RemoveFrame methods return void (scripted change). Remove code handling the return values. r=roc 2014-05-28 19:36:58 +00:00
Mats Palmgren
bebbaf8351 Bug 508665 - part 5, Make nsIFrame::Init require a nsContainerFrame* for the parent frame param. r=roc 2014-05-24 22:20:40 +00:00
Mats Palmgren
a26b4d368e Bug 508665 - part 4, Make nsCSSFrameConstructor use nsContainerFrame* for frames used as parent frames. r=roc 2014-05-24 22:20:40 +00:00
Mats Palmgren
84ce46d68c Bug 1008917 - part 2,3,4, make Reflow() return type 'void', and make a few reflow related helper methods 'void' too. r=roc 2014-05-13 00:47:52 +00:00
Wes Kocher
2669e87017 Backed out 11 changesets (bug 1008917) for apparently introducing an intermittent failure of B2G Crashtest-2 on a CLOSED TREE
Backed out changeset e2ab653f688a (bug 1008917)
Backed out changeset b52154d8d900 (bug 1008917)
Backed out changeset 2ab5b01da4de (bug 1008917)
Backed out changeset f7a38df1d44f (bug 1008917)
Backed out changeset 80304bb9a572 (bug 1008917)
Backed out changeset 10ed89a302e9 (bug 1008917)
Backed out changeset 161c41991d46 (bug 1008917)
Backed out changeset 25b2475d2368 (bug 1008917)
Backed out changeset b8000b31277c (bug 1008917)
Backed out changeset 9afa5e7715e1 (bug 1008917)
Backed out changeset 5c380c21351f (bug 1008917)
2014-05-12 15:47:41 -07:00
Mats Palmgren
4a79e08cae Bug 1008917 - part 2,3,4, make Reflow() return type 'void', and make a few reflow related helper methods 'void' too. r=roc 2014-05-12 17:40:28 +00:00
Jonathan Kew
3487faa35b bug 735577 - followup 1 (v2) - allow reflow-state to be passed to the reflow-metrics constructor to get the writing mode. r=roc 2013-12-31 13:50:31 +00:00
Reuben Morais
16c1e76108 Bug 458300 - Rename nsINameSpaceManager.h to nsNameSpaceManager.h. r=jst r=hsivonen 2014-02-27 20:04:46 -03:00
Arnaud Sourioux
c55abda61c Bug 919806: Get rid of NS_IMETHOD in nsIFrame.h and its implementations r=dholbert 2014-02-17 23:47:48 -08:00
Peiyong Lin
db78ce129a Bug 959874 - Reorder two parameters in nsContainerFrame::FinishReflowChild(), for consistency with nsContainerFrame::ReflowChild(). r=dholbert 2014-01-16 17:34:44 -08:00
Jonathan Kew
cef04e128a backout changeset 8b6f20bda157 (bug 735577 followup 1) for build failure 2013-12-29 22:48:13 +00:00
Jonathan Kew
d44aaf1e5a bug 735577 - followup 1 - allow reflow-state to be passed to the reflow-metrics constructor to get the writing mode. r=roc 2013-12-29 22:04:02 +00:00
Jonathan Kew
279981cdc3 bug 735577 - pt 4.1 - use accessor functions for some physical-coordinate fields in nsHTMLReflowMetrics, in preparation for logicalization. r=smontagu 2013-12-27 17:59:52 +00:00
Jonathan Kew
4796e463bc bug 735577 - pt 3.2 - update the rest of layout code to use the new accessors on nsHTMLReflowState. r=smontagu 2013-12-27 17:59:21 +00:00
Masayuki Nakano
8c4ece5434 Bug 920377 part.30 Get rid of nsGUIEvent r=roc 2013-10-02 12:46:03 +09:00
Daniel Holbert
6390bcd208 Bug 913759 part 1: Treat buttonContent frames as block wrappers, so percent heights inside a button can resolve against button's height (minus focus border/padding). r=bz 2013-09-28 10:24:00 -07:00
Daniel Holbert
0fc848f00a Bug 921174 part 5: Assert that nsHTMLButtonControlFrame has exactly one child, and it's the button-content frame. r=bz 2013-09-26 23:43:16 -07:00
Daniel Holbert
302a1b4e20 Bug 921174 part 4: Move focusPadding into ReflowButtonContents, the only place it's used now. r=bz 2013-09-26 23:43:16 -07:00
Daniel Holbert
fe93c93074 Bug 921174 part 3: Make ReflowButtonContents() use a dedicated nsHTMLReflowMetrics instance, and give it full responsibility for populating parent's metrics. r=bz 2013-09-26 23:43:16 -07:00
Daniel Holbert
1218f6a1f6 Bug 921174 part 2: Use a separate nsReflowStatus for button frame's reflow vs. button contents frame's reflow. r=bz 2013-09-26 23:43:16 -07:00
Daniel Holbert
9cd5674acf Bug 921174 part 1: Rename reflow state variables in nsHTMLButtonFrame, for clarity. r=bz 2013-09-26 23:43:15 -07:00
Ehsan Akhgari
056bbb71e7 Bug 909927 - Minimize the #includes in layout/forms; r=mats 2013-08-28 10:30:02 -04:00
Bear Travis
972c3b752a Bug 893298 - Correctly calculate button and button child's desired height to vertically center the child. r=bz 2013-07-18 14:21:47 -07:00
Ryan VanderMeulen
3434d4e43f Backed out changeset 4504582d908c (bug 843003) for Marionette failures. 2013-07-11 11:46:04 -04:00
Mounir Lamouri
823b19d96a Bug 843003 - Send events and allow :hover to apply on <button>'s children. r=bz 2013-07-11 10:30:23 -04:00
Bear Travis
4e5ed8687f Bug 835873 - Include minHeight calculation before vertically centering a button's children. r=bz 2013-07-10 10:02:47 -04:00
Robert O'Callahan
d7f7732507 Bug 841192. Part 15: Move DisplayListClipState clipping methods to AutoSaveRestore and AutoClipMultiple helper classes for safer usage. r=mattwoodrow 2013-04-05 00:36:45 +13:00
Robert O'Callahan
29d310bf8a Bug 841192. Part 14: Convert all usage of nsDisplayClip(RoundedRect) to use DisplayListClipState/DisplayItemClip. r=mattwoodrow
This patch does several things. Sorry.

In BuildDisplayList implementations, instead of wrapping display items in nsDisplayClip, we
push clip state onto the nsDisplayListBuilder and give the display items an
explicit clip when they're created.

In FrameLayerBuilder, we use the explicit clips we find on display items instead of
computing our own.

We remove nsDisplayClip and everything that depends on it.

We remove ExplodeAnonymousChildLists. With nsDisplayClip gone, and
nsDisplayOptionEventGrabber removed in a previous patch, there are no
anonymous child lists.

nsDisplayItem::TryMerge implementations need to make sure they have the same
clip before being merged.

I ripped out the part of PruneDisplayListForExtraPage that adjusts clip rects.
As far as I can tell, it isn't actually necessary.
2013-03-04 22:56:02 +13:00
Mounir Lamouri
04ea2fe1f2 Bug 839834 - Remove nsIFormControlFrame::GetFormProperty. r=bz 2013-02-18 18:21:32 +00:00
Boris Zbarsky
c0d4537026 Bug 852428 part 2. Make nsIFrame::Init infallible. r=dholbert 2013-03-19 21:47:48 -04:00
L. David Baron
ca6c366dc6 Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert
Except for the changes in:
  layout/generic/nsIFrame.h (part)
  layout/style/nsComputedDOMStyle.h (all)
  layout/style/nsRuleNode.cpp (part)
  layout/style/nsStyleContext.cpp (part)
  layout/style/nsStyleContext.h (part)
(see patch 3b in the bug), this patch was written with the sed script:
s/\<GetStyle\(Font\|Color\|List\|Text\|Visibility\|Quotes\|UserInterface\|TableBorder\|SVG\|Background\|Position\|TextReset\|Display\|Content\|UIReset\|Table\|Margin\|Padding\|Border\|Outline\|XUL\|SVGReset\|Column\)\>/Style\1/g
2013-02-16 13:51:02 -08:00
Robert O'Callahan
b18cd55753 Bug 840902. Part 2: Remove nsresults from various display list methods. r=mattwoodrow 2013-02-15 00:12:27 +13:00
Robert O'Callahan
3ac2cf9858 Bug 840902. Part 1: Stop checking the results of various display list methods. r=mattwoodrow 2013-02-15 00:08:08 +13:00
Daniel Holbert
e33c7dc5d7 Bug 836957 part 2: Remove unnecessary nsIFrame::GetSkipSides() overrides whose implementations are in .cpp files. r=mats 2013-02-04 08:17:20 -08:00
Mats Palmgren
7532b4e736 Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan 2013-01-15 13:22:03 +01:00
Alexander Surkov
9ab34aa2a6 Bug 810572, part 2.5 - rename AccType constants again, r=tbsaunde, sr=roc 2012-12-18 10:25:52 +09:00