Commit Graph

162 Commits

Author SHA1 Message Date
Simon Montagu
fc6eff9c20 Add support for unicode-bidi: -moz-plaintext in XUL. Bug 869833, r=roc 2013-11-18 17:24:16 +02:00
Simon Montagu
7eb261234c Optimize bidi resolution on blocks without mixed-direction text. Bug 646359, r=roc 2013-11-04 07:14:02 +02:00
Simon Montagu
4e9637279f Bug 936935: Mark lines dirty more accurately in Bidi resolution, r=roc 2013-11-07 16:39:49 +02:00
Ehsan Akhgari
2fb9794854 Bug 921753 - Part 1: Avoid #including nsStyleStructInlines.h in nsIFrame.h; r=roc
This patch reduces the number of files that transitively #include
gfx/2d.h from 1782 to 1582.
2013-10-01 17:00:38 -04:00
Ehsan Akhgari
0a3a2ee94a Bug 921876 - Stop #including nsIFrame.h in nsLayoutUtils.h; r=roc
This patch does the following:
* Move nsIFrame::IntrinsicSize to mozilla::IntrinsicSize so that it can
  be forward-declared.
* Move a number of templated inline nsLayoutUtils methods to nsIFrame.
* Use mozilla::layout::FrameChildListID instead of the
  nsIFrame::ChildListID typedef in nsLayoutUtils.h.
* Move nsReflowFrameRunnable to its only user, nsProgressMeterFrame.cpp.
* Make a number of functions requiring nsIFrame.h out-of-line.
* Remove the nsIFrame.h #include from nsLayoutUtils.h and add it to the
  places which require it implicitly.
2013-09-30 17:26:04 -04:00
Mats Palmgren
5a3cdd8297 Bug 919318 - Drop the Get prefix on the frame methods GetFirstContinuation, GetLastContinuation, GetFirstInFlow, GetLastInFlow and also on nsLayoutUtils::GetLastContinuationWithChild, because they never return null. r=dholbert 2013-09-25 11:42:34 +00:00
Robert O'Callahan
33cdb42706 Bug 910989. Remove nsTHashtable::Init, fallible allocation, and MT hashtables. r=ehsan,bsmedberg
--HG--
extra : rebase_source : 0787130b1814c74bfb38dc178de94022f0b2e64e
2013-09-02 20:41:57 +12:00
Ehsan Akhgari
5fa9157954 Bug 906790 - Minimize layout/base #includes; r=roc 2013-08-19 18:55:18 -04:00
Sumedh Shekhar
427e7549ee Bug 804742 - EnsureStringLength doesn't work. f=Ms2ger, r=ehsan 2013-05-08 00:52:52 +09:00
Mats Palmgren
76d90df168 Bug 866588 - Check that the frame IsBidiSplittable before changing a fluid continuation to non-fluid. r=smontagu 2013-04-30 12:37:07 +02:00
Mats Palmgren
3022251072 Bug 701504 - Null out all BidiParagraphData::mPrevFrame when starting a new block. r=smontagu 2013-04-17 22:16:14 +02:00
Joshua Cranmer
c7aade5e1f Bug 856108 - Port static analyses to clang, part 2e: use MOZ_STACK_CLASS in layout. r=mats 2013-04-11 22:20:45 -05:00
Simon Montagu
b9562c3d30 The test for bidi isolated subparagraphs should be > 0, not > 1. Bug 859093, r=roc 2013-04-08 23:25:34 -07:00
Boris Zbarsky
ca163976eb Bug 852501 part 4. Make CreateContinuingFrame infallible. r=dholbert 2013-03-19 21:47:49 -04:00
L. David Baron
822b2ca3bc 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
L. David Baron
5464b49cb0 Bug 841789, patch 2: Fix callers that are going through the style context to get style structs rather than using the nsIFrame shortcuts. r=dholbert
This is just a code simplification that I noticed while reading through
patch 1.
2013-02-15 21:38:34 -08:00
L. David Baron
63fdfec174 Bug 841789, patch 1: Rename nsIFrame::GetStyleContext() to nsIFrame::StyleContext() since it can never return null. r=dholbert
This makes it conform to our convention that getters returning pointers
that can never be null do not begin with "Get".
2013-02-15 21:38:33 -08:00
Simon Montagu
92d865dd74 Check for fluid continuations up the parent chain and make them non-fluid. Bug 818454, r=roc 2013-02-11 23:45:55 -08:00
Simon Montagu
3344ef19fe Reapply the patch from bug 722137 to fix bug 826163, r=roc, sec-approval=dveditz 2013-02-11 23:45:52 -08:00
Mats Palmgren
6c53161814 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
Chris Peterson
f913a80fc9 Bug 829344 - Part 4: Fix gcc -Wlogical-op warnings from PRBool/bool conversion. r=ehsan 2013-01-10 17:56:51 -08:00
Jonathan Kew
72558acc83 bug 818454 - backout change from bug 722137, no longer needed. r=smontagu 2012-12-12 20:55:09 +00:00
Simon Montagu
7b247cb324 Don't split inlines with bidi-isolated kids unnecessarily when they don't have siblings. Bug 793233, r=roc 2012-10-25 01:36:37 -07:00
David Zbarsky
52e0277cdc Bug 799407: Enable FAIL_ON_WARNINGS in more of layout/ r=roc 2012-10-15 01:42:40 -04:00
David Zbarsky
47da3f3432 Backout 784bb7c5ea9c (Bug 799407) for bustage 2012-10-15 02:14:34 -04:00
David Zbarsky
92d607b47a Bug 799407: Enable FAIL_ON_WARNINGS in more of layout/ r=roc 2012-10-15 01:42:40 -04:00
David Zbarsky
307c734c43 [Bug 799407] Fix build warnings in layout r=roc 2012-10-10 01:00:05 -04:00
Simon Montagu
e549b9a983 Don't forget to empty the buffer after ResolveParagraph. Bug 788086, r=roc 2012-09-04 00:46:43 -07:00
Ehsan Akhgari
0fd9123eac 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
Simon Montagu
3c9b427025 Don't split inline ancestors of bidi frames if we don't have any child frames after the split. Bug 779003, r=roc 2012-08-13 20:51:36 -07:00
Cameron McCormack
c819a0d0ac Bug 655877 - Part 16: Treat all values of display other than 'none' as 'inline' in SVG text frames. r=roc 2012-08-02 21:38:51 +10:00
Cameron McCormack
f41c8a5fe8 Bug 655877 - Part 14: Ignore float in SVG text frames. r=roc 2012-08-02 21:38:49 +10:00
Aryeh Gregor
e806eeab4f Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Mats Palmgren
730cb4085d Bug 764541. r=smontagu 2012-06-21 12:51:38 +02:00
Ryan VanderMeulen
891e38e528 Revert c39d36167b99 due to a horribly munged backout. 2012-06-10 19:44:50 -04:00
Ryan VanderMeulen
f497d31a0a Backout the bug 754202 backout due to orange. 2012-06-10 19:37:47 -04:00
Robert O'Callahan
453c373374 Bug 731293. Remove nsFrameManager parameter from nsLayoutUtils::GetParentOrPlaceholderFor. r=mats 2012-06-09 00:22:25 +12:00
Gervase Markham
ca171eec44 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Simon Montagu
2be0ebd6db Make unicode-bidi: [-moz-]plaintext apply to inline elements. Bug 746987, r=roc 2012-05-09 11:44:52 +03:00
Simon Montagu
2a08ff1378 Fix some cases where a bidi-isolated element was never going through bidi resolution. Bug 731594, r=roc 2012-05-08 09:22:38 -07:00
Simon Montagu
923520c121 Check for orphaned non-fluid continuations after deleting content. Bug 730562, r=roc 2012-03-21 16:50:54 -07:00
Simon Montagu
80800656c5 Check for orphaned fluid continuations after deleting content. Bug 726460, r=roc 2012-03-21 16:50:37 -07:00
Simon Montagu
a2edafefab 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
Mats Palmgren
66e9a4a3fe Bug 728908 - Make the Overflow lines property have both a nsLineList and a nsFrameList for fast access to the last frame, eliminate SetNextSibling calls, and to support GetChildList(kOverflowList). part 1/2 r=bz 2012-03-08 02:57:37 +01:00
Nathan Froyd
72e8d1d540 Bug 731615 - Eliminate duplicate headers in layout. rs=smontagu 2012-02-29 10:57:47 -05:00
Jonathan Kew
0e0a92e8c9 bug 721821 - make nsBidiPresUtils::WriteReverse aware of clusters, so that diacritics in RTL text display correctly in SVG text. r=smontagu 2012-02-28 21:24:04 +00:00
Simon Montagu
b1f39a7cfb Treat <wbr> like ZERO WIDTH SPACE during bidi resoltion. Bug 729047, r=ehsan 2012-02-25 23:12:55 -08:00
Jonathan Kew
d4399166e5 bug 724826 pt 1 - move various Unicode property tables from gfx to intl. r=smontagu
--HG--
rename : gfx/thebes/gfxUnicodeProperties.h => intl/unicharutil/public/nsUnicodeProperties.h
rename : gfx/thebes/gfxUnicodeScriptCodes.h => intl/unicharutil/public/nsUnicodeScriptCodes.h
rename : gfx/thebes/gfxUnicodeProperties.cpp => intl/unicharutil/src/nsUnicodeProperties.cpp
rename : gfx/thebes/gfxUnicodePropertyData.cpp => intl/unicharutil/src/nsUnicodePropertyData.cpp
rename : gfx/thebes/genUnicodeScriptData.pl => intl/unicharutil/tools/genUnicodePropertyData.pl
2012-02-24 10:15:46 +00:00
Simon Montagu
2aa4cce792 Make elements with unicode-bidi: plaintext and no strong directional characters default to left-to-right. Bug 726420, r=ehsan 2012-02-22 00:30:32 -08:00
Simon Montagu
bcbbe9a509 Remove unnecessary test for next sibling. Bug 722137, r=roc 2012-01-30 11:05:28 -08:00