c3433c49b31df89338e43b660e4e1d1f1d9c8083: Bug 1344629 - Part 6.5: Allow get() on nsLiteralStrings, excluding temporaries. r=dbaron
David Major <dmajor@mozilla.com> - Tue, 14 Mar 2017 15:26:36 +1300 - rev 347456
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1344629 - Part 6.5: Allow get() on nsLiteralStrings, excluding temporaries. r=dbaron This prevents the antipattern found in bug 1341513. MozReview-Commit-ID: JhxgC7aQDUA
ac66fac84e17d414860f495cffe7e3ffef70cac7: Bug 1344629 - Part 6: Rewrite unnecessary uses of nsLiteralString. r=dbaron
David Major <dmajor@mozilla.com> - Tue, 14 Mar 2017 15:26:27 +1300 - rev 347455
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1344629 - Part 6: Rewrite unnecessary uses of nsLiteralString. r=dbaron There's an antipattern where nsLiteralString is used as an unnecessary intermediary in converting from CharT* to CharT*, e.g. CallAFunctionThatTakesACharPointer(NS_LITERAL_CSTRING("foo").get()); or NS_NAMED_LITERAL_STRING(foo, "abc"); CallAFunctionThatTakesACharPointer(foo.get()); This patch rewrites the callsites that can be trivially changed to use char*/char16_t*. I'd somewhat like to remove nsTLiteralString::get() altogether, but in code that's less straightforward than these examples, get() is useful enough to keep. MozReview-Commit-ID: Kh1rUziVllo
62898bbb64d50913ecd5ed8ae66f1c797aae6b01: Bug 1344629 - Part 5: Make string tuples work with nsTStringRepr. r=dbaron
David Major <dmajor@mozilla.com> - Tue, 14 Mar 2017 10:04:15 +1300 - rev 347454
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1344629 - Part 5: Make string tuples work with nsTStringRepr. r=dbaron This requires some adjustment to Equals(). Previously, when you wrote: fooString.Equals(barString + bazString) you'd get a tuple for the operator+, which implicitly converts to nsTSubstring, which resolves into nsTSubstring::Equals(const nsTSubstring&). Now that Equals has moved one level up: nsTStringRepr::Equals(const nsTStringRepr&) The compiler can't make the double-leap from nsTSubstringTuple -> nsTSubstring -> nsTStringRepr. So I implemented this manually. MozReview-Commit-ID: 5x8XhndOToJ
e7bf771e880277cd09e761094b2ff0e745505b74: Bug 1344629 - Part 4: Cleanup: make string tuples not think in terms of "substring". r=dbaron
David Major <dmajor@mozilla.com> - Tue, 14 Mar 2017 10:02:55 +1300 - rev 347453
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1344629 - Part 4: Cleanup: make string tuples not think in terms of "substring". r=dbaron In the next patch, tuples will work on nsTStringRepr rather than nsTSubstring, so the notions of TO_SUBSTRING and substring_type are not quite right. MozReview-Commit-ID: LpUwmGQAWVO
485e1632ef228d3dd621c5f4ae297795335a5dc1: Bug 1344629 - Part 3: Move const accessors from nsTSubstring to nsTStringRepr. r=dbaron
David Major <dmajor@mozilla.com> - Tue, 14 Mar 2017 10:02:50 +1300 - rev 347452
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1344629 - Part 3: Move const accessors from nsTSubstring to nsTStringRepr. r=dbaron All nsTStringRepr methods must be const, so the mutators remain on nsTSubstring. I left a small number of const methods on nsTSubstring, e.g. Capacity(), the rationale being that you would only be interested in this method if you intend to mutate the string. I considered splitting up the typedefs block and leaving behind the ones related to mutation (e.g. nsWritingIterator) but I think it makes for clearer documentation to have them all in one place. MozReview-Commit-ID: 7dEaRgc8NLK
271be9871274124c392acab68a972408e3c99be5: Bug 1344629 - Part 2: Add nsTStringRepr as the new root of the string hierarchy. r=dbaron
David Major <dmajor@mozilla.com> - Tue, 14 Mar 2017 10:01:35 +1300 - rev 347451
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1344629 - Part 2: Add nsTStringRepr as the new root of the string hierarchy. r=dbaron I've named it after the similar ns(C)StringRepr in the rust bindings code. This is just the minimal definition of the structure. Bulk move of methods coming in next patch. MozReview-Commit-ID: 4aQrpIWRTm7
19faa6195bc9576089a3d9a6a5561ad2efe6f91c: Bug 1344629 - Part 1: String class cleanup and dead code removal. r=dbaron
David Major <dmajor@mozilla.com> - Tue, 14 Mar 2017 09:28:49 +1300 - rev 347450
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1344629 - Part 1: String class cleanup and dead code removal. r=dbaron Cleanup in preparation for upcoming patches: - By using an accessor method, nsTPromiseFlatString no longer needs to be a friend. - The explicit uint32_t constructors are unused. - The abstract_string_type typedef is unused (and will be potentially confusing in the next patch, so removing). - The three-param ctor for nsTSubstring no longer needs to be public "for convenience". - friend class nsTObsoleteAStringThunk_CharT no longer exists. MozReview-Commit-ID: 4ibJLNzn13k
7f2bc502c93e2eef578f410789584c1bb444348c: servo: Merge #15935 - Binding update (from upsuper:binding-update); r=Wafflespeanut
Xidorn Quan <me@upsuper.org> - Mon, 13 Mar 2017 22:00:40 -0700 - rev 347449
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
servo: Merge #15935 - Binding update (from upsuper:binding-update); r=Wafflespeanut Source-Repo: https://github.com/servo/servo Source-Revision: f90e19f7055387a14cabdf11f77335c7763e3fb7
266bc832c3432477c3eeb8f7a3ef447943e1843d: Bug 1346913 - rewrite waitForRtpFlow using async await;r=jib
Nico Grunbaum - Mon, 13 Mar 2017 12:54:04 -0700 - rev 347448
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1346913 - rewrite waitForRtpFlow using async await;r=jib MozReview-Commit-ID: AJq3x73ahwp
22e1a32de5b88f1f56a156aefa95614b5cda204c: Bug 1318312 part.3 Selection should move focus at every selection change when it's called by JS r=smaug
Masayuki Nakano <masayuki@d-toybox.com> - Tue, 14 Mar 2017 10:36:21 +0900 - rev 347447
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1318312 part.3 Selection should move focus at every selection change when it's called by JS r=smaug Selection may be changed by methods of Selection or methods of Range retrieved by Selection.getRangeAt(). Selection::NotifySelectionListeners() is called after every selection change of each of them, so, this method must be a good point to move focus. If new common ancestor of all ranges is editable and in an editing host, we should move focus to it. Otherwise, if an editing host has focus but new common ancestor is not editable, we should move focus from the editing host. For consistency with the other browsers, this patch doesn't move focus to other focusable element. MozReview-Commit-ID: 6sNsuzwqECX
7d9c30109c503ebe473747814d405bcf74ad79eb: Bug 1318312 part.2 Mark Selection as "called by JS" when every Selection API which may cause changing selection is called by JS r=smaug
Masayuki Nakano <masayuki@d-toybox.com> - Fri, 10 Mar 2017 16:55:12 +0900 - rev 347446
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1318312 part.2 Mark Selection as "called by JS" when every Selection API which may cause changing selection is called by JS r=smaug Selection needs to be able to distinguish if every selection change is caused by JS (i.e., via Selection API) or the others. This patch maps some methods of Range and Selection to *JS(). Each of them marks its instance as "used by JS" and calls corresponding method. With this change, Selection::NotifySelectionListeners() can move focus only when it's caused by Selection API. MozReview-Commit-ID: 1GoLHiIJ10Y
cd7fe05266195ae4ec795bf5b7174ad41ce793c9: Bug 1318312 part.1 Add automated tests for checking focus move at using Selection API r=smaug
Masayuki Nakano <masayuki@d-toybox.com> - Mon, 13 Mar 2017 22:30:28 +0900 - rev 347445
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1318312 part.1 Add automated tests for checking focus move at using Selection API r=smaug Adding automated tests as web platform tests (only for mozilla) for focus move at using Selection API. Although, there is no standards of relation between Selection API and focus, we should move focus when Selection API moves selections into only an editing host or outside of focused editing host. Chrome moves focus as this rules, therefore, user can modify contenteditable editor immediately after web app moves selection. Edge does NOT move focus at using Selection API. However, user can modify contenteditable editor similar to Chrome. We can guess that Edge doesn't need to move focus in its design because perhaps, Edge decides if it's editable only with primary selected range. We cannot take the Edge behavior due to our editor design. So, we can take only Chrome's approach for improving the compatibility. MozReview-Commit-ID: JuLiSMgqODm
5d0ce2805e5b0fe5f941c804caf2675e0ed73a5f: Bug 1302888 - Replace GetPresContext() with nsContentUtils::GetContextForContent() to obtain nsPresContext* in dom/animation r=hiro
BharatR123 <bharatraghunthan9767@gmail.com> - Mon, 13 Mar 2017 20:39:49 +0530 - rev 347444
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1302888 - Replace GetPresContext() with nsContentUtils::GetContextForContent() to obtain nsPresContext* in dom/animation r=hiro Edited all function calls in KeyFrameEffectReadOnly.cpp and one function call in EffectCompositor.cpp MozReview-Commit-ID: BzSHLZna4xX
7a5276126c9419c4ffc4775bb979bc2a7e385cce: Bug 1341102 - Update stylo test expectations.
Xidorn Quan <me@upsuper.org> - Tue, 14 Mar 2017 15:01:42 +1100 - rev 347443
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1341102 - Update stylo test expectations.
8d1f842be870197a94b4c1538ddfe9d9d357b79f: Backed out 12 changesets (bug 1344629) for stylo build bustage
Iris Hsiao <ihsiao@mozilla.com> - Tue, 14 Mar 2017 11:52:24 +0800 - rev 347442
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Backed out 12 changesets (bug 1344629) for stylo build bustage Backed out changeset cf4273d3ac30 (bug 1344629) Backed out changeset a96390e044e0 (bug 1344629) Backed out changeset d9b330f9bc24 (bug 1344629) Backed out changeset 2b460fe020af (bug 1344629) Backed out changeset 0ada91b0452e (bug 1344629) Backed out changeset 083304fcd6bd (bug 1344629) Backed out changeset 53d7d1ce2c97 (bug 1344629) Backed out changeset 55eee7078ae4 (bug 1344629) Backed out changeset 7d3c06b3eca9 (bug 1344629) Backed out changeset e5df14c3db61 (bug 1344629) Backed out changeset 636095ff2815 (bug 1344629) Backed out changeset 0be052ad24c1 (bug 1344629)
4c62935c570fa37a3a0807d068e22565acb1f069: Bug 1347007 - Register with the profiler after doing so for the ThreadManager. r=njn
Blake Kaplan <mrbkap@gmail.com> - Mon, 13 Mar 2017 15:03:24 -0700 - rev 347441
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1347007 - Register with the profiler after doing so for the ThreadManager. r=njn MozReview-Commit-ID: 6gtDxmlgOta
cf4273d3ac30ee8e9320ef1f70a6fd097ef3c7b8: Bug 1344629 - Part 10: Bonus fix: Remove NS_LITERAL_STRING_INIT macros. r=dbaron
David Major <dmajor@mozilla.com> - Tue, 14 Mar 2017 15:26:37 +1300 - rev 347440
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1344629 - Part 10: Bonus fix: Remove NS_LITERAL_STRING_INIT macros. r=dbaron As of the previous patch, these are now unused and aren't really buying us much. MozReview-Commit-ID: HGliIFAcBb7
a96390e044e0e82051335ad050222d1db73da65a: Bug 1344629 - Part 9: Bonus fix: Remove heap allocation in nsChromeTreeOwner. r=dbaron
David Major <dmajor@mozilla.com> - Tue, 14 Mar 2017 15:26:37 +1300 - rev 347439
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1344629 - Part 9: Bonus fix: Remove heap allocation in nsChromeTreeOwner. r=dbaron Now that nsLiteralStrings are "free", they can just be static globals. MozReview-Commit-ID: 4d4ZObxiHF8
d9b330f9bc245c8bea3333aef3d47e1454d47180: Bug 1344629 - Part 8: Make nsTLiteralString inherit from nsTStringRepr. r=dbaron
David Major <dmajor@mozilla.com> - Tue, 14 Mar 2017 15:26:36 +1300 - rev 347438
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1344629 - Part 8: Make nsTLiteralString inherit from nsTStringRepr. r=dbaron This is the patch that all the others have been leading up to: by inheriting from nsTStringRepr, nsTLiteralString loses its destructor (previously suppplied by nsTSubstring). I included an AsString() cast as an escape hatch for a few pieces of code that couldn't easily accommodate the new hierarchy, but I'm pretty pleased with how little it was necessary. MozReview-Commit-ID: 2zGkaw1sMUp
2b460fe020afba0b8e3bee63dbab781e63350ef2: Bug 1344629 - Part 7.5: Add constructors for jni::StringParam that accept literal strings. r=dbaron
David Major <dmajor@mozilla.com> - Tue, 14 Mar 2017 15:26:36 +1300 - rev 347437
Push 31496 by cbook@mozilla.com at Tue, 14 Mar 2017 13:21:57 +0000
Bug 1344629 - Part 7.5: Add constructors for jni::StringParam that accept literal strings. r=dbaron MozReview-Commit-ID: 8vSf7TGwPmD
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 tip