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

4618 Коммитов

Автор SHA1 Сообщение Дата
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
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
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
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
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
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
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
Carsten "Tomcat" Book 7419b36815 merge mozilla-inbound to mozilla-central a=merge 2017-03-24 14:24:21 +01: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
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
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
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
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
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
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
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
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
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
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
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 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
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 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 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
Makoto Kato 054bbb8432 Bug 1332984 - Clean up usage of nsIDOMCharacterData into editor. r=masayuki
Some uses nsIDOMCharacterData to get the attribute of text node.  But, by using Text object, we don't need nsIDOMCharacter.  So we should use Text object instead of nsIDOMCharacterData instead if possible.

MozReview-Commit-ID: 1cwTUcecFj3

--HG--
extra : rebase_source : 2b3745c1aa71ccaca7def3d10e9ad655b4987991
2017-01-23 14:14:30 +09:00
William Chen 29d62db328 Bug 1306532 - Post process node array in ReplaceOrphanedStructure to remove all descendants of replacement node. r=masayuki 2017-01-09 10:11:04 -08:00
Boris Zbarsky 89948607fd Bug 1332353. Make it clearer when a stylesheet is really owned by its mDocument. r=heycam 2017-01-19 23:49:44 -05:00
Phil Ringnalda 02a49ead47 Backed out 2 changesets (bug 1317322) for Windows mochitest-4 leaks
Backed out changeset 51116aebee59 (bug 1317322)
Backed out changeset 3f63b9d012c0 (bug 1317322)
2017-01-18 19:54:48 -08:00
Michael Layzell 203808678f Bug 1317322 - Activate `paste` in menus when within <textarea> controls, r=ehsan
MozReview-Commit-ID: 7YD8qtsC3u6
2017-01-18 17:37:02 -05:00
Jorg K 555bd2c419 Bug 1330796 - Follow-up: Add key code to KEY_Enter. r=masayuki
--HG--
extra : rebase_source : 4346ed0f9d1340b416e4cb2c2098b94aabdae8d0
2017-01-17 10:40:00 -05:00
Wes Kocher 401e9acfca Backed out 2 changesets (bug 1317322) for frequent clipboard test failures a=backout
Backed out changeset 1bc18bb10cc6
Backed out changeset 79d6e9229fda (bug 1317322)

MozReview-Commit-ID: 9SUWpmTLJqG
2017-01-17 14:10:53 -08:00
Michael Layzell 9ec8074497 No bug - Skip test_pasteImgTextarea.html on android, a=bustage
MozReview-Commit-ID: F7GPuSo8JBl
2017-01-17 16:21:33 -05:00
Michael Layzell 79a95a8db1 Bug 1317322 - Activate `paste` in menus when within <textarea> controls, r=ehsan
MozReview-Commit-ID: 7YD8qtsC3u6
2017-01-17 15:05:32 -05:00
Florian Quèze 85611a7b6d Bug 1331081 - script generated patch to omit addEventListener/removeEventListener's third parameter when it's false, r=jaws.
--HG--
extra : rebase_source : a22344ee1569f58f1f0a01017bfe0d46a6a14602
2017-01-17 11:50:25 +01:00