Граф коммитов

8148 Коммитов

Автор SHA1 Сообщение Дата
Wes Kocher baf6cddc4c Merge inbound to central, a=merge
MozReview-Commit-ID: 9NFjSEt96iT
2017-08-02 17:11:51 -07:00
Olli Pettay 1c8b827d25 Bug 1371657 - Ensure editing UI is hidden when disabling editing. r=masayuki
--HG--
extra : rebase_source : cf83e8ac6662d15d15ca986f709d89edc87af28e
2017-08-02 14:04:05 -04:00
Makoto Kato d7503476f0 Bug 699703 - Part 2. SetSelectionAfterTableEdit should check whether editor is destroyed. r=masayuki
After reframe, SetSelectionAfterTableEdit might be called from RAII class, so we should check whether editor is destroyed.

MozReview-Commit-ID: I4r6kvxgRDZ

--HG--
extra : rebase_source : 4bd71775f02f57573af0f0efd5c1946285e4e4f4
2017-08-01 16:34:17 +09:00
Makoto Kato 9b683468d5 Bug 699703 - Need reframe before calling SetSelectionAfterTableEdit. r=masayuki
HTMLEditor::TabInTable inserts row element, then it selects a cell.  But when enabling lazy frame construction for editable node, it selects invalid cell and table.

Because HTMLEditor::SetSelectionAfterTableEdit doesn't select cell correctly on InsertTableRow().

HTMLEditor::SetSelectionAfterTableEdit uses HTMLEditor::GetCellAt, so it depends on frame.  So we need flush frame before calling it.

Also, a comment of HTMLEditor::InsertTableRow is invalid now because we don't use nsresult version of CreateElementWithDefualts.

MozReview-Commit-ID: 698TvmMZgwB

--HG--
extra : rebase_source : 95df12f1f870a2c68d02b24b8758dfe6d381a416
2017-07-14 15:48:40 +09:00
Ehsan Akhgari 22aa56b6cd Bug 1386222 - Ensure that we always respect the undo/redo transaction history when modifying the <xul:textbox>.value dynamically through script; r=bzbarsky 2017-08-01 13:59:45 -04:00
Ehsan Akhgari 30d4df5778 Bug 1385538 - Avoid dynamic memory allocation for EditorBase::mSelState; r=masayuki 2017-07-31 14:13:47 -04:00
Ehsan Akhgari f3a8bf3251 Bug 1385525 - Part 2: Make SetTextTransaction lighter weight by making it a normal C++ class allocated on the stack; r=masayuki
This avoids the cost of allocation on the heap and cycle collection,
and removes some dead code.
2017-07-31 14:12:12 -04:00
Ehsan Akhgari 18170165f0 Bug 1385525 - Part 1: Speed up EditorBase::SetTextImpl() by actually bypassing all of the editor transaction management machinery; r=masayuki 2017-07-31 14:10:50 -04:00
Ehsan Akhgari e64f31b735 Bug 1385514 - Part 2: Replace 'spaz' with 'change' in the editor code 2017-07-31 11:20:38 -04:00
Ehsan Akhgari 5c7a6f8e12 Bug 1385514 - Part 1: Make SetTextTransaction a selection preserving transaction; r=masayuki
This makes the SetTextTransaction transaction behave more similarly to the rest of
the editor transactions, by making sure the inner transactions don't manipulate
the selections themselves and leave it up to the AfterEdit() method to take care of
adjusting the selection when the entire editing operation is finished.
2017-07-31 11:20:38 -04:00
Ehsan Akhgari 1eb17afc4f Bug 1385392 - Avoid needlessly looking up the selection twice when DoTransaction() is called from TextEditRules::WillSetText(); r=masayuki 2017-07-31 10:57:10 -04:00
Ehsan Akhgari 423b388329 Bug 1385384 - Don't store mPlaceholderTransactionWeak as a weak pointer; r=masayuki 2017-07-31 10:55:22 -04:00
Sebastian Hengst 915c63c332 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-07-31 11:28:37 +02:00
Nicholas Nethercote 72c884bf74 Bug 1384835 (part 3, attempt 2) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj.
--HG--
extra : rebase_source : d317b25be2ec21d1a60d25da3689e46cdce0b649
2017-07-31 14:28:48 +10:00
Nicholas Nethercote d4f9aa5530 Bug 1384835 (part 2, attempt 2) - Remove the Preferences::Get*String() variants that return nsAdoptingString. r=froydnj.
--HG--
extra : rebase_source : 6c24fbacb03d4adebe5f22b5e7fc60b069913f20
2017-07-31 14:23:50 +10:00
Nicholas Nethercote 581214bd8b Bug 1384835 (part 1, attempt 2) - Use nsA[C]String references instead of pointers for outparams of Get*String() pref functions. r=froydnj.
--HG--
extra : rebase_source : fe566945a55c281d8290634a5b55bed19415c839
2017-07-31 10:52:51 +10:00
Makoto Kato 2652b1c5d2 Bug 1385749 - Move test_bug795418-*.html to subsuite=clipboard. r=masayuki
test_bug795418-*.html depends on clipboard.  But these tests aren't subsuite=clipboard and are sometimes failure (bug 1334700, bug 1335221, bug 1339430, bug 1343883 and bug 1348093).  So we should move these to subsuite=clipboard to try fixing this.

MozReview-Commit-ID: 1m5dFGZ18a

--HG--
extra : rebase_source : 847b1b7842c32e93c61b8ee572cff16c70adc323
2017-07-31 11:58:41 +09:00
Makoto Kato 3d4f2d6fdc Bug 1383755 - Part 2. Add crash test for object resizer. r=masayuki
MozReview-Commit-ID: WLyLl5vIj0

--HG--
extra : rebase_source : c1166eefe7787761346e6bad069b34dcb42c94e7
2017-07-27 18:21:27 +09:00
Makoto Kato 44c1ed6949 Bug 1383755 - Part 1. NAC property might be removed by nsIDocument::AdoptNode. r=masayuki
nsIDocument::AdoptNode might to remove all properties.  So before destroying editor, NAC property might be already removed.  So we have to consider that NAC is removed.

MozReview-Commit-ID: DakRRqrzEtF

--HG--
extra : rebase_source : ce972f1b42b6ff7efdf09b9a70cc1a9d27f128fb
2017-07-31 12:56:34 +09:00
Kyle Machulis d812ac4e87 Bug 1279218 - Additional applet tag logic removal; r=bz
I've been having problems with interdiffs on mozreview lately, so for
ease of review, this patch is being submitted as a seperate patch for
review. Once it is r+'d, it will be folded into the first patch in
this set before landing.

MozReview-Commit-ID: CS9MngaXlBd

--HG--
extra : rebase_source : 6a86fd4f7a66e73497a756976a2562d183002a2a
2017-07-28 16:44:39 -07:00
Christoph Kerschbaumer db40f0ec94 Bug 1385240 - Update editor/libeditor/tests/test_bug635636.html to comply with new data: URI inheritance model. r=masayuki 2017-07-28 13:34:24 +02:00
Carsten "Tomcat" Book 892bedca2e merge mozilla-inbound to mozilla-central a=merge 2017-07-28 15:24:39 +02:00
Sebastian Hengst d7527a414d Backed out changeset 07b534f44740 (bug 1384835) for failing xpcshell's security/manager/ssl/tests/unit/test_cert_sha1.js checkCertErrorGenericAtTime on Linux x64 debug. r=backout 2017-07-28 10:30:29 +02:00
Sebastian Hengst 1d708511f0 Backed out changeset 5df4d8778602 (bug 1384835) 2017-07-28 10:29:29 +02:00
Sebastian Hengst 744a0a216b Backed out changeset ef5feef07bed (bug 1384835) 2017-07-28 10:29:24 +02:00
Carsten "Tomcat" Book 28bdd40776 Merge mozilla-central to mozilla-inbound 2017-07-28 09:48:24 +02:00
Carsten "Tomcat" Book 2ff6df9177 Backed out changeset 5198322f7a62 (bug 1351148) 2017-07-28 09:20:20 +02:00
Carsten "Tomcat" Book 6aa98d7df0 Merge mozilla-central to autoland 2017-07-28 09:50:36 +02:00
Nicholas Nethercote 200d8ec18b Bug 1384835 (part 3) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj.
This is similar like the previous patch, but for the 8-bit string variants.
Also, it changes assignment to Adopt() in GetCString() and GetDefaultCString()
to avoid an extra copy.

--HG--
extra : rebase_source : eba805c3a7b809d5ccd6e853b1c9010db9477667
2017-07-27 16:45:10 +10:00
Nicholas Nethercote 0574a6b496 Bug 1384835 (part 2) - Remove the Preferences::Get*String() variants that return nsAdoptingString. r=froydnj.
Because we want to remove nsAdoptingString. We have other variants that don't
use nsAdoptingString, which can be used instead. There are three basic
patterns.

1. The easiest case is when we don't check for success.

> nsAdoptingString s = Preferences::GetString("foo");
> foo(s);

becomes:

> nsAutoString s;
> Preferences::GetString("foo", s);
> foo(s);

2. The next case is when we check if the result is empty.

> nsAdoptingString s = Preferences::GetString("foo");
> if (s.IsEmpty()) { ... }

becomes:

> nsAutoString s;
> Preferences::GetString("foo", s);
> if (s.IsEmpty()) { ... }

3. The final case is when we null check the result.

> nsAdoptingString s = Preferences::GetString("foo");
> if (s) { ... }

becomes:

> nsAutoString s;
> nsresult rv = Preferences::GetString("foo", s);
> if (NS_SUCCEEDED(rv)) { ... }

The patch also avoids some UTF8/UTF16 conversions in a few places.

--HG--
extra : rebase_source : f339b1a3dda4dc93979d38c30c001fbe77485b55
2017-07-25 20:36:14 +10:00
Nicholas Nethercote f314cbcbe5 Bug 1384835 (part 1) - Use nsA[C]String references instead of pointers for outparams of Get*String() pref functions. r=froydnj.
This is basically a cosmetic change; references are the normal way to do string
outparams.

--HG--
extra : rebase_source : ffc5945f269bdcd3d4116755b56713e87a44b6cd
2017-07-25 19:12:56 +10:00
Julian Seward 408d24da56 Bug 1382563 - Remove ns*String::AssignWithConversion. r=erahm.
This patch replaces four functions of the name AssignWithConversion which
are essentially wrappers around CopyASCIItoUTF16 and LossyCopyUTF16toASCII
with direct calls to the latter two functions.  The replaced functions are:

  void nsCString::AssignWithConversion( const nsAString& aData )
  void nsString::AssignWithConversion( const nsACString& aData )

  void nsTString_CharT::AssignWithConversion(
                            const incompatible_char_type* aData,
                            int32_t aLength = -1);

The last of the three exists inside the double-included nsTString* world and
so describes two functions, giving four in total.

This has two advantages:

* it removes code

* at the call points, it makes clear (from the replacement name) which
  conversion is being carried out.  The generic name "AssignWithConversion"
  doesn't make that obvious -- one had to infer it from the types.

The patch also removes two commented out lines from
editor/composer/nsComposerCommands.cpp, that appear to be related.  They are
at top level, where they would never have compiled.  They look like
leftovers from some previous change.

--HG--
extra : rebase_source : fb47bf450771c3c9ee3341dd14520f5da69ec4f5
2017-07-24 19:23:52 +02:00
J. Ryan Stinnett c79cb3fbb1 Bug 1380053 - Stylo reftest annotations for all OSes. r=manishearth
MozReview-Commit-ID: JNsNUOZfd2e

--HG--
extra : rebase_source : 05a71f9a0fe484c93931fb230cf0752a3b1b8b00
2017-07-20 22:02:00 -05:00
Bevis Tseng 95b18d794e Bug 1382172 - Name nsITimerCallback instances in native implementation. r=billm
--HG--
extra : rebase_source : 84de1abfcc30a6964144c2e6718a508c71027b65
2017-07-27 02:18:20 +08:00
Bevis Tseng a7505864a8 Bug 1378930 - Part 2: Remove the aName parameter from SchedulerGroup/DocGroup/DispatcherTrait. r=billm
--HG--
extra : rebase_source : 11319e568a51d16754a6a9990f76c35c86c2bda7
2017-07-26 16:13:35 +08:00
Ehsan Akhgari b0411401ec Bug 1386480 - Make RangeItem a non-cycle-collectable type; r=masayuki 2017-08-14 12:14:34 -04:00
Ehsan Akhgari 3e77f9859e Bug 1387522 - Avoid using nsINode::GetChildAt() in HTMLStyleEditor.cpp; r=masayuki
This method will become a lot slower when bug 651120 lands.
2017-08-14 12:02:33 -04:00
Bobby Holley 1bd3bc937c Bug 1386110 - Use a smart pointer to reliably de-register NAC regardless of how it goes away. r=masayuki
MozReview-Commit-ID: HTSu5BjxD8I
2017-08-03 20:26:11 -07:00
Xidorn Quan 137ea130e8 Bug 1383780 - Avoid adding anonymous editor element into non-HTML element. r=masayuki
It is mainly for avoiding other anonymous element being inserted into
<svg:use>, but in general we probably don't want to insert some random
HTML anonymous element into a non-HTML element.

MozReview-Commit-ID: J5kCUzA7K90

--HG--
extra : rebase_source : 1d38cd9297071b9ba8151eb27d74b56ad540cc49
2017-08-03 14:23:38 +10:00
Carsten "Tomcat" Book 679210723b merge mozilla-inbound to mozilla-central a=merge 2017-07-25 14:27:17 +02:00
Cameron McCormack 7b2f841ea9 Bug 1383988 - stylo: Ensure editor handle elements are styled before attempting to construct frames for them. r=hiro
MozReview-Commit-ID: 2T0ZjP00U7A

--HG--
extra : rebase_source : 02e527baac50c2267afb3ed199aee91e72a08b02
2017-07-25 14:08:19 +08:00
Yoshi Huang 7036b3761f Bug 1382531 - Part 1: rewrite crashtest for data: URI is unique opaque origin. r=smaug 2017-07-25 09:56:02 +08:00
Wes Kocher d45eb771f0 Merge m-c to inbound, a=merge
MozReview-Commit-ID: Ah48RzFU8Mt
2017-07-21 18:20:46 -07:00
Wes Kocher 051dc17e6c Merge inbound to central, a=merge CLOSED TREE
MozReview-Commit-ID: GYc8r8gnS0j
2017-07-21 18:12:55 -07:00
Ryan VanderMeulen f4e3a91992 Merge m-c to inbound. a=merge 2017-07-21 09:40:28 -04:00
Sylvestre Ledru 7c0ae251cd Bug 1381253 - Remove redundant control flow declarations rs=ehsan
MozReview-Commit-ID: FFxP4aMCbOL

--HG--
extra : amend_source : 3aec108430b11048f47ffe19d5da7ac5034770a9
2017-07-15 19:03:04 +02:00
Ehsan Akhgari 2ee7157f0e Bug 1383079 - Don't AddRef() the editor root node in TextEditRules::WillOutputText(); r=masayuki 2017-07-21 13:37:47 -04:00
Makoto Kato 256e9a6424 Bug 1359345 - HTMLEditor::IsVisBreak() should be renamed to HTMLEditor::IsVisibleBRElement(). r=masayuki
MozReview-Commit-ID: 2KqRauu10QE

--HG--
extra : rebase_source : 36a42d6c7d13d1eb9ba570fc0e99fcd2570e6f9b
2017-07-21 16:10:10 +09:00
Stone Shih a5bccae405 Bug 1351148 Part4: Revise those test cases that have some tasks have to be processed before or after the synthesized key events. r=smaug.
Make sure input events are processed before or after the dependent tasks.

MozReview-Commit-ID: 8KfZnT2wjJR
2017-06-07 14:28:16 +08:00
Masayuki Nakano 2f92264fb7 Bug 1377978 - Make nsRange use uint32_t to offset r=smaug
DOM Standard defines that offset of Range is unsigned long.  However, nsRange uses int32_t to them.

This patch makes nsRange use uint32_t instead.  However, this patch does NOT allow to set over INT32_MAX as offset values since a lot of users of nsRange cannot treat the values as over INT32_MAX because a lot of internal APIs take int32_t as offsets.

For easier to search such points, this patch adds static_cast<int32_t> to uint32_t variables when they are used for int32_t arguments.

And note that nsContentUtils::ComparePoints() behaves odd.  It accepts negative offset and compares such value with valid offset simply.  This patch still uses int32_t offset variables in nsRange::CompareNodeToRange() even though it may be negative value if nsINode::IndexOf() returns -1 because the caller of it depends on this behavior.

MozReview-Commit-ID: 8RbOgA86JuT

--HG--
extra : rebase_source : 46d526c6d50dfa2f104439b19b8691477b17a4af
2017-07-19 22:49:52 +09:00
Christoph Kerschbaumer 0d84b0bb91 Bug 1380717 - Updates more tests within editor/ to comply with new data: URI inheritance model. r=masayuki 2017-07-14 12:14:23 +02:00
Jorg K 4c39632f57 Bug 1397412 - Implement Mochitest for EditorBase::FindBetterInsertionPoint() in plaintext editor. r=ehsan 2017-09-07 12:36:00 -04:00
Sebastian Hengst 01d8f75040 Backed out changeset f42e4a61d6a5 (bug 1397656) for failing modified mochitest test_bug966552.html. r=backout 2017-09-07 22:59:03 +02:00
Christoph Kerschbaumer 1514476a89 Bug 1397656 - Update tests within editor/ to comply with new toplevel data: URI navigation policy. r=masayuki 2017-09-07 12:51:08 +02:00
Carsten "Tomcat" Book 0edfa97e38 merge mozilla-inbound to mozilla-central a=merge 2017-07-12 11:07:09 +02:00
Yoshi Huang 71b8c7686e Bug 1377492 - fix mochitest-1 failure in docshell when data: URI is a unique origin. r=smaug
When we turn on the pref security.data_uri.unique_opaque_origin to make
data URI is unique origin, the following tests will fail because now
data document is treated as cross origin, so we replace data URIs with
seperate files, hence it will still in the same origin.
2017-07-12 10:35:54 +08:00
Makoto Kato 86506e2303 Bug 1345015 - Part 3. Add crash test. r=masayuki
Add minimal crash test for this.  When removing a line, this doesn't occur.

MozReview-Commit-ID: JqS2E8q47ML

--HG--
extra : rebase_source : 322a77cbc49e29bbd6b705650485634dd4801b8b
2017-06-19 16:52:05 +09:00
Makoto Kato 80cc72a583 Bug 1345015 - Part 2. Don't promote range when selection node isn't content. r=masayuki
When using EditAction::insertBreak action, if selection node isn't content, this crash occurs.  So we should reject to promote range when it isn't content node.

MozReview-Commit-ID: AJ4oEOmRTgm

--HG--
extra : rebase_source : 04c4e4a2e04a0d0a058eb86fdfde0005edb681a9
2017-07-10 16:17:06 +09:00
Makoto Kato 67b25bae62 Bug 1345015 - Part 1. Clean up GetPromotedPoint. r=masayuki
GetPromotedPoint still uses nsIDOMNode, so we should use nsINode etc instead for clean up.

MozReview-Commit-ID: 4efe46iU7lC

--HG--
extra : rebase_source : bb13c4531fb76684d4baf13e24dc777d79c2ad61
2017-07-10 17:35:26 +09:00
Olli Pettay e0ed9babb5 Bug 1376382, key event handling is asynchronous, try to fix test to be more async too, r=masayuki 2017-07-08 17:23:08 +03:00
Christoph Kerschbaumer 7e850103a5 Bug 1377861 - Update reftests to comply with new data: URI inheritance model. r=smaug 2017-07-07 11:27:36 +02:00
Masayuki Nakano 33d778a999 Bug 1377989 - part12: Rename local variables, |endParent| which is set to start container of nsRange to |endContainer| r=smaug
This does NOT change variable names like |endNode| because it's not odd and somebody use it for nsINode and endContent for nsIContent.  So, changing them needs more work.

MozReview-Commit-ID: 22imUltlu5R

--HG--
extra : rebase_source : 6c93069d0586b37c5084eaa71861085c01da7a7d
2017-07-12 00:08:37 +09:00
Masayuki Nakano 3fd54e5d5f Bug 1377989 - part11: Rename local variables, |startParent| which is set to start container of nsRange to |startContainer| r=smaug
This does NOT change variable names like |startNode| because it's not odd and somebody use it for nsINode and startContent for nsIContent.  So, changing them needs more work.

MozReview-Commit-ID: H19pTDprRuT

--HG--
extra : rebase_source : 7a7454ac14da48a597ff19a50c863d04dcaddd6e
2017-07-12 00:02:14 +09:00
Masayuki Nakano b1f8f6d611 Bug 1377989 - part10: Rename local variables, |parent| which is set to container of nsRange to |container| r=smaug
MozReview-Commit-ID: 9w3O7MJEDBS

--HG--
extra : rebase_source : 92194bd18c9e79210c7cb4e9835a528d51e8ba7a
2017-07-11 23:52:39 +09:00
Masayuki Nakano 8ac3f6520d Bug 1377989 - part9: Rename aEndParent and aEndNode related to nsRange to aEndContainer r=smaug
MozReview-Commit-ID: 8XJbHfsg2hu

--HG--
extra : rebase_source : 0ee22f0b0cf5fd8c0a8fea610c54be8492436488
2017-07-12 00:09:37 +09:00
Masayuki Nakano 4af6e5d4a7 Bug 1377989 - part8: Rename aStartParent and aStartNode related to nsRange to aStartContainer r=smaug
MozReview-Commit-ID: H3wzW7eaQBg

--HG--
extra : rebase_source : 90aa8e2a20a0de27a1598925d8c70186463333cf
2017-07-11 23:10:42 +09:00
Masayuki Nakano dd7bcc05ab Bug 1377989 - part6: Rename mEndParent of nsRange and similar members of similar objects to mEndContainer r=smaug
MozReview-Commit-ID: KOcajaTv5ga

--HG--
extra : rebase_source : c1fac0fd8aebf02d0623eb291d914b4ac1fd7065
2017-07-11 22:57:55 +09:00
Masayuki Nakano 4ff0c2334b Bug 1377989 - part5: Rename mStartParent of nsRange and similar members of similar objects to mStartContainer r=smaug
MozReview-Commit-ID: 5QJahMKnKEJ

--HG--
extra : rebase_source : 0b4aee62fcd70574b3dc44e05392b2a8d6ff6ee5
2017-07-11 22:46:11 +09:00
Masayuki Nakano 4ee17d1b8c Bug 1377989 - part2: Rename nsRange::GetEndParent() to nsRange::GetEndContainer() r=smaug
MozReview-Commit-ID: K4qPjtZ62yO

--HG--
extra : rebase_source : 8653db98b9bd70c77a6aac8d906f401f0222c58a
2017-07-11 21:11:37 +09:00
Masayuki Nakano 2f2ce53be5 Bug 1377989 - part1: Rename nsRange::GetStartParent() to nsRange::GetStartContainer() r=smaug
Web standards use "Container" instead of "Parent".  So, nsRange shouldn't use "Parent" for its members and methods.

MozReview-Commit-ID: Ho6N0diuWtE

--HG--
extra : rebase_source : ee4eb7068a68b118c7fe98e9e9e7fa9c9e7f13e2
2017-07-11 20:53:04 +09:00
Sebastian Hengst 7b9c3ddcde Backed out changeset 7529213e3375 (bug 1377861) for failing reftest iframe-border-radius.html on Windows 8 x64. r=backout 2017-07-06 20:45:40 +02:00
Christoph Kerschbaumer 7231e26c2e Bug 1377861 - Update reftests to comply with new data: URI inheritance model. r=smaug 2017-07-06 14:45:56 +02:00
Carsten "Tomcat" Book b72c4833d5 merge mozilla-inbound to mozilla-central a=merge 2017-07-05 13:01:22 +02:00
Cameron McCormack fdb731a4d4 Bug 1377256 - Part 1: Don't pass parent explicitly into HTMLEditor::DeleteRefToAnonymousNode. r=m_kato
MozReview-Commit-ID: HUySaoG07jg

--HG--
extra : rebase_source : adb3a65387eb209073d95211fa185bcab2791b0f
2017-07-04 17:01:32 +08:00
Kartikaya Gupta 1db3c10cac Bug 1360948 - Fix incorrect/accidental change to assertion count in cset 435db45b79 of bug 1351548. r=me
MozReview-Commit-ID: 7pcp3SYJmmS
2017-07-04 09:47:12 -04:00
Christoph Kerschbaumer e82e0967b4 Bug 1377748 - Updates tests within editor/ to comply with new data: URI inheritance model. r=masayuki 2017-07-02 05:23:34 -07:00
Carsten "Tomcat" Book 1367c473cd Merge mozilla-central to mozilla-inbound 2017-06-29 15:49:39 +02:00
Carsten "Tomcat" Book 5f00ae3a8b merge mozilla-inbound to mozilla-central a=merge 2017-06-29 15:47:04 +02:00
Olli Pettay da0ec0a364 Bug 1375491, make child process to cache ime properties only at animation tick time, r=masayuki
--HG--
extra : rebase_source : 6f13f4d91fc4873d135824431adb4b0b2843b738
2017-06-29 14:46:11 +03:00
Makoto Kato 48c416047f Bug 1375910 - Don't remove text node when setting value is empty string. r=masayuki
When setting empty value by input.value, we remove text node and insert bogus node.  But creating and removing node are expensive.  So we should keep text node for performance if possible.

Now, DocumentIsEmpty only checks bogus node to detect empty.  So, keeping text node change causes that document cannot detect as empty.  If root has only text node and all is empty, we should detect empty document.

This change should be only plain text editor.  HTML editor already allows multiple text nodes, so we should keep old behaviour on HTML editor.


MozReview-Commit-ID: Gt8GmdWAA3E

--HG--
extra : rebase_source : 4c5deba024cab3d7e2e1e2a8ec53a29f2fdf8cd9
2017-06-28 07:42:09 +09:00
Cameron McCormack e86592ca35 Bug 1374999 - stylo: Iterate over manually created editor NAC. r=bholley
MozReview-Commit-ID: 1CiWVfYbxaJ

--HG--
extra : rebase_source : 48ea8a0f1cb0a4072632f706ffd99529bb4447b1
2017-06-27 17:34:48 -07:00
Carsten "Tomcat" Book 4e00eff077 merge mozilla-inbound to mozilla-central a=merge 2017-06-27 10:56:41 +02:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Masatoshi Kimura b515c9c804 Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen
MozReview-Commit-ID: GF0YXDwfA14

--HG--
extra : rebase_source : fdae0046f882d47fb539a7f882364e5c5caafdcd
extra : source : 49249788c0dee331ac2989dc39f0505d965a7bd8
2017-06-18 20:37:50 +09:00
Olli Pettay 70cd98776b Bug 1375484 - ScrollSelectionIntoViewEvent should be called during refresh driver tick, r=ehsan 2017-06-25 00:38:42 +03:00
Nicholas Nethercote fe9268c4cd Bug 1374580 (part 2) - Remove nsAFlat{,C}String typedefs. r=froydnj.
All the instances are converted as follows.

- nsAFlatString  --> nsString
- nsAFlatCString --> nsCString

--HG--
extra : rebase_source : b37350642c58a85a08363df2e7c610873faa6e41
2017-06-20 19:19:05 +10:00
Carsten "Tomcat" Book 7fa56f5378 Merge mozilla-central to autoland 2017-06-22 14:11:46 +02:00
Florian Quèze 66f6d259bc Bug 1374282 - script generated patch to remove Task.jsm calls, r=Mossop. 2017-06-22 12:51:42 +02:00
Masayuki Nakano 5af13a8f29 Bug 1374207 - part5: nsTextControlFrame should use TextEditor instead of nsIEditor r=smaug
MozReview-Commit-ID: Eh6Cp546bXT

--HG--
extra : rebase_source : 1bb83361b72af61434a91eb08aba09e79a1dd976
2017-06-19 23:47:02 +09:00
Masayuki Nakano c5fbe1617e Bug 1374207 - part3: Editor classes should use concrete classes instead of nsI*Editor r=m_kato
HTMLEditor inherits some interface classes.  Therefore, CachedWeakPtr is confused at ambiguous conversion from HTMLEditor to nsISupports.  Therefore, this patch adds second parameter to the template class.

MozReview-Commit-ID: KGSYJHfp1L5

--HG--
extra : rebase_source : 7189372c4c06218c3040701196eac51ded85d3fa
2017-06-22 15:02:59 +09:00
Masayuki Nakano 583dafd5d4 Bug 1374207 - part2: TextComposition, IMEContentObserver and IMEStateManager should use EditorBase instead of nsIEditor r=m_kato
MozReview-Commit-ID: IdHmseTiv2t

--HG--
extra : rebase_source : b2f9f42dee97e1ba2cc081014d1696506088d375
2017-06-20 19:23:44 +09:00
Masayuki Nakano 7ad4ad3aab Bug 1374207 - part1: nsTextEditorState should use mozilla::TextEditor instead of editor interfaces r=smaug
Using concrete class rather than interface classes (nsI*Editor) will allow to reduce QI and some virtual calls.  Therefore, Editor classes should be used as concrete class as far as possible.

Unfortunately, if classes referring editor are initialized via scriptable interface, we cannot do this because nsI*Editor is still not marked as builtinclass.  Therefore, their editor may be implemented by JS.  E.g., inline nsIInlineSpellChecker.init() and nsIDocShell.editor.  Such remaining cases should be fixed after nsI*Editor classes are marked as builtinclass.

Note that this patch also creates nsIdentifierMapEntry.h which is separated from nsDocument.h because ShadowRoot.h needs the class but exposing nsDocument.h to the global and includes it causes bustage on Linux and Android.  Therefore, for fixing the include hell, this patch touches them and ContentChild.cpp.

MozReview-Commit-ID: i6fLWw6Qeo

--HG--
rename : dom/base/nsDocument.h => dom/base/nsIdentifierMapEntry.h
extra : rebase_source : c57bdfc1c13775acdcfd4732d8157d04d6b6613f
2017-06-20 22:57:08 +09:00
Makoto Kato 31c7043d79 Bug 1375131 - Part 3. Use stack class to save ranges before using on loop. r=masayuki
We have a possible loop like this bug.  So we should use stack class for loop.

MozReview-Commit-ID: LQb9w8LEtbx

--HG--
extra : rebase_source : 67c40a0f2e3528d58fe7d0ea6ca290bbc136c6d1
2017-06-23 16:46:54 +09:00
Makoto Kato 82d2f60a4d Bug 1375131 - Part 2. Add crash test. r=masayuki
MozReview-Commit-ID: DxYWPNcb7jK

--HG--
extra : rebase_source : f5c5ca6d6fb4c3bb276398b08c81eda1a72b84ae
2017-06-23 16:45:50 +09:00
Makoto Kato db293de97e Bug 1375131 - Part 1. Store ranges before using on loop. r=masayuki
This crash occurs that range is nullptr.

DeleteNonTableElements will update selection and range, so we shouldn't use range count before modifying selection.  So we should save range data for loop.

MozReview-Commit-ID: C9c4TZqRvUc

--HG--
extra : rebase_source : cbadc6d6d82e1c904c20309f2e82f2b6c2f438e7
2017-06-27 17:34:18 -07:00
Makoto Kato a7f8e06327 Bug 1343918 - Add crash test for document.execCommand('italic'). r=masayuki
Although this crash doesn't occur after landing bug 1369140, we should add this test to crashtest.

MozReview-Commit-ID: mRm4P876zg

--HG--
extra : rebase_source : 9a85c8ba3a5652000512d165b82df9aa2c8176e1
2017-06-20 14:46:28 +09:00
Masayuki Nakano 7231604754 Bug 596501 TextEditRules::WillOutputText() should handle itself if it can return only the text of first text node r=m_kato
TextEditor::OutputToString() uses DocumentEncoder if TextEditRules::WillOutputText() doesn't handle it.  However, TextEditRules::WillOutputText() doesn't handle it even if it's really simple case of <input type="text"> and <textarea>.
This patch makes TextEditRules::WillOutputText() handle it if DOM tree in the editor root element is expected and there is no special flag which requires complicated handling.

MozReview-Commit-ID: 3HvdTAWRpw0

--HG--
extra : rebase_source : ab3e630faa95ce8d4c1e9eb1786b7ece7212e38f
2017-06-16 19:08:10 +09:00
Wes Kocher 976d5437f9 Merge m-c to autoland, a=merge
MozReview-Commit-ID: 6A96Fe0GPjw
2017-06-19 17:37:53 -07:00
Masayuki Nakano f337b95b60 Bug 1372829 - part2: mozilla::EditorBase should cache raw pointer of nsISelectionController and nsIDocument with nsWeakPtr r=froydnj,m_kato
mozilla::EditorBase stores nsISelectionController and nsIDocument with nsWeakPtr.  However, nsWeakPtr requires QI to retrieve actual pointer and it makes some damage to the performance.  If mozilla::WeakPter were available for them, it'd be great.  However, it's not available with nsISelectionController nor nsIDocument because it's possible to implement SupportsWeakPtr only with their subclasses but the subclasses shouldn't be referred by editor.  Therefore, this patch creates mozilla::CachedWeakPtr<class T> which stores both raw pointer (as cache) and nsWeakPtr and when its cache is requested, it checks if the object referred by nsWeakPtr is still alive.

Additionally, this patch hides the members from subclasses of EditorBase for reducing the maintenance cost.

MozReview-Commit-ID: FvtM7453Vv8

--HG--
extra : rebase_source : a524a8ea327c3993645fafa81db8aef65090f1e0
2017-06-20 00:55:00 +09:00
Masayuki Nakano 46f0810215 Bug 1372829 - part1: Make mozilla::PlaceholderTransaction inherit mozilla::SupportsWeakPtr instead of nsSupportsWeakReference r=m_kato
EditorBase stores PlaceholderTransaction with nsWeakPtr.  However, retrieving its pointer requires a QI.  So, for reducing the QI cost, EditorBase should use WeakPtr instead and PlaceholderTransaction needs to inherit SupportsWeakPtr instead of nsSupportsWeakReference.

MozReview-Commit-ID: IYwSTbJebMk

--HG--
extra : rebase_source : fa728b09afa826506befbeb46aba54075ecf4787
2017-06-14 19:05:48 +09:00
Carsten "Tomcat" Book b6627b974a Merge mozilla-central to mozilla-inbound 2017-06-19 14:48:12 +02:00
Olli Pettay 33c9c232a2 Bug 1374116, avoid some extra QIs in EditorBase::GetFocusedContent(), r=masayuki
--HG--
extra : rebase_source : c4d9898073d62c6aa8d9926f9a4785d39c90760f
2017-06-19 14:57:09 +03:00
Ehsan Akhgari 147a0e6607 Bug 1373762 - Make editor mochitests correctly wait for spell checking to finish; r=mystor 2017-06-16 14:41:02 -04:00
Bill McCloskey 0767e31489 Bug 1372736 - Avoid using AbstractThread for non-media MozPromises (r=bkelly)
MozReview-Commit-ID: BBi0pK4DXxf
2017-06-15 20:16:25 -07:00
Henri Sivonen 2f2bb984f8 Bug 1372994 - Clear up leftover ISO-8859-1 encoding names. r=emk
MozReview-Commit-ID: IBuUPa9H9Q2

--HG--
extra : rebase_source : fb8db0c70caeec179d50b9ecaeb811d1e87eb0dd
2017-06-15 10:35:22 +03:00
Makoto Kato 945e02484a Bug 1372859 - Remove SelAdj* method of nsIDOM* version from RangeUpdater. r=masayuki
Since RangeUpdater::SelAdj* method of nsIDOM* version requires additional QI and we don't use nsIDOM* as parameter, it is unnecessary to keep it.

MozReview-Commit-ID: 4XyYBG6Qrhl

--HG--
extra : rebase_source : 5fd830a2ffeff944471f026ded704a46ac4dd3d5
2017-06-14 19:34:38 +09:00
Masayuki Nakano 3e6f20f54d Bug 1357642 TextEditor::UpdateIMEComposition() shouldn't call NotifyEditorObservers(eNotifyEditorObserversOfBefore) by itself r=m_kato
TextEditor::UpdateIMEComposition() uses AutoPlaceHolderBatch class which calls NotifyEditorObservers(eNotifyEditorObserversOfBefore) automatically when it's created.  Therefore, it causes calling NotifyEditorObservers(eNotifyEditorObserversOfBefore) twice from TextEditor::UpdateIMEComposition().

MozReview-Commit-ID: DJqzmCtyHCf

--HG--
extra : rebase_source : 44e350d66a01ba9e0beaada0f349422a896acf3d
2017-06-16 21:30:22 +09:00
Carsten "Tomcat" Book 5e8c1546ec merge mozilla-inbound to mozilla-central a=merge 2017-06-14 14:45:26 +02:00
Bill McCloskey c85ab6308c Bug 1366072 - Change promises to take nsISerialEventTarget instead of AbstractThread (r=jwwang)
MozReview-Commit-ID: 4azUhSB6whu
2017-06-13 14:51:01 -07:00
Makoto Kato 5400a2fb98 Bug 1361008 - Part 2. add test for invisible node. r=masayuki
Since this step requires keyboard operation, we cannot create web-platform-test.

MozReview-Commit-ID: ExuaNOj9JG4

--HG--
extra : rebase_source : 0115e48fe1c3bdd7495e3bfc610f03ac1ee15ecb
2017-06-12 15:30:16 +09:00
Makoto Kato b32c372b3d Bug 1361008 - Part 1. Don't select invisible text node on makeBasicBlock. r=masayuki
GetNodesForOperation(..., makeBasicBlock) will get all nodes of promoted range.  But it includes invisible text node after <br> element.  So HTMLEditRules::MakeBasicBlock will creates block for invisible text node.

So we should remove invisible text node from nodes of formatBlock.

MozReview-Commit-ID: L1bsPAYcwx3

--HG--
extra : rebase_source : d9e4e3ff3eef41fb7a4b4c88d73d000b2e53806f
2017-06-12 15:28:54 +09:00
Ehsan Akhgari 5a1d782b90 Bug 1371277 - Use reserved space for one item in SelectionState::mArray; r=masayuki
This avoids dynamic allocations in SelectionState::SaveSelection() in the common
case for the selections that only have a maximum of one range stored in them.
2017-06-09 01:17:42 -04:00
Ting-Yu Lin 2923be5074 Bug 1290276 Part 8 - Update test expectations after implementing XBL <stylesheet> for stylo. r=heycam
Disable 461917-1.xhtml under dom/xul/crashtests/ because I cannot reproduce
it locally.

Annotate assert-if on some crashtests (bug 1370830). Other modifications are
all removal of fails-if.

MozReview-Commit-ID: 6Q2A5M5rOry

--HG--
extra : rebase_source : b282a919fcda6287fe2eaa6b139a11f2663ad578
2017-05-31 16:44:38 -07:00
Makoto Kato 684c70a6ba Bug 1371170 - Add non-virtual EditorBase::GetSelectionController. r=masayuki
GetSelectionController is virtual method, but we should have non-virtual version of GetSelectionController that return value is nsISelectionController since we have a lot of call of GetSelection().

MozReview-Commit-ID: 41JFqTyIh0b

--HG--
extra : rebase_source : 4d40d1a8b31c2b6aff3f3b9ff4609bb3e41ea8f6
2017-06-08 13:58:09 +09:00
Brad Werth 6aa25ee4e2 Bug 1369903 Part 2: Allow HTMLEditor to enable/disable any type of stylesheet. r=emilio
MozReview-Commit-ID: JSlJ8yhqLXm

--HG--
extra : rebase_source : 35fd4c941fd09109779f454020c7af8de72dba55
2017-06-05 09:00:20 -07:00
Makoto Kato 83a6b6422e Bug 1369252 - Don't use nsISelection::CollapseNative / ExtendNative. r=masayuki
Editor still uses CollapseNative and ExtendNative even if it uses Selection, not nsISelection.  CollapseNative and ExtendNative are virtual method, but Selection::Collapse and Extend are non-virtual.  So, we should use Selection::Collapse and Extend instead.

MozReview-Commit-ID: 1AEaaJRbkIm

--HG--
extra : rebase_source : 33b4059c558cfb88c61cedc4e71de8263f2fc387
2017-06-02 17:25:17 +09:00
Makoto Kato 15a281942d Bug 1368544 - Part 2. Add setting empty value test whether creating trailing node. r=masayuki
MozReview-Commit-ID: 3eAFkmUntv0

--HG--
extra : rebase_source : c8a23e2c9c75413bed7d57439f312716c82230bd
2017-05-30 18:59:31 +09:00
Makoto Kato 63af283568 Bug 1368544 - Part 1. Use root node for mozInlineSpellChecker::SpellCheckAfterEditorChange on setText trasaction. r=masayuki
textarea element will use fallback code (using TextEditor::DeleteSelection) to set empty value for SetText.

Actually, if EditorBase::HandleInlineSpellCheck returns error in AfterEdit, we might not create bogus node and trailing br node.  Since SetText's fallback uses DeleteSelection, SpellCheckAfterEditorChange will return error when previous selection is invalid on SetText transaction.

mozInineSpellChecker::SpellCheckAfterEditorChange creates the range between previousSelection and anchorNode.  So when using setText, we should set the range of all text, and we should not use previous selection for SpellCheckAfterEditorChange.



MozReview-Commit-ID: 7eDzMdRmOSz

--HG--
extra : rebase_source : 67861ca3c779b2fb6b5a26174f391fa7fb9ca390
2017-05-31 14:50:51 +09:00
Masayuki Nakano 61af94acbd Bug 1367683 Optimize initializing nsRange r=smaug
nsRange::DoSetRange() adds/remove its root to/from mutation observer, initializes common ancestor, registers itself to the common ancestor, unregisters itself from old common ancestor, and notifies selection listeners of selection change.

However, those runtime cost is expensive but on the other hand, a lot of callers set both start and end of the range and that causes calling DoSetRange() twice.

This patch renames Set() to SetStartAndEnd() for easier to understand the meaning and make it call DoSetRange() only once.

MozReview-Commit-ID: FRV55tuBAgg

--HG--
extra : rebase_source : 67adf929cf119e2425f7d3741651217522094590
2017-05-30 13:18:25 +09:00
Makoto Kato ecc0e24787 Bug 1368387 - Remove nsIDOMText usages from Editor. r=masayuki
nsIDOMText is old interface and it needs QI to access node etc.  So we should use Text etc.

MozReview-Commit-ID: 7VrTrE0p2Q9

--HG--
extra : rebase_source : baa6601708d4b71e624a4dc893cc413d7743dbeb
2017-05-29 11:28:21 +09:00
Makoto Kato d3b2a25a43 Bug 1342417 - ClearStyle should check that SplitStyleAbovePoint returns node. r=masayuki
SplitStyleAbovePoint can return null for split node, but we don't check it.
Also, this crash occurs on paste operation, so I think that there is 100% reproduce test.  But I cannot find it.

MozReview-Commit-ID: 69OlPTc0I9h

--HG--
extra : rebase_source : 61eea8af83e60cc4f9c6f25d2952d57d0fea1d05
2017-05-25 17:15:54 +09:00
Makoto Kato 153cf127c6 Bug 1358025 - Part 5. Add undo transaction test on input element. r=masayuki
When setting same value (including empty to empty), some browsers might not turn off undo.  If settings non-empty value, all browsers doesn't turn off undo.  Also, if empty value, Edge and Chrome doesn't turn off undo.

MozReview-Commit-ID: 1nVYEzBr5KJ

--HG--
extra : rebase_source : e49f38e7c5a8f69902d6320eb6740e34e3f161ed
2017-05-25 14:19:39 +09:00
Makoto Kato da0ebf60c0 Bug 1358025 - Part 2. Add SetText Transaction API. r=masayuki
Actually, input.value setter behaviour (when editor has focus) is the following.

- select all
- delete selection
 - delete text node
- insert text
 - create text node
  - create nsIFrame since we don't support lazy construction for editable element

It is too expensive to change text.  So I would like to change like the following when there is 1 text node only (normal case).  If child nodes isn't 1 text node only, use original way.

- set text on existed text node

So, for this fast path, I would like to add SetText transaction API.

MozReview-Commit-ID: A7bjXtCtSoB

--HG--
extra : rebase_source : ff6348d7a3304e676a0a4b897f91623962961ae0
2017-05-25 14:30:50 +09:00
Fernando Jimenez Moreno 3ccdd927e6 Bug 1365871 - stylo: Make editor/libeditor/tests pass by removing MOZ_CRASH from CSSEditUtils. r=xidorn
The MOZ_CRASH was added because we were lacking a implementation of ServoDeclarationBlock::GetPropertyValueByID, but it was added in Bug1294299

MozReview-Commit-ID: GPsFvTLxsMd

--HG--
extra : rebase_source : d51837def3a9a76dfa2af01dcb26b607dd48a5e6
2017-05-25 09:27:40 +02:00
Shing Lyu 5d8a5a598c Bug 1361645 - Change reftest condition stylo to styloVsGecko r=dbaron
MozReview-Commit-ID: 3ekoU1zg8xA

--HG--
extra : rebase_source : f62c84516f5ac0d4b4d0c876514b72fa786ec542
2017-05-25 11:26:12 +08:00
sjh21a efde6a4d01 Bug 1366176 part 2 - Crashtest.
MozReview-Commit-ID: 3HJBIv97vk6
2017-05-23 19:09:26 +02:00
Mats Palmgren 297b9d70e1 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz
MozReview-Commit-ID: IbwWM0FL6HF

--HG--
extra : source : bbb688fe1ba3f5201a190c6e25b693ef7272ea2d
2017-05-21 17:15:00 +08:00
Carsten "Tomcat" Book 00d4ea331d Backed out changeset bbb688fe1ba3 (bug 1365614) 2017-05-22 15:45:31 +02:00
Mats Palmgren e706869580 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz 2017-05-21 17:15:00 +08:00
Masayuki Nakano 6d8d004613 Bug 1339543 part 1 Wrap nsIWidget::ExecuteNativeKeyBinding() with a WidgetKeyboardEvent method and users of the method should use it r=smaug
Currently, edit commands for native key bindings are stored in widget.  This is
stateful and really complicated in content process because it needs to cache
them.

We can make this simpler if we make WidgetKeyboardEvent store edit commands for
the key combination.  Then, child process can handle it even if it's delayed
event or it's a nested event.

This patch adds arrays to WidgetKeyboardEvent to store edit commands which are
initialized with nsIWidget::ExecuteNativeKeyBinding() and adds
WidgetKeyboardEvent::ExecuteEditCommands() to execute stored edit commands as
same as nsIWidget::ExecutenativeKeyBinding().

MozReview-Commit-ID: BGRvBrLz5lp

--HG--
extra : rebase_source : b7ecd704d9c331ca1e0aedc66f230114015b853b
2017-05-19 16:50:30 +09:00
Makoto Kato ce6328824f Bug 1365383 - Spellchecker should consider that callback isn't set. r=masayuki
InitSpellChecker allows that 3rd callback parameter is null.  We should consider that it is null.

MozReview-Commit-ID: BMAM6BiYlw5

--HG--
extra : rebase_source : fbe767694d6380988854ff133b780b8fe334bf3a
2017-05-18 14:50:25 +09:00
Wes Kocher f1c0f35ea6 Merge inbound to m-c a=merge
MozReview-Commit-ID: HCapLqbD816
2017-05-11 17:30:41 -07:00
Ryan VanderMeulen ff1d6f6f88 Merge m-c to autoland. a=merge 2017-05-11 11:30:47 -04:00
Sebastian Hengst db8f56dd23 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: HWYxZeNWish
2017-05-11 16:50:12 +02:00
Carsten "Tomcat" Book 1ff3d76838 Backed out changeset ebc9a119bcf8 (bug 1340627) 2017-05-11 12:51:49 +02:00
Wes Kocher 02bf8c4425 Merge m-c to inbound, a=merge
MozReview-Commit-ID: FfNikA7un6F
2017-05-10 17:31:18 -07:00
Wes Kocher f4f5d51edf Merge autoland to central, a=merge
MozReview-Commit-ID: 2gKDtRuJJyq
2017-05-10 15:25:51 -07:00
Wes Kocher 959de6c3e8 Backed out 9 changesets (bug 1340627) for graphical glitches a=backout
Backed out changeset 0b1371055c7f (bug 1340627)
Backed out changeset f152be1fadb7 (bug 1340627)
Backed out changeset c691e2ab6a0c (bug 1340627)
Backed out changeset 3cb4bceb8d79 (bug 1340627)
Backed out changeset 026aadd76d06 (bug 1340627)
Backed out changeset fdbd5d281287 (bug 1340627)
Backed out changeset 75fb0d9858a9 (bug 1340627)
Backed out changeset 0d4ec7d38a00 (bug 1340627)
Backed out changeset af6f19870b2a (bug 1340627)

MozReview-Commit-ID: 9dHr7xMZezY

--HG--
rename : gfx/skia/skia/src/core/SkBlitRow.h => gfx/skia/skia/include/core/SkBlitRow.h
rename : gfx/skia/skia/src/effects/SkGaussianEdgeShader.h => gfx/skia/skia/include/effects/SkGaussianEdgeShader.h
rename : gfx/skia/skia/src/xml/SkXMLParser.h => gfx/skia/skia/include/xml/SkXMLParser.h
rename : gfx/skia/skia/include/private/SkMessageBus.h => gfx/skia/skia/src/core/SkMessageBus.h
rename : gfx/skia/skia/src/gpu/ops/GrAAConvexPathRenderer.h => gfx/skia/skia/src/gpu/batches/GrAAConvexPathRenderer.h
rename : gfx/skia/skia/src/gpu/ops/GrAAConvexTessellator.h => gfx/skia/skia/src/gpu/batches/GrAAConvexTessellator.h
rename : gfx/skia/skia/src/gpu/ops/GrAAHairLinePathRenderer.h => gfx/skia/skia/src/gpu/batches/GrAAHairLinePathRenderer.h
rename : gfx/skia/skia/src/gpu/ops/GrAALinearizingConvexPathRenderer.h => gfx/skia/skia/src/gpu/batches/GrAALinearizingConvexPathRenderer.h
rename : gfx/skia/skia/src/gpu/ops/GrPathStencilSettings.h => gfx/skia/skia/src/gpu/batches/GrPathStencilSettings.h
rename : gfx/skia/skia/src/gpu/ops/GrStencilAndCoverPathRenderer.h => gfx/skia/skia/src/gpu/batches/GrStencilAndCoverPathRenderer.h
rename : gfx/skia/skia/include/private/GrGLSL_impl.h => gfx/skia/skia/src/gpu/glsl/GrGLSL_impl.h
extra : source : 761b3f55f10f3df16601ce62e4d15b0c558c0cfb
2017-05-10 10:01:18 -07:00
Carsten "Tomcat" Book d66b9f27d5 merge mozilla-inbound to mozilla-central a=merge 2017-05-10 15:07:28 +02:00
Lee Salzman 8c18901f07 Bug 1340627 - part 8 - reftest fuzzing for update to Skia m59. r=mchang
MozReview-Commit-ID: LN29P1I4EsW
2017-05-09 22:31:07 -04:00
Bas Schouten af6703eb9d Bug 1331718 - Part 4: Mark some tests on android as passing. r=bustage
MozReview-Commit-ID: D8hy9zm8Dte
2017-05-10 22:34:35 +02:00
Lee Salzman 2e348e5294 Bug 1340627 - part 8 - reftest fuzzing for update to Skia m59. r=mchang
MozReview-Commit-ID: LN29P1I4EsW
2017-05-09 22:31:07 -04:00
Wes Kocher 02015c2300 Merge m-c to autoland a=merge CLOSED TREE
MozReview-Commit-ID: 5T8pxvbfKXv
2017-05-10 17:29:04 -07:00
Makoto Kato 353b47086e Bug 1360154 - Part 1. DocumentIsBody should return bool, not nsresult. r=masayuki
nsIEditRules::GetDocumentIsEmpty doesn't return error without null parameter, so we should use bool as return value instead.

MozReview-Commit-ID: HIoQmKu6ETF

--HG--
extra : rebase_source : 570452e7072d8e0e837bb2822c9c0ab9c0d1a8cf
2017-05-11 14:03:26 +09:00
Milan Sreckovic 725d1c193f Bug 1358297: Part 3. Create special case for stripping CR and LF on TSubstring, and use it in all the places that it is called. Use ASCIIMask to make it fast. r=froydnj
MozReview-Commit-ID: 5ugh3Ma0OtH

--HG--
extra : rebase_source : 956a7a0535c3b7433fadfa65d0cfc26d9915f61a
2017-05-10 13:12:36 -04:00
Masayuki Nakano b56195251f Bug 1363278 Get rid of nsIPhonetic and HTMLInputElement.phonetic r=smaug
Nobody uses them anymore.  Therefore, we can remove them from the tree.

MozReview-Commit-ID: KTqCeI2eeFW

--HG--
extra : rebase_source : f3fc274f39c135af51245efd4c4aebbc4c49a61f
2017-05-09 16:27:08 +09:00
Masayuki Nakano 4376a0cf61 Bug 1325281 Get rid of nsIEditorIMESupport r=m_kato
MozReview-Commit-ID: KGJnho4uy1s

--HG--
extra : rebase_source : 1755ad59ed625076fbadb05db9bb5d4a1fea07cb
2017-05-09 15:21:22 +09:00
Lee Salzman ed014c1f54 Bug 1340627 - part 8 - reftest fuzzing for update to Skia m59. r=mchang 2017-05-11 09:54:15 -04:00
Carsten "Tomcat" Book f40e5ddeb7 Merge mozilla-central to mozilla-inbound 2017-05-11 12:53:41 +02:00
Carsten "Tomcat" Book 76ca853e3e Merge mozilla-central to mozilla-inbound 2017-05-09 14:40:11 +02:00
Matt Brubeck 0c70ae6c1d Bug 1349651 - stylo: Implement HasAuthorSpecifiedRules. r=bholley
MozReview-Commit-ID: 8ta5KqKzncZ

--HG--
extra : rebase_source : 3ec29f283dc6bfec4d2a1676ab3f78296893d94b
2017-05-10 13:11:36 -07:00
Wes Kocher 24a327994e Backed out 9 changesets (bug 1340627) for graphical glitches a=backout
Backed out changeset 0b1371055c7f (bug 1340627)
Backed out changeset f152be1fadb7 (bug 1340627)
Backed out changeset c691e2ab6a0c (bug 1340627)
Backed out changeset 3cb4bceb8d79 (bug 1340627)
Backed out changeset 026aadd76d06 (bug 1340627)
Backed out changeset fdbd5d281287 (bug 1340627)
Backed out changeset 75fb0d9858a9 (bug 1340627)
Backed out changeset 0d4ec7d38a00 (bug 1340627)
Backed out changeset af6f19870b2a (bug 1340627)

MozReview-Commit-ID: 9dHr7xMZezY

--HG--
rename : gfx/skia/skia/src/core/SkBlitRow.h => gfx/skia/skia/include/core/SkBlitRow.h
rename : gfx/skia/skia/src/effects/SkGaussianEdgeShader.h => gfx/skia/skia/include/effects/SkGaussianEdgeShader.h
rename : gfx/skia/skia/src/xml/SkXMLParser.h => gfx/skia/skia/include/xml/SkXMLParser.h
rename : gfx/skia/skia/include/private/SkMessageBus.h => gfx/skia/skia/src/core/SkMessageBus.h
rename : gfx/skia/skia/src/gpu/ops/GrAAConvexPathRenderer.h => gfx/skia/skia/src/gpu/batches/GrAAConvexPathRenderer.h
rename : gfx/skia/skia/src/gpu/ops/GrAAConvexTessellator.h => gfx/skia/skia/src/gpu/batches/GrAAConvexTessellator.h
rename : gfx/skia/skia/src/gpu/ops/GrAAHairLinePathRenderer.h => gfx/skia/skia/src/gpu/batches/GrAAHairLinePathRenderer.h
rename : gfx/skia/skia/src/gpu/ops/GrAALinearizingConvexPathRenderer.h => gfx/skia/skia/src/gpu/batches/GrAALinearizingConvexPathRenderer.h
rename : gfx/skia/skia/src/gpu/ops/GrPathStencilSettings.h => gfx/skia/skia/src/gpu/batches/GrPathStencilSettings.h
rename : gfx/skia/skia/src/gpu/ops/GrStencilAndCoverPathRenderer.h => gfx/skia/skia/src/gpu/batches/GrStencilAndCoverPathRenderer.h
rename : gfx/skia/skia/include/private/GrGLSL_impl.h => gfx/skia/skia/src/gpu/glsl/GrGLSL_impl.h
2017-05-10 10:01:18 -07:00
Yoshi Huang df0da41d1c Bug 1361641 - Part 2: convert mochitest plain tests in editor/ to use srcdoc. r=smaug 2017-05-09 10:25:23 +08:00
Makoto Kato 6a08daf67d Bug 1352799 - Part 2. Add test for changing maxlength dynamically. r=masayuki
MozReview-Commit-ID: 4DiE33eyBar

--HG--
extra : rebase_source : 38f57dbf55c8ed769ba5aab1e36ce91fb35cbad4
2017-04-20 10:23:38 +09:00
Wes Kocher 6d6d039d43 Backed out 4 changesets (bug 1358297) for hazard build failures a=backout
Backed out changeset 95211a496191 (bug 1358297)
Backed out changeset 3c1b426a5cce (bug 1358297)
Backed out changeset 9201d345a1d5 (bug 1358297)
Backed out changeset c926817dea60 (bug 1358297)

MozReview-Commit-ID: 874DF43K7Dp
2017-05-05 12:45:46 -07:00
Milan Sreckovic 196fb1a3bc Bug 1358297: Part 3. Create special case for stripping CR and LF on TSubstring, and use it in all the places that it is called. Use ASCIIMask to make it fast. r=froydnj
MozReview-Commit-ID: 3p97cCGfy6i

--HG--
extra : rebase_source : a91d9a5e6e61495cfe78b06959b200e48ca16535
2017-05-05 13:37:13 -04:00
Masayuki Nakano d04632f559 Bug 1342552 - IMEStateManager should cache nsIWidget for sPresContext and use it. r=smaug
IMEStateManager should cache nsIWidget for sPresContext at caching sPresContext.  Then, even if sPresContext has gone, IMEStateManager can clean up with the nsIWidget cache.

Unfortunately, editor has some bugs about calling IMEStateManager::UpdateIMEState().  That is, calling it *before* IMEStateManager::OnFocusChange().  In such case, this patch makes UpdateIMEState() ignore the call.

MozReview-Commit-ID: 1cydI03WyB8
2017-04-20 13:43:50 +09:00
Shing Lyu c46f5d5baf Bug 1351548 - Remove reftest-stylo.lists. r=bholley
MozReview-Commit-ID: 8LoQ9xNnDnj
2017-04-28 11:15:58 +08:00
Shing Lyu 435db45b79 Bug 1351548 - Add stylo-vs-gecko expectations to reftest.lists. r=bholley
MozReview-Commit-ID: GOUGBsd05cn
2017-04-28 11:15:50 +08:00
Makoto Kato 60ccf10a30 Bug 1360137 - Part 2. Reduce QueryInterface by NativeInit. r=masayuki
nsIDocumentEncoder has nativeInit for nsIDocumnet, we should use it to reduce QueryInterface.

MozReview-Commit-ID: Ffn19yf9jra

--HG--
extra : rebase_source : 37c8b27cc0eddd4f0501ec1e61ea27d74ee1e6f3
2017-04-27 17:41:26 +09:00
Makoto Kato ea65a415ff Bug 1360137 - Part 1. Use LowerCaseEqualsLiteral instead of ToLowerCase. r=masayuki
From profiling TextEditor::OutputToString, most of WillOutputText is ToLowerCase.  So, we should use LowerCaseEqualsLiteral instead.  It can reduce string copy.

MozReview-Commit-ID: LwqZtxIJTbW

--HG--
extra : rebase_source : 94da785d8288dfd93666a3dcb2d374874c79db89
2017-04-27 17:40:19 +09:00
Wes Kocher 5e8bdb175d Merge inbound to m-c a=merge
MozReview-Commit-ID: A85cs7Yriqj
2017-04-25 13:53:00 -07:00
Christoph Kerschbaumer 7711007990 Bug 1359092 - Extend loadURI within nsIWebNavigation.idl by a triggeringPrincipal argument. r=bz 2017-04-25 12:22:25 +02:00
Makoto Kato bba54a63e6 Bug 1359008 - Don't use nsIDOM* in TextEditRules's member. r=masayuki
To clean up TextEditRules, I would like to replace nsIDOMNode with nsINode and nsIContent in TextEditRules.

GetTopEnclosingPre is unused define, so I also remove it.

MozReview-Commit-ID: 6LraexH5t4m

--HG--
extra : rebase_source : 1037dcfd949d544282dc30360bd43773f21fd929
2017-04-24 19:40:12 +09:00
Emilio Cobos Álvarez d2f3dc13ec Bug 1357142: Kill PresShell::RecreateFramesFor. r=bz
It's not only inefficient, but also prone to buggyness. Since styles may not be
up-to-date when it happens.

Post a reconstruct instead, which ensures a style flush happens before running
frame construction.

MozReview-Commit-ID: DrakHsJv5fY
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : 11900af908654336cc2391ab9480542c5474e38f
2017-04-17 18:01:37 +02:00
Makoto Kato 1b58ce0000 Bug 1335880 - Adjust mouse position for dragstart. r=masayuki
On Ubuntu 16.04 TLS, test_dragdrop.html due to control margin.  So we should adjust the point of dragstart.

MozReview-Commit-ID: EPW2UnaIWRt

--HG--
extra : rebase_source : a97c66dc36328563497130aa7a3829bc8a9eb204
2017-05-08 14:06:29 +09:00
Kartikaya Gupta 1e6be2a645 Bug 1362424 - Skip a spellchecking reftest that is now permafailing on QuantumRender builds. r=jrmuizel
This test is failing intermittently even on non-QuantumRender builds, and bug
1361820 is tracking that issue. Once that is fixed we should be able to re-enable
this test.

MozReview-Commit-ID: HANsz08bujB

--HG--
extra : rebase_source : 4500022a5ffbac6bbd4de3e61c3dc3bba3881b1f
2017-05-08 17:08:34 -04:00
Aryeh Gregor 3a32e91a42 Bug 1355792 - Consider invisible nodes to be editable; r=masayuki
We can't depend on information from layout to be correct unless we've
flushed pending notifications, which we can't do at every editability
check.  So let's forget about layout.  Nobody knows why editability ever
depended on visibility in the first place.

This allows us to revert the additions from bug 795418 as well.

The original test-case submitted on the bug report was very big and
complicated, so I have a minimal test-case instead.  This might not
exactly correspond to the originally reported bug, but this fix works for
both the original and minimal test case.

MozReview-Commit-ID: LOKjlgiAEOT

--HG--
extra : rebase_source : 5aaeae87fdc0dd78cb6f1060399c09d2945f8e08
2017-04-19 16:53:24 +03:00
Aryeh Gregor fdf415af45 Bug 1357998 - Make editing tests independent of default defaultParagraphSeparator; r=masayuki
Now that this is a pref that is different in different versions, tests
have to work no matter what the pref's value is.  For tests that
actually tested line-breaking-related behavior, I made them test all
three separator values.  For tests that tested something else and only
incidentally depend on the default paragraph separator, I set
defaultParagraphSeparator to "div".

MozReview-Commit-ID: 8m7eoFRXpEy

--HG--
extra : rebase_source : dc664e87f7ce4f621aa48639cef6e754793e8ab4
2017-04-20 21:10:23 +03:00
Manish Goregaokar ff68276c10 Bug 1349417 - Part 9: stylo: Update test expectations; r=xidorn
MozReview-Commit-ID: 5SGrYUIhHOQ
2017-04-21 15:40:49 -07:00
Carsten "Tomcat" Book d32c8f24cc Backed out changeset 49c8dc08ff64 (bug 1349417) 2017-04-19 08:31:48 +02:00
Manish Goregaokar f1cf1ffa2a Bug 1349417 - Part 9: stylo: Update test expectations; r=xidorn
MozReview-Commit-ID: 5SGrYUIhHOQ
2017-04-18 21:36:48 -07:00
Iris Hsiao 2f57ea5bb4 Backed out 3 changesets (bug 1349417) for build bustage
Backed out changeset e6a9aaf8c102 (bug 1349417)
Backed out changeset fbdddabe4c8d (bug 1349417)
Backed out changeset c1ead1f0ab71 (bug 1349417)
2017-04-19 11:03:13 +08:00
Manish Goregaokar cb05d3003e Bug 1349417 - Part 9: stylo: Update test expectations; r=xidorn
MozReview-Commit-ID: 5SGrYUIhHOQ
2017-04-18 19:31:07 -07:00
Aryeh Gregor bf0619d365 Bug 1354060 - Put defaultParagraphSeparator default change behind pref; r=masayuki
This is regression-prone, so dev.platform discussion concluded we want
it behind a pref.  We might turn the pref off for beta and/or release
for now as well.

MozReview-Commit-ID: 2H2et3RElZx

--HG--
extra : rebase_source : baf7e679ca1ee16016666d7697990c4f64ecf83e
2017-04-06 15:02:42 +03:00
Aryeh Gregor 47530382e3 Bug 1353695 - Sometimes Enter is ignored in editor; r=masayuki
When defaultParagraphSeparator is not "br", and we hit Enter on a line
that is not contained in any block element, we first create a new <div>
(or <p>) wrapper to hold the line's contents.  If creating this wrapper
fails for some reason, we go ahead and insert a <br> instead.

In some cases, we would get confused and think we didn't create the
block element when really we did.  We would insert a <br>, and
afterwards something would get rid of the empty block element.  In a
corner case where the line only consisted of a <br> to start with, this
would result in nothing happening, because the original <br> was removed
when creating the block element, and only one <br> was inserted to
replace it.

The correct fix is to just not get confused!

MozReview-Commit-ID: 1U8KHC71bfw

--HG--
extra : rebase_source : 50640615a3a652c3a74c1aef5412eb82daf8c5fb
2017-04-05 20:40:13 +03:00
Makoto Kato 0410282e88 Bug 1352882 - Part 3. Cache nsIDocumentEncoder into TextEditor. r=masayuki
All editor code gets nsIDocumentEncoder from TextEditor::GetAndInitDocEncoder(), so we can have a cache into TextEditor, then return cached object.

MozReview-Commit-ID: IEoOvz7BG7T

--HG--
extra : rebase_source : 1b30325c99fbc43dc77453325e97e88b439285e2
2017-04-17 17:29:46 +09:00
Makoto Kato b24e38d3fc Bug 1356496 - Don't use nsIDOM* in ConfirmSelectionInBody. r=masayuki
ConfirmSelectionInBody uses a lot of QI and TextEditUtils::IsBody call to check body element.  So we shouldn't use nsIDOM* to avoid QI and EditorBase::GetTag().

Also, if did not found body element, it calls collapse to set caret.  If collapse is successful, we might not have to check end selection...  How do you think?

MozReview-Commit-ID: F7FhPrlEpCc

--HG--
extra : rebase_source : 85b5c99be0085dd579a9b650207c876cd17a2410
2017-04-14 14:54:03 +09:00
Florian Queze 37ff4fc7cc Bug 1356569 - Remove addObserver's last parameter when it is false, r=jaws. 2017-04-14 21:51:38 +02:00
Sebastian Hengst a07223d699 Backed out changeset 322fde2d53bf (bug 1356569) so bug 1355161 can be backed out. r=backout 2017-04-14 23:39:22 +02:00
Florian Queze 95d4d20c17 Bug 1356569 - Remove addObserver's last parameter when it is false, r=jaws. 2017-04-14 21:51:38 +02:00
Xidorn Quan d8c29760a1 Bug 1355734 - Remove text-decoration-line: -moz-anchor-decoration. r=heycam,masayuki
MozReview-Commit-ID: 4TmVncV1K5G

--HG--
extra : rebase_source : 568218d415642f1088c82d4b2e03d5885067b162
2017-04-13 16:17:03 +08:00
Makoto Kato a8f8cbc728 Bug 1056322 - Don't run DictionaryFetcher when spllchecker isn't initialized. r=masayuki
When CanSpellCheck isn't called yet, mSpellChecker won't be initialized.  So we should check it before running DictionaryFetcher.

I think that UpdateCurrentDictionary is called by OnFocus as long as nsEditorSpellCheck::InitSpellChecker isn't called.  But I cannot find test case to reproduce this...

MozReview-Commit-ID: 5H1pJ0AnX5X

--HG--
extra : rebase_source : 5f2a59261c67a7f8f363588c7596e68f6debff9e
2017-04-12 17:43:51 +09:00
Dan Banner cdf987089d Bug 1107904 - Remove packed.js and references to it as it is unused. r=standard8
MozReview-Commit-ID: K5TLF92pHq4

--HG--
extra : rebase_source : 295bf325a07fa8ec4c55a8babf5418588308dca6
2017-04-12 11:10:00 +01:00
Makoto Kato 6ed44d9df6 Bug 1330912 - Part 4. Update some tests to wait updating dictionary. r=masayuki
Since Part 2 improves foucs performance, these tests will be failed because spellchecker works later.  So using UpdateCurrentDictionary, dictionary is updated before test.


MozReview-Commit-ID: 69aC1rQd4LY

--HG--
extra : rebase_source : 50e0449b727352ff2f8e2a08605cc3f9d933d6d9
2017-04-10 14:44:49 +09:00
Makoto Kato c61434ef9b Bug 1330912 - Part 3. Don't update dictionary during onfocus when spellcheck is unnecessary. r=masayuki
Such as <input type=password>, focused element doesn't use spellchecker, we should not call UpdateCurrentDictionary.  Also, when the attribute is changed, we should call UpdateCurrentDictionary if uninitialized.

MozReview-Commit-ID: LSfDTAszviE

--HG--
extra : rebase_source : a3fe944099c625b7f525d33eae06a7b8e8992729
2017-04-11 16:51:04 +09:00
Makoto Kato 694268f807 Bug 1330912 - Part 2. Use async version on UpdateCurrentDictionary. r=masayuki
Now, mozInlineSpellChecker::UpdateCurrentDictionary will use sync IPC messages via nsEditorSpellCheck::DictionaryFetched.

Part 1 adds async API to set current dictionary.  So we should use it on nsEditorSpellCheck::DictionaryFetched instead of sync API.

MozReview-Commit-ID: 5gl2eQpzKm1

--HG--
extra : rebase_source : 1fabc4abdd170494f1804ad875a181e652ea66a0
2017-04-11 17:05:19 +09:00
Makoto Kato 55e9044079 Bug 1330912 - Part 1. Add async version of SetCurrentDictionary using list. r=Ehsan
Now, mozInlineSpellChecker::UpdateCurrentDictionary uses several sync IPC message to update spellcheck dictionary.  So I want async IPC to set dictionary.

Also, since nsEditorSpellCheck::DictionaryFetched calls SetCurrentDictionary several times (max: 6 times), so to reduce calls, we should use list of dictionary.

MozReview-Commit-ID: EVMAJxpMT2X

--HG--
extra : rebase_source : 5a1ed28bd6eb1dd9d3a6a634a286531b7ebb32c7
2017-04-10 18:29:16 +09:00
Brian Birtles 33041d1214 Bug 1315874 - Drop 'ForElement' from GetStyleContextForElementXXX methods; r=heycam
In the next patch we want to add a method called
GetUnanimatedStyleContextForElementNoFlush but that's much too long. Instead it
seems better to just drop 'ForElement' from all these methods since it should be
fairly obvious we are getting the style context for an element given that the
first argument is an element.

MozReview-Commit-ID: JQKaEuCKV2F

--HG--
extra : rebase_source : 3ba51f3b00d1ec7bc91102629d9c0abb88992fef
2017-04-05 14:39:23 +09:00
Wes Kocher bceaacd2b8 Merge inbound to central, a=merge 2017-04-04 11:25:13 -07:00
Aryeh Gregor a334ab0dad Bug 1297414 - Change default paragraph separator to <div>; r=masayuki
This matches Blink/WebKit, and is more similar to Edge than before, but
may cause compat problems for Gecko-only code or code paths.  Sites can
revert to old behavior with:
document.execCommand("defaultparagraphseparator", false, "br").

This regresses test_bug430392.html on one test ("adding returns") and I
don't know why.  The test involves embedded non-editable content and we
already have a lot of todos in that file, so I think it's tolerable.

MozReview-Commit-ID: Dml0bXxgu87
2017-04-04 13:49:38 +03:00
Aryeh Gregor 3611697a7f Bug 1297414 - Support <div> separator in ReturnIn(Header|ListItem); r=masayuki
MozReview-Commit-ID: EkvFpyTmXDc
2017-04-04 13:49:38 +03:00
Aryeh Gregor 7c603e0235 Bug 1297414 - Support <div>/<p> separators in WillInsertBreak; r=masayuki
*aHandled was previously always set to true in WillMakeBasicBlock, which
was probably a bug but is not addressed in this commit.

MozReview-Commit-ID: 41JSmptVc0l
2017-04-04 13:49:38 +03:00
Aryeh Gregor a7ed0e7cf4 Bug 1297414 - formatBlock should move non-editable nodes; r=masayuki
Before this change, if you did formatBlock on "a<span
contenteditable=false>b</span>c", it would become "acb", because the "a"
and "c" would be moved to the front of the node, and the "b" would be
left alone at the end because the editing code doesn't want to move it.
Now we will move the "b" as well, even though it's not editable, so that
the node remains "abc".  The rule is that a non-editable element cannot
have its attributes or children changed, but it can have its parent
changed, so there's nothing wrong with moving it here.

On the way, I fixed an exception in insert*List if there was an
uneditable inline node around.  I don't intend to fix all the todo's in
the test, but now it should have better coverage, at least.

MozReview-Commit-ID: 3okcGq4an3f
2017-04-04 13:47:28 +03:00
Aryeh Gregor e3c9b3f2de Bug 1297414 - Treat <div> like <p> for break insertion; r=masayuki
I don't personally agree with this behavior (although I did spec it some
years ago), but it's the behavior of all other UAs, so we should do it
anyway.

MozReview-Commit-ID: IiIg41kMJIU
2017-04-04 13:47:28 +03:00
Aryeh Gregor c442eea5f2 Bug 1297414 - Support execCommand("defaultParagraphSeparator"); r=masayuki
Later commits will add the actual functionality.

MozReview-Commit-ID: 6Ac9V6MjZpa
2017-04-04 13:47:28 +03:00
Aryeh Gregor 5575caf994 Bug 1297414 - Send eTypedBR in plaintext mode too; r=masayuki
This is what test_htmleditor_keyevent_handling.html expects.  It
historically made no difference in the case tested there, because we
inserted a <br> either way, but now it will make a difference.  I don't
know what an HTML editor in plaintext mode even means, so I don't know
if this change is actually the intended behavior.

MozReview-Commit-ID: 64w6bb9Q1pD
2017-04-04 13:44:53 +03:00
Aryeh Gregor 8f79d37004 Bug 1352144 - document.execCommand("inserttext", false, "") should work r=masayuki
Behavior per spec and Chrome is to just delete the selection.  We
already do this for insertHTML.

MozReview-Commit-ID: AWZhH6lIwuO

--HG--
extra : rebase_source : 353c3b628eb6a609de121e25bb7a11e579d29400
2017-03-30 21:04:09 +03:00
Makoto Kato cd753d1158 Bug 1351074 - Part 2. Use testing-common for AsyncSpellCheckTestHelper.jsm. r=masayuki
TESTING_JS_MODULES uses testing-common, not gre.  So we should replace gre with testing-common for mochitest.

MozReview-Commit-ID: BqsS2D3IGR6

--HG--
extra : rebase_source : a8553684f8f106c1dfb6e2d9b51df7ebeb15275d
2017-03-29 15:34:49 +09:00
Makoto Kato 9daa6911b7 Bug 1351074 - Part 1. AsyncSpellCheckTestHelper.jsm should not be shipped. r=masayuki
AsyncSpellCheckTestHelper.jsm uses on mochitest and reftest, so we shouldn't ship it in release package

MozReview-Commit-ID: CT8f8DRVwb

--HG--
extra : rebase_source : 4cd803fed4f9215f5237996c83128f5434aaad88
2017-03-31 14:17:26 +09:00
Aryeh Gregor c9cfbcf638 Bug 1130651 - Don't throw IndexSizeError from insertText command r=masayuki
MozReview-Commit-ID: 7AXGvenAfWv

--HG--
extra : rebase_source : ff4f263468ea424a2e818d768727b1672da8b5f2
2017-03-30 18:36:17 +03:00
Phil Ringnalda 7ac3bd5b7e Backed out 3 changesets (bug 1351074) for reftest harness and browser_all_files_referenced.js bustage
CLOSED TREE

Backed out changeset 941e0f9ff9a7 (bug 1351074)
Backed out changeset 4fdf3b87a70b (bug 1351074)
Backed out changeset 586428f69838 (bug 1351074)
2017-04-02 19:46:49 -07:00
Makoto Kato cd8761e0f4 Bug 1351074 - Part 2. Use testing-common for AsyncSpellCheckTestHelper.jsm. r=masayuki
TESTING_JS_MODULES uses testing-common, not gre.  So we should replace gre with testing-common for mochitest.

MozReview-Commit-ID: BqsS2D3IGR6

--HG--
extra : rebase_source : 2143fcdf33c428c82c6b2e00b542649b958aeccc
2017-03-29 15:34:49 +09:00
Makoto Kato 8426259e4a Bug 1351074 - Part 1. AsyncSpellCheckTestHelper.jsm should not be shipped. r=masayuki
AsyncSpellCheckTestHelper.jsm uses on mochitest and reftest, so we shouldn't ship it in release package

MozReview-Commit-ID: CT8f8DRVwb

--HG--
extra : rebase_source : fec37ae258f7c0d8ff76143da79ca182b66f0a52
2017-03-31 14:17:26 +09:00
Aryeh Gregor 20a011132c Bug 1314388 - Fix bustage on CLOSED TREE
MozReview-Commit-ID: GDVevocsKaG
2017-04-02 14:11:48 +03:00
Aryeh Gregor 4a039c1336 Bug 1314388 - Remove SVGZoomEvent; r=longsonr,smaug
Some code in SVGSVGElement.cpp might be unnecessary now, but Robert said
to leave it for a followup.

MozReview-Commit-ID: 8PpRGeGrREJ
2017-04-02 13:51:33 +03:00
Olli Pettay d47c995985 Bug 1351860 - Move mType from HTMLInputElement to nsIFormControl and make GetType non-virtual inlined, r=jessica
--HG--
extra : rebase_source : b7d76ce3321ea0d622da74a72b7278fd0fa63310
2017-03-31 22:49:00 -04:00
Olli Pettay 31b1f5cc92 Backout Bug 1351860, r=backout 2017-03-31 16:55:32 -04:00
Olli Pettay b84c192a09 Bug 1351860 - Move mType from HTMLInputElement to nsIFormControl and make GetType non-virtual inlined, r=jessica
--HG--
extra : rebase_source : 5f2cac2c4e944e2c9f2f1acf0d3064e153c40451
2017-03-31 13:13:36 -04:00
Aryeh Gregor f889daf2b4 Bug 1175418 - Don't create unnecessary text nodes in editor; r=masayuki
MozReview-Commit-ID: LnioO8XoGQT

--HG--
extra : rebase_source : e85b99dc69912934f44c4e9dd9b17d23fe02bb09
2017-03-29 18:28:21 +03:00
Wes Kocher 8e0bc97954 Merge inbound to central, a=merge 2017-03-29 15:41:57 -07:00
Emilio Cobos Álvarez b6611188f1 Bug 1350140: more test expectation updates. r=heycam
MozReview-Commit-ID: 26ngAQoHC9T

--HG--
extra : rebase_source : 127b6a10f3f8e896cdf353305aa9d2ee8eab5ccb
2017-03-28 15:01:34 +02:00
Emilio Cobos Álvarez 55e9a2ee3f Bug 1350140: Update test expectations. r=emilio
MozReview-Commit-ID: 4ZTM0r5KJfn

--HG--
extra : rebase_source : 139db22ea2b38d796c6d99707818a897104e091e
2017-03-24 09:25:12 +01:00
Olli Pettay 93e93a4e02 Bug 1350926, label a runnable in editor, r=masayuki 2017-03-29 14:43:28 -04:00
Olli Pettay 25efa50e90 Bug 1350683 - Ensure the transaction processing. r=masayuki
--HG--
extra : rebase_source : 6053f4c943f1452a2728c209fbd8ebb225737cd3
2017-03-29 13:23:31 -04:00
Makoto Kato cc04eb51dc Bug 1349426 - Remove nsIHTMLObjectResizeListener. r=masayuki
m-c, c-c, addons and bluegriffon don't use this interface, so we can remove it.

MozReview-Commit-ID: I8sVLpDR2gx

--HG--
extra : rebase_source : f88633271bf61ccc55098593fedff0dd7a561f21
2017-03-27 15:16:40 +09:00
Makoto Kato 7b1f32af65 Bug 1350772 - Part 2. Add test. r=masayuki
MozReview-Commit-ID: 9jQyvpXFl1E

--HG--
extra : rebase_source : f1a2f9dcc74291c382bc106757b032d42da185be
2017-03-27 14:41:21 +09:00
Makoto Kato c013bde6aa Bug 1350772 - Part 1. Check whether node can be splited. r=masayuki
At first, HTMLEditor::GetActiveEditingHost might return null in this situation, we should check whether nullptr is returned.   At second, SplitNodeDeep returns error since curent is design mode and selection node has no parent.  So we should check error.

MozReview-Commit-ID: 2YlWXPNtf80

--HG--
extra : rebase_source : 5e9752353cdf8db906e94391e9660f61336a9614
2017-03-28 14:56:03 +09:00
Kartikaya Gupta ec69fdebcf Merge m-c to graphics
MozReview-Commit-ID: I4ehbSXNLmS
2017-03-27 09:18:34 -04:00
Kartikaya Gupta 3956a6bca3 Merge m-c to graphics
MozReview-Commit-ID: FT418lFT961
2017-03-24 10:10:11 -04:00
Carsten "Tomcat" Book 7419b36815 merge mozilla-inbound to mozilla-central a=merge 2017-03-24 14:24:21 +01:00
Mason Chang 373e07ac81 Bug 1350004. Expand number of allowed assertions because sometimes we get 3 instead of 2. r=masayuki
DONTBUILD because this is a backout and reland to fix bug number.

MozReview-Commit-ID: Fr5nbU3Hlj2
2017-03-23 22:28:44 -07:00
Kartikaya Gupta f672f579d0 Back out cset 4b47e1e71f37 for having the wrong bug number. r=backout 2017-03-24 10:01:06 -04:00
Mason Chang 46b188f51a Bug 1331357. Expand number of allowed assertions because sometimes we get 3 instead of 2. r=masayuki 2017-03-23 22:28:44 -07:00
Makoto Kato 8854f13fca Bug 1348851 - Part 2. Add crash test. r=masayuki
MozReview-Commit-ID: 9QPwtwYfNa7

--HG--
extra : rebase_source : bd740815d460b4a536a42cd40f72c7cead5118fe
2017-03-21 14:36:52 +09:00
Makoto Kato f09a0f4b5c Bug 1348851 - Part 1. Use new block when better selection isn't found. r=masayuki
This is a kind of regression of bug 1088054 part 6.  If new block doesn't have child node, GetLastEditableChild will return null after landing bug 1088054. So, we should use new block when GetLastEditableChild returns null.

MozReview-Commit-ID: Gzt1Xp3Sl47
***
P1

MozReview-Commit-ID: 8LVp5qGnme4

--HG--
extra : rebase_source : f0ed76b65517168b6b11edf96164b3e596038fc1
2017-03-24 10:30:21 +09:00
Masayuki Nakano e877ded333 Bug 1349138 Edit transactions should store their editor instance with strong reference r=smaug
Edit transactions should store their editor instance with strong reference and they should be released at destroying the editor.

MozReview-Commit-ID: D67KU8WFxyo

--HG--
extra : rebase_source : 28c8a37498cad9f2e308eb4416cef76cf395bb9c
2017-03-21 19:00:36 +09:00
Mats Palmgren 00b74113a3 Bug 1333482 part 4 - [css-ui] Amend all uses of '-moz-appearance:none' in tests to also specify 'appearance:none' (automated change). r=dholbert
MozReview-Commit-ID: BNOR5VRpV2E
2017-03-23 22:11:22 -07:00
Matt Brubeck ea53640d30 Bug 1337068 - stylo: Update test expectations. r=emilio
MozReview-Commit-ID: F8dogEQLdgt

--HG--
extra : rebase_source : 57e2ad20c9c13130239fc4d4b1ff537733a77577
extra : intermediate-source : abac6252e97f10b4c45223c5748f5a3bb59d86f2
extra : source : 4f1af10cb01e8b48da5e3ad8487487131fd51b1f
2017-03-18 11:53:44 -07:00
Zibi Braniecki 3d91da8726 Bug 1347314 - Migrate calls to ChromeRegistry::GetSelectedLocale to use LocaleService::GetAppLocale. r=jfkthame,Pike
In cases, where the caller is looking for the locale to be used for JS Intl API,
we can now replace it with `undefined` which causes JS Intl API to use the default
locale which since bug 1346674 is resolved to the app locale.

This allows us to remove a lot of calls for the app locale.

The remaining ones are split between `AsBCP47` and `AsLangTag`.
Here, the `AsLangTag` is used, as described in the API docs, for cases where
the language string is used for localization purposes, such as language negotaition
matching to our language resources etc.
`AsBCP47` is used when the returned value is handed over to ICU API.

MozReview-Commit-ID: DzmFEUvMq3N

--HG--
extra : rebase_source : 513ed31d995864939aa893e73c81ffdf591a6617
2017-03-14 16:09:54 -07:00
Sebastian Hengst 0a04f3b9e2 Backed out changeset cc308a73ad05 (bug 1347314) for eslint failure in test_device.html. r=backout 2017-03-22 18:20:26 +01:00
Zibi Braniecki c2cd68a689 Bug 1347314 - Migrate calls to ChromeRegistry::GetSelectedLocale to use LocaleService::GetAppLocale. r=jfkthame,Pike
In cases, where the caller is looking for the locale to be used for JS Intl API,
we can now replace it with `undefined` which causes JS Intl API to use the default
locale which since bug 1346674 is resolved to the app locale.

This allows us to remove a lot of calls for the app locale.

The remaining ones are split between `AsBCP47` and `AsLangTag`.
Here, the `AsLangTag` is used, as described in the API docs, for cases where
the language string is used for localization purposes, such as language negotaition
matching to our language resources etc.
`AsBCP47` is used when the returned value is handed over to ICU API.

MozReview-Commit-ID: DzmFEUvMq3N

--HG--
extra : rebase_source : 13fa4c397ba4c79303a2cd76684b5b8c4bd17331
2017-03-14 16:09:54 -07:00
Carsten "Tomcat" Book 62f6c37109 merge mozilla-inbound to mozilla-central a=merge 2017-03-22 14:26:27 +01:00
Boris Zbarsky ec233151ac Bug 1348331 part 2. Switch Preferences::RegisterCallback/RegisterCallbackAndCall consumers that want prefix matches to the new RefisterPrefixCallback(AndCall) APIs. r=froydnj,padenot
MozReview-Commit-ID: 2ebVZO4fN6i
2017-03-21 14:59:02 -04:00
Masayuki Nakano 9a58410ee2 Bug 1349178 Make nsIEditor.transactionManager readonly r=m_kato
There are no app which replaces transaction manager of editor.  Additionally, replacing transaction manager of an editor with different editor or same editor but after initialized again due to some reasons may cause unexpected problems.

Therefore, this patch makes it readonly.

MozReview-Commit-ID: K7zepOjrzvC

--HG--
extra : rebase_source : ee1944af57c8102628b8cffbc720d2b8e5e9088d
2017-03-21 20:57:15 +09:00
Makoto Kato d8f81ffef5 Bug 1347818 - Part 2. Add documentCharacterSet test. r=masayuki
MozReview-Commit-ID: LvUNE7UNpik

--HG--
extra : rebase_source : b4174df48c243c782bdb5e62d4c83139040724ee
extra : histedit_source : b5f1ee924a820099b9131a6e4b67d71266d0ec74
2017-03-17 15:24:56 +09:00
Makoto Kato 243800123d Bug 1347818 - Part 1. Clean up documentCharacterSet not to use nsIDOM*. r=masayuki
I want to remove nsIDOMNodeList usages from editor excepting old debug code.

(BTW, we might have to change to <meta charset> instead of <meta http-equive>, but it should handle by another issue)

MozReview-Commit-ID: ArAVOHigKNW

--HG--
extra : rebase_source : 74ddcaa760c0cc80d6395acb3a6c9374a80dec25
extra : histedit_source : f582131f2b1d5cca8b024b0936ad04634566014e%2Ce95119c3c80903588b24fc66cd6a5b3a8e1458a9
2017-03-17 16:32:06 +09:00
Masayuki Nakano c75983c507 Bug 1347092 part.3 Make EditorBase::CreateTxnForDeleteSelection() return already_AddRefed<EditAggregateTransaction> r=m_kato
MozReview-Commit-ID: DEeRPbH9JJK

--HG--
extra : rebase_source : ea8bf90ca8d807884c5642d6df22bb7148949ac6
2017-03-15 14:35:43 +09:00
Masayuki Nakano 566d8c8f39 Bug 1347092 part.2 Make EditorBase::CreateTxnForDeleteInsertionPoint() return already_AddRefed<EditTransactionBase> r=m_kato
EditorBase::CreateTxnForDeleteInsertionPoint() appends DeleteTextTransaction or DeleteNodeTransaction to the given EditAggregateTransaction.  For consistency with other CreateTxnFor*() methods, this should just create a transaction and return it.  Then, the caller should append the transaction to EditAggregateTransaction.

MozReview-Commit-ID: 6sqEijicFHE

--HG--
extra : rebase_source : 1443b3d9c8e90044994ad87965a26d76926e2c72
2017-03-14 22:01:36 +09:00
Masayuki Nakano 3f530e2fd9 Bug 1347092 part.1 Make EditorBase::CreateTxnForDeleteNode() return already_AddRefed<DeleteNodeTransaction> r=m_kato
MozReview-Commit-ID: CyvzpoZmRoO

--HG--
extra : rebase_source : 4015efbcb08fff55eae0d09385d96af771f1e8e1
2017-03-14 20:50:24 +09:00
David Major ed12ea611f Bug 1346078: Remove nsAString_internal and just use the nsAString name directly. r=bsmedberg
MozReview-Commit-ID: DWDEDMIVKm7

--HG--
extra : rebase_source : 7fe8dc07c816dca234c67761e61cdee372a87e97
2017-03-10 15:17:23 +13:00
Makoto Kato c6bd345380 Bug 1347367 - Remove unimplemented FindUserSelectAllNode. r=masayuki
After bug 769967, FindUserSelectAllNode always returns nullptr.  So we get rid of this method.  Also, AreaRestriction is used by this, so it is unnecessary now.

MozReview-Commit-ID: HTc8PUCQmy5

--HG--
extra : rebase_source : 11b19a1976f6696e0d872c9020b90701dd22c8c0
2017-03-15 13:40:23 +09:00
Iris Hsiao 106889c6f6 Backed out 9 changesets (bug 1333482) for stylo test failures and this should be landed to autoland
Backed out changeset d8828e22dbaa (bug 1333482)
Backed out changeset a39aaecd10f7 (bug 1333482)
Backed out changeset c957d8c0281e (bug 1333482)
Backed out changeset d569fc566e43 (bug 1333482)
Backed out changeset 7e8c03090d34 (bug 1333482)
Backed out changeset c4511a175f2f (bug 1333482)
Backed out changeset 5483a82f7ce9 (bug 1333482)
Backed out changeset 4e7e5efb1bd8 (bug 1333482)
Backed out changeset 51d1accaeddb (bug 1333482)
2017-03-24 10:21:30 +08:00
Mats Palmgren c0c0e154ea Bug 1333482 part 4 - [css-ui] Amend all uses of '-moz-appearance:none' in tests to also specify 'appearance:none' (automated change). r=dholbert
MozReview-Commit-ID: BNOR5VRpV2E
2017-03-23 23:13:18 +01:00
Boris Zbarsky 15cb86a93f Bug 1349940. DeleteRangeTransaction should not keep its range alive longer than it needs to. r=masayuki, a=kwierso
MozReview-Commit-ID: 283P59EDFPW
2017-03-24 16:07:11 -04:00
Joel Maher 25d22c7560 Bug 1348754 - annotate reftests to allow stylo to run in e10s. r=xidorn 2017-03-24 09:51:42 -04:00
David Major 96a4158a43 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

--HG--
extra : rebase_source : 68bbdc893850e4b6073d6fc2f036e53853b8927e
2017-03-14 15:26:36 +13:00
Masayuki Nakano 6449c8aac8 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

--HG--
extra : rebase_source : 9ba52ab0bd1249abded81019847c85182ca1926e
2017-03-14 10:36:21 +09:00
Iris Hsiao 5cece96e1c 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)
2017-03-14 11:52:24 +08:00
David Major e7336ecc95 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

--HG--
extra : rebase_source : 68bbdc893850e4b6073d6fc2f036e53853b8927e
2017-03-14 15:26:36 +13:00
Carsten "Tomcat" Book c1edc7067d merge mozilla-inbound to mozilla-central a=merge 2017-03-13 15:22:26 +01:00
Wes Kocher 77632ccd1b Merge m-c to inbound, a=merge
MozReview-Commit-ID: JXQqoTEXxwz
2017-03-10 17:22:54 -08:00
Masayuki Nakano 63c152d62f Bug 1345690 part.4 Rename JoinNodeTransaction::CheckValidity() to JoinNodeTransaction::CanDoIt() for consistency with other transaction classes r=m_kato
MozReview-Commit-ID: 3a5QXiofEL2

--HG--
extra : rebase_source : 40425f274eb69deea3e65cf1cdd35d2630fe4011
2017-03-10 13:46:27 +09:00
Masayuki Nakano 566c4af32a Bug 1345690 part.3 Rename DeleteTextTransaction::Init() to DeleteTextTransaction::CanDoIt() since it does not initialize anything and just checking if the text node is editable r=m_kato
MozReview-Commit-ID: EyqHjHF3Q8G

--HG--
extra : rebase_source : 8004a067bf7fb8aedef8dc67d9ebb72ce5f89755
2017-03-10 13:38:28 +09:00
Masayuki Nakano 22a5d6332f Bug 1345690 part.2 Make the constructor of DeleteRangeTransaction initialize all members instead of Init() r=m_kato
Similar to DeleteNodeTransaction, DeleteRangeTransaction should take all necessary information as its arguments.  However, different from DeleteNodeTransaction, this doesn't need to implement CanDoIt() since nobody checks the state.

MozReview-Commit-ID: 2Z9fNtGeJ9c

--HG--
extra : rebase_source : fe3f75126a8975a0edb00a6c0709134b0a0f4d87
2017-03-09 11:19:39 +09:00
Masayuki Nakano 579b4d1fcb Bug 1345690 part.1 Make the constructor of DeleteNodeTransaction initialize all necessary members instead of Init() r=m_kato
I'd like to make mNodeToDelete an owning-non-null member, but it's not cycle collector aware.  Therefore, this patch only changes mEditorBase from pointer to reference.

MozReview-Commit-ID: H3wxmN1t92s

--HG--
extra : rebase_source : ca9984b47c9d242f82e395773a9a7f534e60c022
2017-03-10 13:23:40 +09:00
Andreas Farre 85536fcfc4 Bug 1337392 - Update test cases to match new cursor behavior. r=smaug
MozReview-Commit-ID: 4BdZyeqTBAx
2017-03-08 16:41:42 +01:00
Carsten "Tomcat" Book f6885163cd Merge mozilla-central to mozilla-inbound 2017-03-08 14:28:34 +01:00
Florian Quèze 9d62681259 Bug 1345253 - Use element.firstChild.remove() instead of element.removeChild(element.firstChild), r=jaws. 2017-03-08 10:17:52 +01:00
Masayuki Nakano 21c9475ab2 Bug 1344149 EditorEventListener shouldn't handle odd focus/blur events which may be created in chrome script r=smaug
EditorEventListener listens any trusted focus/blur events which may be synthesized by JS without proper event class. Then, editor will setup selection limitation.  This may cause odd behavior.  Therefore, EditorEventListener should stop handling focus/blur events which do not come from nsFocusManager.

MozReview-Commit-ID: 7SlfIRgArkr

--HG--
extra : rebase_source : ade7009f1b87fbc629de32b6f22a85c87c72107f
2017-03-08 15:24:55 +09:00
Michael Layzell 165c0a9513 Bug 1317322 - Part 1: Activate `paste` in menus when within <textarea> controls, r=ehsan
MozReview-Commit-ID: 7YD8qtsC3u6
2017-03-06 14:37:39 -05:00
Boris Zbarsky f80dd7a663 Bug 1345237. Propagate uint32_t deeper into the editor state and text control frame code. r=mystor
MozReview-Commit-ID: KeUo8My6eBJ
2017-03-09 14:44:45 -05:00
Masayuki Nakano 0c1872f92e Bug 1345763 part.2 Implement AsHTMLEditor() in EditorBase and its subclasses and replace casts with it r=smaug
MozReview-Commit-ID: CUYV0tMjQHH

--HG--
extra : rebase_source : 44559913e3df50a3ad33074b2955cce03601bf8b
2017-03-09 18:38:41 +09:00
Masayuki Nakano e794313540 Bug 1345763 part.1 Implement AsTextEditor() in EditorBase and its subclasses and replace casts with it r=smaug
MozReview-Commit-ID: 3ZyBefyc45N

--HG--
extra : rebase_source : 0af0607849b9a19859b73b327887c895ae08036b
2017-03-10 14:05:37 +09:00
Wes Kocher 6aeb8acc68 merge graphics branch to m-c a=merge
MozReview-Commit-ID: 5GYHFV8IsKo
2017-03-03 11:23:31 -08:00
Kartikaya Gupta 48fb1c4b1e Merge m-c to graphics
MozReview-Commit-ID: GK8bGynKhO5

--HG--
rename : browser/components/extensions/ext-theme.js => toolkit/components/extensions/ext-theme.js
rename : browser/components/extensions/schemas/theme.json => toolkit/components/extensions/schemas/theme.json
rename : browser/components/extensions/test/browser/browser_ext_themes_chromeparity.js => toolkit/components/extensions/test/browser/browser_ext_themes_chromeparity.js
rename : browser/components/extensions/test/browser/browser_ext_themes_dynamic_updates.js => toolkit/components/extensions/test/browser/browser_ext_themes_dynamic_updates.js
rename : browser/components/extensions/test/browser/browser_ext_themes_lwtsupport.js => toolkit/components/extensions/test/browser/browser_ext_themes_lwtsupport.js
2017-03-03 08:28:21 -05:00
aceman 9bbb2bd7c7 Bug 1326494 - Remove an outdated reference to nsISupportsArray in libeditor. r=erahm DONTBUILD a=tomcat
--HG--
extra : amend_source : 30dd120499f06d2b3394645a5fc2e0c3dd054fce
2017-03-01 16:17:00 +01:00
Makoto Kato 2c1a2f9f2c Bug 1344116 - Clean up HTMLEditRules::RemoveAlignment. r=masayuki
Before I will fix some justify* command's bug, I would like to clean up HTMLEditRules::RemoveAlignment to get rid of nsIDOM* into this method.

MozReview-Commit-ID: 4UATycS5iBl

--HG--
extra : rebase_source : 7079a774b4b8359aeffbdbdf2efe0b45bd92c173
2017-03-03 13:13:21 +09:00
Kartikaya Gupta c60e79b7bf Bug 1342934 - Allow an assertion in non-e10s mode as well, if webrender is enabled. r=rhunt
MozReview-Commit-ID: 5Spf2sHdPUp
2017-02-27 11:15:11 -05:00
Masatoshi Kimura 7be7b11a1c Bug 1342144 - Remove version parameter from the type attribute of script elements. r=jmaher
This patch is generated by the following sed script:
find . ! -wholename '*/.hg*' -type f \( -iname '*.html' -o -iname '*.xhtml' -o -iname '*.xul' -o -iname '*.js' \) -exec sed -i -e 's/\(\(text\|application\)\/javascript\);version=1.[0-9]/\1/g' {} \;

MozReview-Commit-ID: AzhtdwJwVNg

--HG--
extra : rebase_source : e8f90249454c0779d926f87777f457352961748d
2017-02-23 06:10:07 +09:00
Boris Zbarsky a16891fa05 Reenable some more stylo reftests. No bug. r=bzbarsky
MozReview-Commit-ID: BbRlPC60tvt
2017-02-24 10:49:37 -05:00
Carsten "Tomcat" Book e6b82618f4 merge mozilla-inbound to mozilla-central a=merge 2017-02-23 14:59:37 +01:00
Makoto Kato d2b6ed15ad Bug 833889 - Part 1. Remove CSS properties even if it is default value. r=masayuki
When selected nodes are <span style="font-weight: normal;">A</span>, toggle bold inserts new span element into parent node like <span style="font-weight: bold;"><span style="font-weight: normal;">A</span><span>.  So bold isn't applied correctly.

IsCSSEquivalentToHTMLInlineStyleSet might return false even if style is applied.  Because it returns true that style isn't default value.  Since "font-weight: normal" is default property, it isn't removed.

So when style is already applied even if it is default value, we should remove it.

MozReview-Commit-ID: LgImkHRp9Ff

--HG--
extra : rebase_source : dd4d894495754a81abaf5a2aede1132056920beb
extra : histedit_source : 72d196cd9f90296eb00b97c1538704c714cc871c
2017-02-23 17:10:27 +09:00
Makoto Kato 2dcf7753c2 Bug 1327798 - Part 1. PasteNoFormatting shouldn't set text/html to clipboard event on paste. r=enndeakin
MozReview-Commit-ID: 8VMudiPiXcK

--HG--
extra : rebase_source : 2476f69296a60f6978f97da2daef021b90350dbf
2017-02-22 18:34:45 +09:00
Boris Zbarsky a11bfd53bd Bug 1341988. Reenable a bunch of stylo reftests that were disabled for reasons that are not relevant anymore. r=bz
MozReview-Commit-ID: CLqLHexhBX3

--HG--
extra : rebase_source : 07dfb89d0651240362395494fdd7ee94363430b6
2017-02-23 02:09:57 -05:00
Andrea Marchesini d32aa97041 Bug 1285898 - [e10s-multi] Localstorage "storage" event is not fired with multiple content processes. r=asuth
--HG--
extra : rebase_source : 724b38c52139dee1c6f746152fefff05333dfc24
extra : intermediate-source : e56108122b9088555f29a28e6086d4d117a68c4e
extra : source : 6681b50c1f6d0d2d22d5f631234402e020c0b78a
2017-02-19 22:16:48 -05:00
Kartikaya Gupta 3d5856468f Bug 1331357 - Expand number of allowed assertions during a reftest, because in QR builds we sometimes get two. r=masayuki
MozReview-Commit-ID: LvHxTtdLDjD

--HG--
extra : rebase_source : 25f722524b6bc1a91f560ec4ae1253c5f07b19ee
2017-02-15 11:05:35 -05:00
Masayuki Nakano 99d0a9c9a4 Bug 1338451 Editor should commit composition first at handling mousedown event r=m_kato
Editor may need to create some new transaction during handling a mousedown event.  Therefore, editor needs to finish pending composition transaction.  So, mousedown event handler should commit composition first.

MozReview-Commit-ID: 2BaoYwB7wLS

--HG--
extra : rebase_source : 1babc2fd37ff08a1316a62943adc2a7a36d8ca53
2017-02-10 16:51:59 +09:00
Xidorn Quan 95c1b23bd9 Bug 1339341- Downgrade several stylo errors to warnings. r=heycam
MozReview-Commit-ID: 2Sa8dS8uSo5

--HG--
extra : rebase_source : c6809309bbef5faf458b56018b964619ff386238
2017-02-14 18:26:10 +11:00
Makoto Kato 2d7d8e1271 Bug 1270235 - Part 2. Add test. r=masayuki
MozReview-Commit-ID: BV7Dc6YiNM6

--HG--
extra : rebase_source : 935515f86b8a59844f3f57bb011629d1f9f53b3b
2017-02-13 15:46:15 +09:00
Makoto Kato e1cb496376 Bug 1270235 - Part 1. Check parent node is null in RemoveEmptyNodes. r=masayuki
RemoveEmptyNodes doesn't check whether parent node is null.  So we shouldn't add null to skip list.

Also, although this crash depends on clang, if debug build, it will hit the assertion on all compiler.

MozReview-Commit-ID: GgiczVExlIn

--HG--
extra : rebase_source : 5ec0119a80d86dfeac5e970cdf540997cca24c34
2017-02-13 15:46:09 +09:00
Masayuki Nakano b30dc0891e Bug 1337718 part.10 Make EditorEventListener::MouseClick() and EditorEventListener::HandleMiddleClickPaste() use WidgetMouseEvent as far as possible r=m_kato
MozReview-Commit-ID: EMFevpq9ftM

--HG--
extra : rebase_source : bc2074cf119b8ea698f3eed809b43d4a93d49168
2017-02-08 22:55:54 +09:00
Masayuki Nakano fa85dc8ad8 Bug 1337718 part.9 Make IMEStateManager::OnClickInEditor() take const WidgetMouseEvent* instead of nsIDOMMouseEvent* r=m_kato
MozReview-Commit-ID: KdoMcxW8lkT

--HG--
extra : rebase_source : a03316e3a6ca7daf937032f32e00f2a4b2fd23fc
2017-02-08 22:29:14 +09:00
Masayuki Nakano a6bd2cc214 Bug 1337718 part.8 Make EditorEventListener::NotifyIMEOfMouseButtonEvent() take WidgetMouseEvent* instead of nsIDOMMouseEvent* r=m_kato
MozReview-Commit-ID: A53lxmDXLMb

--HG--
extra : rebase_source : 4b022a38c45d68563fcd89b9e8c504cb52f7fab0
2017-02-08 22:19:14 +09:00
Masayuki Nakano cee96a2b9a Bug 1337718 part.7 Make IMEStateManager::OnMouseButtonEventInEditor() take WidgetMouseEvent* instead of nsIDOMMouseEvent r=m_kato
MozReview-Commit-ID: FDselwSymZq

--HG--
extra : rebase_source : 211e4f91075d0a93bf10fd82273856010957b3ee
2017-02-08 22:02:49 +09:00
Masayuki Nakano 3e94f4acb9 Bug 1337718 part.6 Make EditorEventListener::KeyDown() take const WidgetKeyboardEvent* instead of nsIDOMKeyEvent* r=m_kato
MozReview-Commit-ID: 6gST8uULwSb

--HG--
extra : rebase_source : 1428e1d24b0b8295a3d57764535651f221fcf637
2017-02-08 21:30:27 +09:00
Masayuki Nakano b66e2b2e6e Bug 1337718 part.5 Make IsCtrlShiftPressed() take const WidgetKeyboardEvent* instead of nsIDOMKeyEvent* r=m_kato
Additionally, this patch removes unnecessary name space wrapper of IsCtrlShiftPressed().  Perhaps, it was necessary when mozilla::EditorEventListener was nsEditorEventListener.

MozReview-Commit-ID: EHzt7aRtYgQ

--HG--
extra : rebase_source : d38d73226de8f5563ad66de10f8f8ed701d766a1
2017-02-08 20:05:12 +09:00
Masayuki Nakano c58f95a48b Bug 1337718 part.4 Make EditorEventListener::KeyUp() take const WidgetKeyboardEvent* instead of nsIDOMKeyEvent* r=m_kato
MozReview-Commit-ID: K9zCJsYgfbL

--HG--
extra : rebase_source : 77941f0fe5be600a61576706968f25ff13d218c7
2017-02-08 20:22:57 +09:00
Masayuki Nakano 2f6ff9d325 Bug 1337718 part.3 Make EditorEventListener::KeyPress() take WidgetKeyboardEvent* instead of nsIDOMKeyEvent* r=m_kato
MozReview-Commit-ID: 49fcZXPSsQ4

--HG--
extra : rebase_source : f0e3791c0067c580cb4f134d3ff9c1f5f504aaa2
2017-02-08 19:50:50 +09:00
Masayuki Nakano 87c78a5bfb Bug 1337718 part.2 Make EditorEventListener::ShouldHandleNativeKeyBindings() take WidgetKeyboardEvent* instead of nsIDOMKeyEvent* r=m_kato
MozReview-Commit-ID: 4JS2yJ6iXgY

--HG--
extra : rebase_source : 30cbcab74da7731e446329a3263dd82cd16fdfab
2017-02-08 19:47:05 +09:00
Masayuki Nakano c4cea9a380 Bug 1337718 part.1 Make EditorBase::HandleKeyPressEvent() take WidgetKeyboardEvent* instead of nsIDOMKeyEvent* r=m_kato
MozReview-Commit-ID: 8QUiHPRf9AH

--HG--
extra : rebase_source : d9a531248f4e72dfb501146976af7efd64d1e122
2017-02-08 20:18:17 +09:00
Masayuki Nakano 5442d350f3 Bug 1337739 Create an enum eKeyLocation* for avoiding to use nsIDOMKeyEvent::DOM_KEY_LOCATION_* r=smaug
Currently, we use alias NS_VK_* for WidgetKeyboardEvent::mKeyCode.  Similarly, we should create alias enum for nsIDOMKeyEvent::DOM_KEY_LOCATION_*.  Then, we can reduce the length and avoid to include nsIDOMKeyEvent in some cpp files.

MozReview-Commit-ID: 5cs4zQ061Lc

--HG--
extra : rebase_source : e6a6edd27718b9e3d4a40b07902d029791876999
2017-02-08 21:04:22 +09:00
Wes Kocher d3307f19d5 Merge inbound to central, a=merge
MozReview-Commit-ID: 9TTIrjfNKZm

--HG--
rename : dom/base/test/test_bug1263696.html => testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback-2.html
rename : dom/base/test/test_bug1263696.html => testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-in-object-fallback-2.html
2017-02-09 17:01:39 -08:00
Carsten "Tomcat" Book e2a2f8d124 merge mozilla-inbound to mozilla-central a=merge 2017-02-09 16:04:14 +01:00
Carsten "Tomcat" Book ffe70d35b2 Merge mozilla-central to mozilla-inbound 2017-02-09 11:38:08 +01:00
Makoto Kato 894130bddc Bug 1337698 - Part 3. TypeInState should use UniquePtr. r=masayuki
MozReview-Commit-ID: K9UY83Nx1v3

--HG--
extra : rebase_source : e9177c1c31805288e04270b589300c8e49d59940
extra : amend_source : 91bea4e023031b1c1594799b8dbe70dc3fb5b6ed
extra : histedit_source : 2ee5b839c0f8019d18586a1b07e06e122e7780ee
2017-02-08 18:14:53 +09:00
Makoto Kato d84f1fef72 Bug 1337698 - Part 2. HTMLEditor should use UniquePtr. r=masayuki
MozReview-Commit-ID: 2O9f0K1RSU4

--HG--
extra : rebase_source : 966ffcf877756a876d72a0e09659dbeee406cddd
extra : histedit_source : 6eac1458a8f3826e73238cfbdbd03c1426a390be
2017-02-08 18:14:24 +09:00
Makoto Kato b8d5c8b156 Bug 1337698 - Part 1. PlaceholderTransaction should use UniquePtr. r=masayuki
MozReview-Commit-ID: 8xqAKRcKCLb

--HG--
extra : rebase_source : d0a8d202e973d06c823cd5351d9561b9b5919f43
extra : histedit_source : 696ac1246fbb3691b2f042a0d16e438f37dcf64d%2C446038a833523fed82771c3c177811971679c269
2017-02-09 14:26:10 +09:00
Cameron McCormack 90e83367ae Bug 1334768 - stylo: Test expectation adjustments for for 2017-02-09 merge. r=me
MozReview-Commit-ID: AhvCAu3NYrb
2017-02-09 21:11:09 +08:00
Makoto Kato 6b3afdd60e Bug 1337273 - Don't use mTextEditor from HTMLEditRules. r=masayuki
HTMLEditRules can access both mTextEditor and mHTMLEditor, but we should use mHTMLEditor only on HTMLEditRules for readability.

MozReview-Commit-ID: HfzwAD554XQ

--HG--
extra : rebase_source : 7d722915a41eb878e2cd2ff711ac4925bd91d1d8
2017-02-08 18:32:32 +09:00
Masayuki Nakano 431e1a12b3 Bug 1336011 part.3 Create an alias of the type of mDocStateListeners r=smaug
MozReview-Commit-ID: L0TczDcH4t8

--HG--
extra : rebase_source : 0a250056797c6fb760e7aa674565d3e71df6f568
2017-02-07 22:52:23 +09:00
Masayuki Nakano a5c23d8c73 Bug 1336011 part.2 Create an alias of the type of mEditorObservers r=smaug
MozReview-Commit-ID: 7LWl5F4C0Ge

--HG--
extra : rebase_source : 0393619ad8f3ea1090244db5eeb117f73afb47ea
2017-02-07 22:36:16 +09:00
Masayuki Nakano 36efe8eb2b Bug 1336011 part.1 EditorBase shouldn't refer mActionListeners directly in loops because it might be removed during a loop r=smaug
Items in mActionListeners may be removed during a call of a method of another item.  Therefore, all items should be copied to different array before each loop referring mActionListeners.

MozReview-Commit-ID: FA2xXdJ9SoR

--HG--
extra : rebase_source : 054a58f5a82df6911d42b17fdb3f11738ceab2af
2017-02-07 22:26:56 +09:00
Makoto Kato 78b1b5964b Bug 1336349 - Merge GetIsDocumentEditable implementation to EditorBase. r=masayuki
GetIsDocumentEditable is implemnted in EditorBase, TextEditor, and HTMLEditor.  This is virtual method, we won't use EditorBase::GetIsDocumentEditable.  Also, TextEditor::GetIsDocumentEditable and HTMLEditor::GetIsDocumentEditable are same implementation.  So we should merge this to EditorBase.

MozReview-Commit-ID: 62euqUaYAuY

--HG--
extra : rebase_source : 1a3025aeddc61d0ae3e0de334472ee8393893114
2017-02-03 16:22:50 +09:00
Phil Ringnalda b1aadb3572 Backed out 5 changesets (bug 1285898) for causing the crashes of bug 1336242
Backed out changeset 15b3b9feb54f (bug 1285898)
Backed out changeset 1d0bfb02d6c0 (bug 1285898)
Backed out changeset bc99844772ee (bug 1285898)
Backed out changeset 8bbe285cf5c0 (bug 1285898)
Backed out changeset e56108122b90 (bug 1285898)
2017-02-02 22:02:24 -08:00
Wes Kocher 2dcccc4332 Merge inbound to central, a=merge
MozReview-Commit-ID: 9bhCPrArK3P
2017-02-02 16:39:24 -08:00
Boris Zbarsky 08d76ec702 Bug 1332812. Remove some more unused or nearly-unused nsIDOMElement bits. r=froydnj 2017-02-02 10:32:58 -05:00
Sebastian Hengst 4c5957bbd3 Backed out changeset c724fbd9c326 (bug 1332812) for build bustage. r=backout on a CLOSED TREE 2017-02-02 16:58:52 +01:00
Boris Zbarsky b249de7c3a Bug 1332812. Remove some more unused or nearly-unused nsIDOMElement bits. r=froydnj 2017-02-02 10:32:58 -05:00
Makoto Kato 54208413e9 Bug 1335672 - Missing virtual keyword into HTMLEditor. r=masayuki
MozReview-Commit-ID: 9C9KMfs5GAF

--HG--
extra : rebase_source : 0e2dd971b4b7c77dea04a74b9b4af8e5a2c822c2
2017-02-01 17:09:54 +09:00
Andrea Marchesini 1e58b980f5 Bug 1285898 - [e10s-multi] Localstorage "storage" event is not fired with multiple content processes. r=asuth
--HG--
extra : rebase_source : 9968fd96960aecd516bfcc5c239b9de85280ab8a
extra : source : 6681b50c1f6d0d2d22d5f631234402e020c0b78a
2017-01-17 15:43:12 -05:00
Masayuki Nakano 6ec0bf9ddd Bug 1314053 part.4 EditorEventListener should grab mEditorBase in smaller scope as far as possible and shouldn't access it directly during handling an event r=smaug
So, EditorEventListener should grab mEditorBase in smaller scope as far as possible.  And each event listener method shouldn't access mEditorBase directly at calling its method since it might be changed to another instance.

MozReview-Commit-ID: IUCl5gbh4ut

--HG--
extra : rebase_source : 217d881923193a25db0649fc1f1a87bd43fa4d99
2017-01-17 19:30:39 +09:00
Masayuki Nakano 18382319ef Bug 1314053 part.3 EditorEventListener should check if it's removed during a call of editor's method r=smaug
EditorEventListener doesn't check if mEditorBase is available even after it's removed from the editor.  If it becomes nullptr, i.e., it's detached from editor, it shouldn't continue to handle event.

This patch changes some methods' nsIDOM*Event argument to WidgetEvent since it's simpler.

MozReview-Commit-ID: CI3U4pfVxtb

--HG--
extra : rebase_source : 7135c4615f6a1dd8bb4b6698261c75a9f8c70930
2017-01-21 00:13:45 +09:00
Masayuki Nakano 7ab96b2cef Bug 1314053 part.2 Change EditorBase::IsAcceptableInputEvent()'s argument from nsIDOMEvent* to WidgetGUIEvent* r=smaug
MozReview-Commit-ID: Jo6EwQubUAM

--HG--
extra : rebase_source : 098b23946f349bbe7641a2059538ffb20ae4f5bb
2017-01-17 17:17:06 +09:00
Masayuki Nakano 91360648d1 Bug 1314053 part.1 Change EditorBase::UpdateIMEComposition()'s argument from nsIDOMEvent* to WidgetCompositionEvent* r=smaug
Before cleaning up EditorEventListener, we need to make it use Widget*Event at each event method.

MozReview-Commit-ID: 482HHN0bCVV

--HG--
extra : rebase_source : a2f504ca931ec98945f7317b972b21d765304c92
2017-01-17 17:01:17 +09:00
Cameron McCormack 8731638062 Bug 1334768 - stylo: Adjust a bunch of reftest expectations. r=me on a CLOSED TREE
MozReview-Commit-ID: 1qa08cspl7o
2017-01-31 17:38:24 +01:00
Cameron McCormack 590058f927 Bug 1324669 - stylo: Downgrade SMIL assertion even further to a non-test-failing warning. r=me
MozReview-Commit-ID: 5fk6C9qaOgW
2017-01-31 17:37:08 +01:00
Sebastian Hengst ed5bd31f9b Backed out changeset ad45a3da5e4a (bug 1324669) for Windows build bustage: OverflowChangedTracker.h(44). r=backout on a CLOSED TREE 2017-01-31 17:32:12 +01:00
Sebastian Hengst 79a42c161e Backed out changeset e3687105be00 (bug 1334768) 2017-01-31 17:30:16 +01:00
Cameron McCormack 0333846acf Bug 1334768 - stylo: Adjust a bunch of reftest expectations. r=me
MozReview-Commit-ID: 1qa08cspl7o
2017-01-31 23:36:46 +08:00
Cameron McCormack 946b5c3633 Bug 1324669 - stylo: Downgrade SMIL assertion even further to a non-test-failing warning. r=me
MozReview-Commit-ID: 5fk6C9qaOgW
2017-01-31 23:36:12 +08:00
Makoto Kato e904b47a40 Bug 1328023 - Part 2. Add test for undo. r=masayuki
MozReview-Commit-ID: 6ZuluRWrYxb

--HG--
extra : rebase_source : 40a08dbc688ee7c862f716c643897c84e6e86fde
2017-01-30 17:27:26 +09:00
Makoto Kato 1f259574fb Bug 1328023 - Part 1. Don't use RangeUpdater except to composition transaction. r=masayuki
Part 3 fix of bug 1310912 is incorrect for not composition transaction.  PlaceholderTransation is for saving and restoring current selection for undo. So we shouldn't use range updater to normal transaction.

Composition transaction can modify multiple nodes and it merges text node for ime into single text node. So if current selection is into IME text node, it might be failed to restore selection by UndoTransaction. So we need update selection by range updater to work UndoTransaction.

Also, CompositionTransaction::UndoTransaction will set selection after committed text. So at finally, selection will set correct position that composition transaction wants.

MozReview-Commit-ID: 1NcH32YoKPQ

--HG--
extra : rebase_source : 8a29ef3d4d4c64997416a8f3c7fd174766764ad3
2017-01-30 17:25:43 +09:00
Phil Ringnalda 85843f4cff Backed out 4 changesets (bug 1285898) for browser_localStorage_e10s.js failure
Backed out changeset 9c6057cde326 (bug 1285898)
Backed out changeset bd68ebab64fa (bug 1285898)
Backed out changeset 6fdb24e1256d (bug 1285898)
Backed out changeset 6681b50c1f6d (bug 1285898)
2017-01-30 21:49:42 -08:00
Andrea Marchesini db2311e1e0 Bug 1285898 - [e10s-multi] Localstorage "storage" event is not fired with multiple content processes. r=asuth 2017-01-30 22:47:06 -05:00
Wes Kocher 584127af5f Merge inbound to central, a=merge
MozReview-Commit-ID: 4GYZ5Pzy7BY
2017-01-30 15:44:58 -08:00
Carsten "Tomcat" Book 86d6d898a4 Merge mozilla-central to mozilla-inbound 2017-01-30 16:02:19 +01:00
Carsten "Tomcat" Book 29cd257175 merge mozilla-inbound to mozilla-central a=merge 2017-01-30 15:59:14 +01:00
Cameron McCormack 9c4ea5685f Bug 1334768 - stylo: Back out 800030115d2e and 404506488cfb for being completely wrong due to bug 1334938.
MozReview-Commit-ID: 8CGTqmtlguT
2017-01-30 16:49:54 +08:00
Florian Quèze bdc1ffa608 Bug 1334831 - script-generated patch to use .remove() instead of .parentNode.removeChild, r=jaws. 2017-01-30 08:10:22 +01:00
Mats Palmgren 454b00deaa Bug 1332876 - test. 2017-01-30 04:54:38 +01:00
Mats Palmgren 4673e4df59 Bug 1332876 - Bail out of HTMLEditRules::BeforeEdit if we have no Selection. r=masayuki 2017-01-30 04:54:37 +01:00
Cameron McCormack 35486c881a Bug 1334768 - stylo: More reftest expectation adjustments for 2017-01-29 merge.
MozReview-Commit-ID: 8TT4JzUIBZl
2017-01-30 10:53:58 +08:00
Cameron McCormack 7805d4716e Bug 1334768 - stylo: Test expectation adjustments for 2017-01-29 merge.
MozReview-Commit-ID: FFmvs6SHIwW
2017-01-29 15:31:56 +08:00
Carsten "Tomcat" Book 65f7bfd24d Merge mozilla-central to autoland 2017-01-30 16:21:32 +01:00
Masayuki Nakano 33a59616be Bug 1115055 EditorEventListener::MouseDown() should check if mEditorBase is nullptr before calling its ForceCompositionEnd() r=smaug
EditorEventListener::MouseDown() may be called by HTMLEditorEventListener::MouseDown() too.  In this case, mEditorBase may be nullptr.  Therefore, EditorEventListener::MouseDown() should check if mEditorBase is still available before using it.

MozReview-Commit-ID: 1wAgPdt3db0

--HG--
extra : rebase_source : aa06dce861d93728c4302986fbea6096192460d9
2017-01-30 17:43:53 +09:00
Masayuki Nakano 390002be06 Bug 1315450 EditorEventListener::MouseClick() should check if mEditorBase is available before calling its ForceCompositionEnd() r=smaug
IMEStateManager::OnClickInEditor() may cause anything because it may set input context.  For example, it may cause  opening VKB, changing focus or reflow.  So, mEditorBase here might have been gone.

MozReview-Commit-ID: C0SVzb5SueS

--HG--
extra : rebase_source : a09c214ca3e9f15024060b208fa0161a458464a0
2017-01-30 17:03:02 +09:00
Makoto Kato 8d8f935fef Bug 1334361 - Use NS_DECL macro for nsIEditorStyleSheets and nsITableEditor. r=masayuki
Except to nsIEditorStyleSheets and nsITableEditor, we use NS_DECL macro into HTMLEditor, so we should use macro for both.

MozReview-Commit-ID: I6v9mRXNci6

--HG--
extra : rebase_source : bf71cce0ca293a16ac437ba52871d8b926c715a5
2017-01-27 11:11:09 +09:00
Makoto Kato 4d5ef610ea Bug 1335997 - Part 2. Don't use virtual method for NotifyDocumentListeners and ScrollSelectionIntoView. r=masayuki
Both methods don't override by TextEditor and HTMLEditor.  It is unnecessary to use as virtual method.

MozReview-Commit-ID: 6FNO78RauML

--HG--
extra : rebase_source : fb74a9b83a889ab2be04529527704f6de4b666dd
2017-02-02 13:56:57 +09:00
Makoto Kato a6d68747ae Bug 1335997 - Part 1. Don't use virtual method for GetAndInitDocEncoder and InsertTextFromTransferable. r=masayuki
Both methods don't override by HTMLEditor.  It is unnecessary to use as virtual method.

MozReview-Commit-ID: CKqb0bxKEOr

--HG--
extra : rebase_source : 3a2127618693c339ad38995936acc0a3332b5f2e
2017-02-02 13:55:09 +09:00
Florian Quèze b11907c7aa Bug 1334156 - script-generated patch to replace .ownerDocument.defaultView with .ownerGlobal, r=jaws. 2017-01-27 10:51:03 +01:00
Florian Quèze be4dbae285 Bug 1334199 - script-generated patch to omit getComputedStyle's second argument when it's falsy, r=jaws. 2017-01-27 10:51:02 +01:00
Makoto Kato 461fd31b94 Bug 1334372 - Part 2. Don't use virtual method for CreateTxnForAddStyleSheet and CreateTxnForRemoveStyleSheet. r=masayuki
We don't have no overload method for both methods.  So we shouldn't use virtual.

And, other transaction methods return transaction object directly, we should change to it.

MozReview-Commit-ID: 7CXz4XeOobk

--HG--
extra : rebase_source : e208484decec42496e88bbee5ed7d19b1f6daf91
extra : amend_source : 1ebe4378f6c8133b874e573c10c368ae96a51d45
2017-01-27 13:29:00 +09:00
Makoto Kato f1e9546f92 Bug 1334372 - Part 1. Use EditorBase directly in AddStyleSheetTransaction/RemoveStyleSheetTransaction. r=masayuki
Other transaction classes use EditorBase directly, but these transaction classes use nsIEditor.  To remove nsIDOMDocument XPCOM interface usage, I would like to use EditorBase directly.

MozReview-Commit-ID: 3alRd9Zj5aZ

--HG--
extra : rebase_source : ed8e917201a7b8b84551aa8494b7879202553238
2017-01-27 13:15:20 +09:00
Mats Palmgren 84833ec356 Bug 795418 - More tests. 2017-01-27 00:24:00 +01:00
Jorg K 6de2da1715 Bug 795418 - test. r=mats 2017-01-27 00:24:00 +01:00
Mats Palmgren 233c6a6aa6 Bug 795418 - Ensure that the inserted wrapper element has a frame to make it IsEditable. r=masayuki 2017-01-27 00:24:00 +01:00
Carsten "Tomcat" Book 182312677f merge mozilla-inbound to mozilla-central a=merge 2017-01-25 13:47:25 +01:00
Florian Quèze 0e0865f4fc Bug 1331599 - script-generated patch to replace removeEventListener calls with the once option when possible, r=jaws. 2017-01-25 07:01:52 +01:00
Makoto Kato cd26b6b924 Bug 1332977 - Move InsertBR into TextEditor to HTMLEditor. r=masayuki
TextEditor::InsertBR is called from HTMLEditor::TypedText only.  So we should move it to HTMLEditor.

MozReview-Commit-ID: 4rPcayd9T5n

--HG--
extra : rebase_source : 975bb799b7cb71a55e45c5f4169d3e30a9aa5a27
2017-01-23 12:39:47 +09:00