Commit Graph

7709 Commits

Author SHA1 Message Date
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
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
Wes Kocher
95949a3432 Merge m-c to inbound, a=merge
MozReview-Commit-ID: EMipuOLERUq
2017-01-18 15:39:49 -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
Ryan VanderMeulen
187beffa39 Merge m-c to autoland. a=merge
--HG--
extra : rebase_source : 0de29cc9f544d8882d3e8c13572d3c4b98ba3c26
2017-01-18 09:59:53 -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
Shing Lyu
39ec052547 Bug 1331860 - Update reftest-stylo expectations. r=heycam
--HG--
extra : rebase_source : 2c39a745949d3dfeb369f0e1efbf4befde8535c9
2017-01-12 10:37:36 +08: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
Makoto Kato
6c4ca071b5 Bug 1324505 - Part 3. Clean up HTMLEditRules::PopListItem. r=masayuki
PopListItem still uses nsIDOM*.  We should new binding API instead and it is unnecessary to use QI and refcounting if possible.

MozReview-Commit-ID: DJL105hNt6z

--HG--
extra : rebase_source : 40eaab3f8a13fdb7709d165f8374f96084121950
2017-01-11 19:07:33 +09:00
Makoto Kato
540f7d2d63 Bug 1324505 - Part 2. Add crash test. r=masayuki
MozReview-Commit-ID: 7NJr1fGKBZA

--HG--
extra : rebase_source : 6d1da342b10c7d05b82be445665902d1dd47430e
2017-01-11 19:04:32 +09:00
Makoto Kato
47569ce31a Bug 1324505 - Part 1. Check whether parent node is null. r=masayuki
designMode is too strange.  Parent of common ancestor of selection might be nullptr, so we should check whether nullptr.

MozReview-Commit-ID: Cy1k2Mpkws0

--HG--
extra : rebase_source : 104731f259d6c041972288e1e816d73cc6c93320
2017-01-11 19:03:41 +09:00
Jorg K
b3de8e2b23 Bug 1330796 - Add invisible break to span of display:block in HTMLEditRules::SplitMailCites. r=masayuki 2017-01-16 01:40:00 -05:00
Jorg K
5520579a29 Bug 1331237 - Remove left-over dump() statements from test_bug772796.html. r=masayuki 2017-01-14 23:59:00 -05:00
Makoto Kato
8292a2eba6 Backed out changeset f1f0f69bc78f (bug 1324505)
MozReview-Commit-ID: 1DbtAJzgJYo
2017-01-16 19:32:59 +09:00
Makoto Kato
7530aa4e7d Backed out changeset ea8744408e89 (bug 1324505)
MozReview-Commit-ID: ZX7rxfKI13
2017-01-16 19:32:57 +09:00
Makoto Kato
a396fb9acd Backed out changeset 7be23bb65b93 (bug 1324505)
MozReview-Commit-ID: 8ONKT1Q6oER
2017-01-16 19:32:56 +09:00
Makoto Kato
4306cf9aa6 Bug 1324505 - Part 3. Clean up HTMLEditRules::PopListItem. r=masayuki
PopListItem still uses nsIDOM*.  We should new binding API instead and it is unnecessary to use QI and refcounting if possible.

MozReview-Commit-ID: DJL105hNt6z

--HG--
extra : rebase_source : ca3944abde042aac769c64ad5caf8903e715b31d
2017-01-11 19:07:33 +09:00
Makoto Kato
7aef46317d Bug 1324505 - Part 2. Add crash test. r=masayuki
MozReview-Commit-ID: 7NJr1fGKBZA

--HG--
extra : rebase_source : 7ffb4131ca5e1a4eac395d4cbdf230e30fb4914c
2017-01-11 19:04:32 +09:00
Makoto Kato
34ff40e936 Bug 1324505 - Part 1. Check whether parent node is null. r=masayuki
designMode is too strange.  Parent of common ancestor of selection might be nullptr, so we should check whether nullptr.

MozReview-Commit-ID: Cy1k2Mpkws0

--HG--
extra : rebase_source : 01201d52431bfd7961f3311daa89b50c61407e8b
2017-01-11 19:03:41 +09:00
Joel Maher
bedb17b11f Bug 1330402 - add BUG_COMPONENT to editor/* files. r=m_kato
MozReview-Commit-ID: 3VTNcM49BSS
2017-01-13 08:40:24 -05:00
Bobby Holley
eb34404cc8 Bug 1323654 - Reenable crashtests. r=me 2017-01-12 17:37:27 -08:00
Cameron McCormack
9f99f387ac Bug 1324663 - stylo: Adjust expectations now that we've disabled style context tree structure assertions. r=me
MozReview-Commit-ID: EORVNMWW7gu
2017-01-11 20:35:12 +08:00
Jorg K
b15f9d079d Bug 1328093 - HTMLEditor::InsertTextWithQuotations() should include the first line break into the <span> it creates. r=masayuki
--HG--
extra : rebase_source : 700f9369f435ba14fe7a5879b0e01bcb599a60d9
2017-01-10 01:50:00 -05:00
Shing Lyu
11a1d3e940 Bug 1328825 - Update reftest-stylo.list and expectations. r=heycam
MozReview-Commit-ID: AMwdk5wvM0F
2017-01-10 15:50:59 +08:00
Bobby Holley
b32f310e62 Bug 1323649 - Reenable some crashtests. r=me 2017-01-09 11:50:23 -08:00
Bobby Holley
4ff3bbf698 Bug 1323662 - Reenable crashtests. r=me 2017-01-09 11:50:21 -08:00
Ryan VanderMeulen
1e6f972917 Merge inbound to m-c. a=merge 2017-01-07 11:22:47 -05:00
Masayuki Nakano
b2778c3a90 Bug 1272623 part.3 HTMLEditRules::ReapplyCachedStyles() shouldn't set style to TypeInState if it's currently applied r=smaug
The target node of HTMLEditRules::ReapplyCachedStyles() may be styled with its parent.  When HTMLEditRules::ReapplyCachedStyles() is called, it shouldn't restore another style cache if it's already specified in current DOM tree.

MozReview-Commit-ID: DKCpQ8YyW7

--HG--
extra : rebase_source : 854b4cc6382f5357919bce1e106e71fe66b15444
2017-01-06 22:35:48 +09:00
Cameron McCormack
d4de4e55a0 Bug 1324624 - stylo: More crashtest assertion adjustments.
MozReview-Commit-ID: DM8nLXSiSxr
2017-01-07 16:33:50 +08:00
Masayuki Nakano
b51e97e916 Bug 1272623 part.2 Add automated tests of testing cached inline style at editing r=smaug
MozReview-Commit-ID: 1kIfj3GgCcY

--HG--
extra : rebase_source : 4d808bbea9c5a23464e7e09baa1158ef0adf472c
2016-12-27 18:27:10 +09:00
Iris Hsiao
7adb57a57f merge autoland to mozilla-central a=merge 2017-01-06 11:06:17 -05:00
Wes Kocher
1b9930db65 Merge m-c to autoland, a=merge
MozReview-Commit-ID: 2ocdQCLe0I1
2017-01-05 17:31:25 -08:00
Makoto Kato
93a16746ac Bug 1328558 - Remove unused insertElement member from TextEditRules. r=masayuki
Remove insertElement from TextEditRules due to unused.  Also, comments into TextEditRules is out of date.  We should update it using currect enum.

MozReview-Commit-ID: B1wczFWh2Ya

--HG--
extra : rebase_source : 910338b2f5d20316dcf11928e964346fa4aa8411
2017-01-04 18:51:44 +09:00
Cameron McCormack
babad063ff Bug 1328832 - Part 2: Rename mozFlushType to mozilla::FlushType and make it an enum class. r=bzbarsky
MozReview-Commit-ID: D3fIngSHSsl
2017-01-05 15:31:56 +08:00
Cameron McCormack
ce51bd51e0 Bug 1328832 - Part 1: Rename mozFlushType.h to FlushType.h. r=bzbarsky
MozReview-Commit-ID: 1ubwNkBEdfz

--HG--
rename : dom/base/mozFlushType.h => dom/base/FlushType.h
2017-01-05 14:54:02 +08:00
Tim Nguyen
d7db347638 Bug 1322938 - Basic implementation of HTMLDialogElement. r=smaug, masayuki
MozReview-Commit-ID: AU92mq2QZIc
2016-12-23 16:01:50 +01:00
Cameron McCormack
61569b57a1 Bug 1324624 - Tweak stylo crashtest assertion annotations a bit more.
MozReview-Commit-ID: D2AntG68VGr
2017-01-02 16:25:22 +08:00
Masayuki Nakano
c20fedebf4 Bug 1312991 Get rid of nsIHTMLEditor::SetDocumentTitle() and mozilla::SetDocumentTitleTransaction r=smaug
Now, nobody (including add-ons) uses nsIHTMLEditor::SetDocumentTitle(), so, we can remove it.

Additionally, mozilla::SetDocumentTitleTransaction is created only when nsIHMLEditor::SetDocumentTitle(), so, we can remove this class too.

MozReview-Commit-ID: HK7G9u7HUlh

--HG--
extra : rebase_source : da68cabbf929a684d26f6316fdc7f58b8e32ab02
2016-12-26 17:46:23 +09:00
Makoto Kato
45e40588b0 Bug 1325843 - Use explicitly static method call for EditorBase::IsTextNode. r=masayuki
IsTextNode is static method, so we should use explicitly static method call into EditRule.

MozReview-Commit-ID: EX2BbbN2vNJ

--HG--
extra : histedit_source : 4194477320ffad62da36b272239d1443bb6c88b6
2016-12-26 14:32:57 +09:00
Makoto Kato
ac78727eab Bug 1325300 - Use explicitly static method call for GetStartNodeAndOffset and GetEndNodeAndOffset. r=masayuki
Most codes into HTMLEditRules and TextEditRules don't use explicitly static method call such as EditorBase::GetStartNodeAndOffset.  So we should use it instead of "editor->GetStartNodeAndOffset".

MozReview-Commit-ID: DGAEFK6AYzh

--HG--
extra : rebase_source : d1dafaca2dbe95d9b1c50c52245f29af75e0a9f2
extra : amend_source : c183380253a1cf5c1dbc1cf18eb70e26ca0cadeb
2016-12-22 15:48:41 +09:00
Makoto Kato
aba106bb59 Bug 1324996 - Part 2. Use nsIAtom to change attirbute if possible. r=masayuki
We can replace old nsIEditor API with nsIAtom version.

MozReview-Commit-ID: EMEANldtTo0

--HG--
extra : rebase_source : 2828270d42efe1786f88f13bf20c34bd56083d41
2016-12-20 20:53:00 +09:00
Makoto Kato
5b2e25c11c Bug 1324996 - Part 1. Implement nsIAtom version of SetAttribute/RemoveAttribute/CloneAttirubte. r=masayuki
Add nsIAtom version of the following.
 - CloneAttribute
 - RemoveAttribute
 - RemoveAttributeOrEquivalent
 - SetAttribute
 - SetAttributeOrEquivalent

MozReview-Commit-ID: 8CutpdyVuew

P1

MozReview-Commit-ID: 9MdmGcTqaxT

--HG--
extra : rebase_source : 2ae876cd33839f61880bd6c55644d4381139dd25
2016-12-20 19:24:08 +09:00
Bobby Holley
3ae99d4463 Bug 1323655 - Handle unstyled elements when applying XBL bindings. r=heycam 2017-01-04 19:08:37 -08:00
Cameron McCormack
d4d8ba1d5f Bug 1324624 - stylo: Mark currently failing crashtests with asserts-if(stylo,...). r=xidorn
MozReview-Commit-ID: 7iiwRwiQ8s4
2016-12-21 15:42:36 +08:00
Masayuki Nakano
7436f01057 Bug 564411 Move all methods/attributes of nsIEditorIMESupport to nsIEditor r=smaug
Doing QI from nsIEditor to nsIEditorIMESupport doesn't make sense because editor should always support all methods and attributes of nsIEditorIMESupport (it does NOT mean that all nsIEditor implementation need to support IME).

This patch moves all of them to nsIEditor for avoiding redundant QIs.

MozReview-Commit-ID: DzIKuGHG4iy

--HG--
extra : rebase_source : cc5e9a6ae4572ebe461d9770ffa5c23d33dc8526
2016-12-20 21:47:31 +09:00
Carsten "Tomcat" Book
a244c7fb4a merge mozilla-inbound to mozilla-central a=merge 2016-12-16 16:04:50 +01:00
Cameron McCormack
366f6eb24d Bug 1323892 - Disable currently crashing stylo crashtests. r=xidorn
MozReview-Commit-ID: 2BNjdBWdT5V
2016-12-16 18:54:41 +08:00
Makoto Kato
9ca28d2919 Bug 1317704 - Part 2. Add test. r=masayuki
MozReview-Commit-ID: AVOvEZ1sMVq

--HG--
extra : rebase_source : 82695e8f1b24b61258311d11f9ce19cfbae2033f
2016-12-15 15:02:10 +09:00
Makoto Kato
787ae4f9c9 Bug 1317704 - Part 1. Hold current ranges into RemoveInlineProperty. r=masayuki
Since current selection ranges might be modified by SplitStyleAboveRange,  this crash occurs into RemoveInlinePropertyImpl.  So we need hold current selection range for loop.

MozReview-Commit-ID: JuXn9XlwCp6

--HG--
extra : rebase_source : f34cd77d19c1a8bfcc6e26c6f0b1cd833ce4b19e
2016-12-15 15:01:53 +09:00
Jorg K
714e747215 Bug 1288911 - Use CSS trick to avoid unwanted line wraps in quotes. r=masayuki
--HG--
extra : rebase_source : 5c6ebecddc27c9ad076c5c90fe83016a0008cb83
2016-12-14 13:37:00 +01:00
Gijs Kruitbosch
cb6c0c81ac Bug 1322414 - part 2,3,4: use a separate 'primary' attribute for primary child browsers, r=bz,mconley
MozReview-Commit-ID: 2yb0WGFYBsH

--HG--
extra : rebase_source : 376171077c577e41e82cec5e994c425c6d9f2d80
extra : histedit_source : 39aad91381749a263042cd0452fe32019a1974b8
2016-12-09 09:23:24 -10:00
Makoto Kato
ec8701e677 Bug 1323138 - CSSEditUtils should use atom for CSS property if possible. r=masayuki
There is a lot of string compare when using CSS property name.  We should use nsGkAtoms instead.

MozReview-Commit-ID: JvpWRTkM8U

--HG--
extra : rebase_source : 404518a52fdab6b64a804835acd1ea16b5adde7c
2016-12-12 00:03:36 -10:00
Karl Tomlinson
4c027cc4bc bug 1322422 use assertSnapshots() to log failures better r=Ehsan
MozReview-Commit-ID: 54WgoCdKjMX

--HG--
extra : rebase_source : 1ab5cccb586edad9f3a30c90f413124df006820f
2016-12-06 22:38:23 -10:00
Makoto Kato
4f19afdf88 Bug 1318570 - Clean up GetTextNode into TextEditRules. r=masayuki
EditorBase parameter of GetTextNode is unnecessary because it uses static method only.  Also, we should return nsINode to reduce QI.

MozReview-Commit-ID: 3KazYFcr899

--HG--
extra : rebase_source : 092bbcc84d7c1e7174029bb90f606f3953fe8597
2016-11-22 20:56:03 +09:00
Olli Pettay
6dabfdba6b Bug 1314442 - Limit editor's editability to the right subtree. r=masayuki
--HG--
extra : rebase_source : bb528d3c82c962dc31883654a81f87285e49e2b9
2016-11-29 17:07:27 -05:00
Makoto Kato
ced4cccc2c Bug 1313986 - Part 5. Remove createAnonymousElement from nsIHTMLEditor. r=masayuki
c-c nor add-ons seem noet to use it.  We should remove this.

MozReview-Commit-ID: 3jN8kUp6D4Z

--HG--
extra : rebase_source : cc31001bb87da2888a9c1da6d92a305cdebebb7a
2016-10-31 18:06:27 +09:00
Makoto Kato
ef514b53ec Bug 1313986 - Part 4. Use Element instead of nsIDOMElement for resizer. r=masayuki
Resizer and etc attributes on table editor still use nsIDOMElement.  Converting to Element makes both implementation and the callers simpler.

MozReview-Commit-ID: TTFSvqn5GE

--HG--
extra : rebase_source : 705576c4eb0fe5f8f566f3415a8a72842c919edd
2016-11-24 15:58:01 +09:00
Makoto Kato
3d6d028dd6 Bug 1313986 - Part 3. Use CreateAnonymousElement with nsIAtom for simple case. r=masayuki
Now we can return Element directly via CreateAnonymousElement. We should use it.

MozReview-Commit-ID: Et1i3hLVSqc

--HG--
extra : rebase_source : e09c2b2b41481dd6608d9c816676030d8aae1ed6
2016-11-24 18:07:47 +09:00
Makoto Kato
ba151083a7 Bug 1313986 - Part 2. Add CreateAnonymousElement with nsIAtom. r=masayuki
I would like to nsIAtom and mozilla::dom::Element version of CreateAnonymousElement to clean up code.  When getting/setting attirubte, editor sometimes use string, not nsGkAtoms.  We should use new mozilla::dom::Element methods.

Also, we should add  _moz_anonclass to atom list that uses on editor.

MozReview-Commit-ID: ICaAWVPjcej

--HG--
extra : rebase_source : 9585214aa678c16905250265a75b817c90246fcc
2016-11-24 16:12:04 +09:00
Makoto Kato
18132c8907 Bug 1313986 - Part 1. Add test for inlineTableEditing and objectResizing. r=masayuki
We have no mochitest for objectResizing and inlineTableEditing.  So I add simple test for this.

MozReview-Commit-ID: Hnjpopr3h5F

--HG--
extra : rebase_source : 8cb81a89f11d4092f2adaa8822733f861a71ace1
2016-11-24 15:00:04 +09:00
Andi-Bogdan Postelnicu
d9b3715501 Bug 1319401 - Use C++11's override and remove virtual where applicable in editor/. r=masayuki
MozReview-Commit-ID: CdlsJOlAW9e

--HG--
extra : rebase_source : 2c56fbdb44db8b6084b50a656513227cd26db278
2016-11-22 14:14:48 +02:00
Andi-Bogdan Postelnicu
e311c3aa44 Bug 1319401 - Replace default bodies of special member functions with = default; in editor/. r=masayuki
MozReview-Commit-ID: F9p3cvxPIrs

--HG--
extra : rebase_source : 63a3753634c5eed9303bb3f569095a644a52cc04
2016-11-22 14:14:22 +02:00
Ryan VanderMeulen
012910643b Bug 1211213 - Re-enable test_bug597331.html on ASAN and Windows.
--HG--
extra : rebase_source : 62ab2f2f59067ff4ad5869420e7495e9c2963fa1
2016-11-21 14:13:54 -05:00
Carsten "Tomcat" Book
59bb309e38 merge mozilla-inbound to mozilla-central a=merge 2016-11-21 15:44:20 +01:00
Masayuki Nakano
dbf69d5b2c Bug 1316302 part.4 Refine HTMLEditRules::TryToJoinBlocks() and HTMLEditRules::MoveNodeSmart() with early return style for making scope of EditActionResult variable smaller r=smaug
For now, let's make the scope of EditActionResult variable in them smaller without big change.

MozReview-Commit-ID: 9vDoU9bUdVO

--HG--
extra : rebase_source : 6cdd50954d6cfe1fa80aeee5b06b3fec6b1ada3d
2016-11-18 18:59:39 +09:00
Masayuki Nakano
e8b4d6d5fe Bug 1316302 part.3 Create EditActionResult class for making the methods which return nsresult, handled and canceled with out params r=smaug
In a lot of places, edit action handlers and their helper methods return nsresult and aHandled and aCanceled with out params.  However, the out params cause the code complicated since:

* it's not unclear if the method will overwrite aHandled and aCanceled value.
* callers need to create temporary variable event if some of them are not necessary.

This patch rewrites the helper methods of HTMLEditRules::WillDeleteSelection() with it.

MozReview-Commit-ID: CJv75KdOdXf

--HG--
extra : rebase_source : 708d378bdd0ddc4ae984de9294525b01a829b0b7
2016-11-18 17:59:23 +09:00
Masayuki Nakano
8b2ac2889e Bug 1316302 part.2 WillDeleteSelection() should retry to handle it when selection is collapsed and JoinBlocks() doesn't handle nor cancel the action r=smaug
When selection is collapsed and JoinBlocks() doesn't handle nor cancel the action, WillDeleteSelection() should move selection to the start/end of leftmost/rightmost editable leaf node and retry to handle the action again.

For avoiding infinite loop, it checks if selected node is changed actually before calling itself again.

MozReview-Commit-ID: GtEC4dim3r9

--HG--
extra : rebase_source : f84afd754e71f441c3fad15456d20a11c42dd6de
2016-11-16 20:20:41 +09:00
Masayuki Nakano
a8116bc72f Bug 1316302 part.1 Helper methods for HTMLEditRules::WillDeleteSelection() should have an out argument to indicates if it actually handles the action r=smaug
When HTMLEditRules::WillDeleteSelection() tries to remove something from the end/start of a block to its last/first text node but it's contained by block elements, it tries to join the container and the block.  However, JoinBlocks() always fails to join them since it's impossible operation.  In this case, HTMLEditRules::WillDeleteSelection() should retry to remove something in the leaf, however, it's impossible for now because JoinBlocks() and its helper methods don't return if it handles the action actually.

This patch renames |JoinBlocks()| to |TryToJoinBlocks()| for representing what it is.  And this patch adds |bool* aHandled| to the helper methods.  Then, *aHandled and *aCancel are now always returns the result of each method.  Therefore, for merging the result of multiple helper methods, callers need to receive the result with temporary variables and merge them by themselves.

Note that when they modify DOM node actually or the action should do nothing (for example, selection is across tables), aHandled is set to true.

MozReview-Commit-ID: 7ApUOgtLUog

--HG--
extra : rebase_source : 4abc1ec208107b782a719df058623fd7f92d180c
2016-11-18 17:54:31 +09:00
Carsten "Tomcat" Book
866da9f9c6 merge mozilla-inbound to mozilla-central a=merge 2016-11-18 16:51:17 +01:00
Makoto Kato
0d166881ec Bug 1317718 - Unnecessary QI to nsIContent to check whether text node. r=masayuki
If not text node, QI to nsIContent will be failed.  So we should use IsNodeType (Or EditorBase::IsTextNode) without QI for detection of text node.

Also, to get content length into text node, we should use TextLength() simply instead of getting content string.  It can reduce memory allocation.

MozReview-Commit-ID: C8EKxfUBjTP

--HG--
extra : rebase_source : 30614bd21393f96f9a9b13aeb5a742fa8c6eb83f
extra : amend_source : 8b956f9fbd521f7c9503bdb5481694579cb6e3e9
2016-11-17 11:14:19 +09:00
Benjamin Smedberg
00f9f7a30c Bug 1314350 - Port TestTXMgr to gtest. This removes the framework for testing object destruction order because that was already non-deterministic due to the cycle collector, r=masayuki
MozReview-Commit-ID: vK4iYmytgt

--HG--
extra : rebase_source : fc4be47bf0e68777aaf45250b339cf0d3d332240
extra : source : bb1325166026fec5e13db34eca7588ce18c94505
2016-11-15 13:06:05 -05:00
Masayuki Nakano
ab6651b316 Bug 1314852 Make background and border of the input element in test_bug636465.html since it's sometimes not painted correctly r=smaug
The test compaires 4 screenshots for checking spellchecker's behavior.  However, the input element is sometimes not painted correctly on Linux.

Even if I make it wait more delay before taking screenshot, the random failure isn't fixed. So, I guess that it's a bug of gfx of Theme API of GTK.

On the other hand, the most important thing here is, compairing the foreground contents of the input element.  Therefore, this patch makes the background and border of the input element transparent.  That prevents to use Theme API. This must be enough for fixing the random orange.

MozReview-Commit-ID: L2uXcPLvbNg

--HG--
extra : rebase_source : 451f1c45d70ceb8406ea9749f0dfa3264c615151
2016-11-16 15:51:21 +09:00
Boris Zbarsky
784a52fd02 Bug 1317720. Use NeedsCallerType instead of NeedsSubjectPrincipal for DataTransfer.types. r=mystor 2016-11-15 12:46:32 -05:00
Boris Zbarsky
dda84c3ef8 Bug 1317599. Get rid of LegacyIsCallerChromeOrNativeCode use in datatransfer code. r=mystor 2016-11-15 12:46:32 -05:00
Makoto Kato
e012b6c81b Bug 1314790 - Part 2. Add test. r=masayuki
MozReview-Commit-ID: HcauemPpe4r

--HG--
extra : rebase_source : 6adb8338981c7654c3b9af2ab0f0ac46a9effb84
extra : amend_source : 1f1c5392b784d788d06924c69c95df569947d9e6
extra : histedit_source : e8b277c0cb2dbdf80344426036dd59fe56d2f477
2016-11-12 21:59:49 +09:00
Makoto Kato
0a98c8f610 Bug 1314790 - Part 1. GetGoodSelPointForNode doesn't work with ePrevousWord action. r=masayuki
Although GetGoodSelPointForNode only supports ePrevious or eNext as action, we use other action.  So we should add aseetion for it.

MozReview-Commit-ID: 3gLFFTAdNxU

--HG--
extra : rebase_source : b22cd532b6072e19fe1bff7f90a0e4a4ae4236e1
extra : histedit_source : 117509f1b76a382e8b23c5fa3345b81460385e56
2016-11-12 21:59:04 +09:00
SkyLined
df22496a19 Bug 1264921 - Crashtest. 2016-11-21 00:26:37 +01:00
Makoto Kato
2e67c9f2eb Bug 1314790 - Part 3. Ignore nsIEditor::eNone case. r=masayuki
MozReview-Commit-ID: 6KHFQ84J7dU

--HG--
extra : rebase_source : 5067eb13b7b0147a91bc6684e22738941dd5c965
extra : histedit_source : 620f146445556e90029665f1a2575105347ad441
2016-11-20 10:35:17 +09:00
Boris Zbarsky
6cee715d54 Bug 1318479 part 2. Remove uses of nsIDOMNode::AppendChild in editor. r=ehsan 2016-11-18 16:38:29 -05:00
Makoto Kato
74fe2d5fc8 Bug 1310912 - Part 6. Add redo test. r=masayuki
MozReview-Commit-ID: 5TgGAq3tM01

--HG--
extra : rebase_source : 031c1687887b67892ac4c9569fe843c17d5b1a49
extra : histedit_source : 3006cca58c3c5736ab603f3088296272db9763ed
2016-11-10 21:17:34 +09:00
Makoto Kato
b2b4afaf31 Bug 1310912 - Part 5. InsertTextIntoTextNodeImpl should use IMETextNode for listener. r=masayuki
When using CompositionTransaction, text node will be inserted into IMETextNode, not aTextNode of parameter.  So we should use it for listener.

MozReview-Commit-ID: 72a3ZjF1wsz

--HG--
extra : rebase_source : 325909c0d141c238ab41e33d7f3959f4db27339e
extra : histedit_source : 52d6fc9d2668e4e41783e524276d7041eec0301c
2016-11-12 15:46:33 +09:00
Makoto Kato
272781396f Bug 1310912 - Part 4. RangeUpdater should be called on DoTransaction. r=masayuki
Although PlaceholderTransaction will use the selection on Merge, it is too late to use UpdateRange.  Because RangeUpdater will be used after DoTransaction is finished.  So we should update selection on DoTransaction.

Also, part 1 fix doesn't update selection correctly via RangeUpdater when IME composition is multiple node.

MozReview-Commit-ID: 9so9tR8uQ6t

--HG--
extra : rebase_source : 02a8bebe6c89ceb023bd598b77b40c5817cd4007
extra : histedit_source : d114420552779d3352637c5554bf9e90e6e9cd40
2016-11-12 14:56:33 +09:00
Makoto Kato
ed68b31349 Bug 1310912 - Part 3. The selection into PlaceholderTransaction should be updated via RangeUpdater. r=masayuki
Since the selection into PlaceholderTransaction isn't updated via RangeUpdater, UndoTransaction may return error when selection/caret position is changed.  Then, redo is failed.

So we should add selection into PlaceholderTrancation to RangeUpdater.

MozReview-Commit-ID: LcUIiUExNhx

--HG--
extra : rebase_source : 9e1a71a7f497181171209ac05edcbddae227ab93
extra : histedit_source : 200dfd7957bf1b4dc92af72bb8b864cb457d62ab
2016-11-10 21:10:50 +09:00
Makoto Kato
c962bbc74c Bug 1310912 - Part 2. Add test. r=masayuki
We need skip this test on Android.  Although mochitest doesn't use native IME data, Android's GeckoEditable.java wants to access native IME composition.  See bug 1315898.

MozReview-Commit-ID: BNCKmDEmwKw

--HG--
extra : rebase_source : e7be1cb9e5c7c0fb4283f81541fc7441f52a1101
2016-11-04 19:04:43 +09:00
Makoto Kato
65c64fee1d Bug 1310912 - Part 1. CompositionTransaction should support multiple text nodes. r=masayuki
Google Keep uses range.insertNode on input event.  So, text node will be inserted into current caret position.

Microsoft IME's caret is after composition string, but ATOK's caret is before it.  So when using ATOK, this issue occurs.  By range.insertNode, text nodes that have IME attribute becomes multiple text nodes.  But CompositionTransanction doesn't consider that IME range isn't single text node.  Although it replaces current composition string with new string on first text node, it doesn't delete composition string on other text node.

MozReview-Commit-ID: 9uRx0A9mppx

--HG--
extra : rebase_source : fe0754cee2197822ca6ac9ebed13013a8f13b606
2016-11-08 16:14:57 +09:00
Masayuki Nakano
e940a313f8 Bug 1315065 When selection is collapsed in an empty text node, Backspace/Delete key press should modify the nearest text node r=smaug
Currently, when selection is collapsed at an empty text node, the behavior of each major browser is different.

When you remove the last character of non-empty text node followed by empty text nodes, Chromium removes all following empty text nodes.  However, Edge never removes empty text nodes even when selection is collapsed at an empty text node.

With this patch, our behavior becomes same as Edge.  I think that we should take this for keeping backward compatibility since Gecko never removes empty text nodes.  So, in other words, this patch makes Backspace key press at an empty text node modify the preceding non-empty text node.

When you remove the first character of non-empty text node preceded with empty text nodes, Edge removes all preceding empty text nodes.  However, Chromium and Gecko keeps previous empty text nodes than caret position.  So, we should keep current behavior for backward compatibility.  In other words, this patch makes Delete key press at an empty text node modify the following non-empty text node and keep current behavior.


The fixing approach of this is, making WSRunObject::PriorVisibleNode() and WSRunObject::NextVisibleNode() ignore empty text node.  This should make sense because empty text node is not a visible node. (On the other hand, when the DOMPoint has a null character, it should treat as visible character.  That is visible with Unicode codepoint.)

MozReview-Commit-ID: 11YtqBktEvK

--HG--
extra : rebase_source : 70fa858866cc768179c1ca6a869e1a5c7cfe6e1a
2016-11-11 12:24:21 +09:00
Gerald Squelart
0affeb4ab0 Bug 1316432 - Fix nsCOMPtr constructions&assignments from 0 - r=froydnj
Giving '0' (literal zero) to nsCOMPtr is now ambiguous, as both
nsCOMPtr(decltype(nullptr)) and nsCOMPtr(T*) could be used.
In any case, our coding standards mandate the use of 'nullptr' for pointers.
So I'm changing all zeroes into nullptr's where necessary.

MozReview-Commit-ID: LXiZTu87Ck6

--HG--
extra : rebase_source : f9dcc6b06e9ebf9c30a576f9319f76a51b6dc26f
2016-11-10 14:11:27 +11:00
Gerald Squelart
b500aaacf6 Bug 1316206 - Fix RefPtr assignments from 0 - r=froydnj
Giving '0' (literal zero) to RefPtr is now ambiguous, as both
RefPtr(decltype(nullptr)) and RefPtr(T*) could be used.
In any case, our coding standards mandate the use of 'nullptr' for pointers.
So I'm changing all zeroes into nullptr's where necessary.

MozReview-Commit-ID: A458A4e9for

--HG--
extra : rebase_source : bc4107ce1767329e3dddfe34c55ba79202192e06
2016-11-08 14:34:06 +11:00
Neerja Pancholi
67f36de296 Bug 1312951 - Add fuzzy annotation for editor/reftests/824080-3.html r=mstange
MozReview-Commit-ID: 7ZMQPXFHrWq

--HG--
extra : rebase_source : fe8613e36d2a195184cad49478d54d64ee68d620
2016-11-07 17:18:08 -08:00
Neerja Pancholi
3b3f7eb0c8 Bug 1313253 - Add fuzzy annotation for editor/reftests/824080-2.html r=mstange
MozReview-Commit-ID: DRDZbnBMDOL

--HG--
extra : rebase_source : bb2e82ee8bdd6a2fbb7a64c434f593f0a6781a3c
2016-11-07 17:15:38 -08:00
Carsten "Tomcat" Book
846adaea6c merge mozilla-inbound to mozilla-central a=merge 2016-11-09 16:38:04 +01:00
Masayuki Nakano
a912bd8141 Bug 1230473 If there is no TextComposition instance even when EditorBase receives eCompositionStart event, the editor should do nothing r=smaug
Even when editor receives eCompositionStart event, the active composition may have gone since web contents can listen to composition events before editor (so, web contents can commit the composition before "compositionstart" reaching focused editor).

Therefore, editor shouldn't crash as unexpected scenario.  Instead, it should do nothing in such case.

Note that when editor receives 2nd or later "compositionupdate" or "text" event, it should not modify composition.  However, currently, it does that.  This patch does NOT fix it since it's really rare case.  It should be fixed in another bug because this should be uplifted (crashing with some IMEs on Android is serious).

MozReview-Commit-ID: HIbMy4eFRMw

--HG--
extra : rebase_source : a98661ab2c1c8ee67ef551af3d1770b61cd25c84
2016-11-08 00:36:32 +09:00
Phil Ringnalda
a7bc94158c Merge m-i to m-c, a=merge
MozReview-Commit-ID: H4VKCYDq5cD

--HG--
rename : xpcom/tests/TestAutoRef.cpp => xpcom/tests/gtest/TestAutoRef.cpp
rename : xpcom/tests/TestCOMArray.cpp => xpcom/tests/gtest/TestCOMArray.cpp
rename : xpcom/tests/TestCOMPtr.cpp => xpcom/tests/gtest/TestCOMPtr.cpp
rename : xpcom/tests/TestCOMPtrEq.cpp => xpcom/tests/gtest/TestCOMPtrEq.cpp
rename : xpcom/tests/TestFile.cpp => xpcom/tests/gtest/TestFile.cpp
rename : xpcom/tests/TestHashtables.cpp => xpcom/tests/gtest/TestHashtables.cpp
rename : xpcom/tests/TestID.cpp => xpcom/tests/gtest/TestID.cpp
2016-11-05 13:36:25 -07:00
Sebastian Hengst
eb26ee2f07 Bug 1310297 - Remove test annotations using b2g, mulet or gonk: editor. r=RyanVM
MozReview-Commit-ID: GDieTLdlpRH

--HG--
extra : rebase_source : 8332d4abdea9d0ad27ad7cceace96ad75aff6b2c
2016-11-05 11:29:19 +01:00
Jessica Jong
726903109f Bug 1301306 - Stop focus events from anon. content when moving inside input=time element. r=smaug 2016-11-04 00:47:00 -04:00
Xidorn Quan
5e29805363 Bug 1294299 part 8 - Refactor interface provided by css::Declaration. r=heycam
The main targets of this refactor are:
1. Move most of the logic of distinguishing properties and custom
   properties from nsDOMCSSDeclaration into css::Declaration, which
   gives ServoDeclarationBlock more flexibility to implement.
2. Rename those methods of css::Declaration to provide a clear interface
   which makes sense for implementing in ServoDeclarationBlock, and also
   avoid method overload, which can impede the forward macro, on them.

MozReview-Commit-ID: 2cCqF855TVK

--HG--
extra : source : 3837e1e558caac4f2901e838371e97c17821530e
2016-11-03 14:41:02 +11:00
Geoff Brown
1585835379 Bug 1309431 - Disable test_bug772796.html on Android only; r=me 2016-11-08 15:11:42 -07:00
Aryeh Gregor
f0ca6ef4ca Bug 1271125 part 2 - Port editor mochitests that depend on ChromeUtils.js to mochitest-plain; r=masayuki
The change from ok() to is() in tests is so that the failure message is
more informative -- it now tells you the returned exception.

This commit omits test_contenteditable_text_input_handling.html because of test
failures that I haven't figured out.

MozReview-Commit-ID: 37cYlQlJZm7
2016-10-31 18:38:04 +02:00
Aryeh Gregor
9fc7d0745c Bug 1271120 - Port test_bug1219928.html from chrome to plain; r=masayuki
This test still doesn't work in e10s, though.  mrbkap says further
debugging is needed (bug 1269209 comment 3).

MozReview-Commit-ID: 3iHNkQVYQMn
2016-09-01 17:15:28 +03:00
Aryeh Gregor
f00c374e3b Bug 1271120 - Port test_bug1209414.html from chrome to plain; r=masayuki
MozReview-Commit-ID: ExX9ZNsVaXq
2016-08-23 15:56:23 +03:00
Aryeh Gregor
a1960cc86a Bug 1271120 - Port test_bug636465.xul from chrome to plain; r=masayuki
MozReview-Commit-ID: B0oaEGGEEvd

--HG--
rename : editor/libeditor/tests/test_bug636465.xul => editor/libeditor/tests/test_bug636465.html
2016-09-01 17:30:57 +03:00
Aryeh Gregor
73038b219c Bug 1271120 - Port test_bug569988.html from chrome to plain; r=masayuki
MozReview-Commit-ID: EwpjCJf5MFX
2016-08-23 15:56:48 +03:00
Aryeh Gregor
757c20701e Bug 1271120 - Port test_composition_event_created_in_chrome.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 5K2qv7JXAT4
2016-08-23 16:01:28 +03:00
Aryeh Gregor
7440afba28 Bug 1271119 - Port test_bug1248185.html from chrome to plain; r=masayuki
MozReview-Commit-ID: Jn8Ga8dw4WD
2016-10-31 18:27:10 +02:00
Aryeh Gregor
d63d3c394b Bug 1271119 - Port test_bug1248128.html from chrome to plain; r=masayuki
I added an extra check to ensure that the test wasn't passing because
doCommand() was throwing some unrelated exception, in case porting from
chrome to plain changed behavior of doCommand().

MozReview-Commit-ID: LOo8yN8jkZo
2016-10-31 18:26:31 +02:00
Aryeh Gregor
2459cda825 Bug 1271119 - Port test_bug1153237.html from chrome to plain; r=masayuki
MozReview-Commit-ID: DDfHuLwplBV
2016-08-30 21:13:49 +03:00
Aryeh Gregor
953f75ec49 Bug 1271119 - Port test_bug1140617.xul from chrome to plain; r=masayuki
Possible issue: the previous version saved document.popupNode and
restored it after copying the image, and the new version does not
(because I don't know how).  The test seems to pass anyway.

MozReview-Commit-ID: 7g0JCYxI7x8

--HG--
rename : editor/libeditor/tests/test_bug1140617.xul => editor/libeditor/tests/test_bug1140617.html
2016-08-30 21:32:20 +03:00
Aryeh Gregor
1b70f4e9fb Bug 1271119 - Port test_bug1101392.html from chrome to plain; r=masayuki
MozReview-Commit-ID: F5Q8AWVtdjC
2016-08-30 21:08:55 +03:00
Aryeh Gregor
7d842d8033 Bug 1271119 - Port test_bug646194.xul from chrome to mochitest; r=masayuki
MozReview-Commit-ID: Lx05BEKQiwO

--HG--
rename : editor/libeditor/tests/test_bug646194.xul => editor/libeditor/tests/test_bug646194.html
2016-08-30 18:40:55 +03:00
Aryeh Gregor
35558fd4e9 Bug 1271119 - Port test_bug490879.xul from chrome to plain; r=masayuki
Possible issue: the previous version saved document.popupNode and
restored it after copying the image, and the new version does not
(because I don't know how).  The test seems to pass anyway.

It seems I had to use doCommand instead of execCommand to carry out the
paste, presumably because of permissions differences between plain and
chrome mochitests.

MozReview-Commit-ID: CdPUCmEtgwO

--HG--
rename : editor/libeditor/tests/test_bug490879.xul => editor/libeditor/tests/test_bug490879.html
2016-08-30 18:25:18 +03:00
Aryeh Gregor
4e75722fc4 Bug 1271119 - Port test_selection_move_commands.xul from chrome to plain; r=masayuki
Filed bug 1299574 for the Android todo.  (Chrome tests in this directory
are disabled for Android, so all this porting enables them.)

MozReview-Commit-ID: 6FAioabxq0a

--HG--
rename : editor/libeditor/tests/test_selection_move_commands.xul => editor/libeditor/tests/test_selection_move_commands.html
2016-08-30 18:01:33 +03:00
Aryeh Gregor
0c6f9f6930 Bug 1269209 - .ini cleanup; r=masayuki
MozReview-Commit-ID: ISJBtyiuNfV
2016-10-31 18:13:46 +02:00
Aryeh Gregor
20f1dae6f1 Bug 1269209 - Port test_bug1257363.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 1KcoAHEsDwB
2016-08-22 21:24:12 +03:00
Aryeh Gregor
740d4d0015 Bug 1269209 - Port test_bug1250010.html from chrome to plain; r=masayuki
MozReview-Commit-ID: AerXvBRSmqN
2016-10-31 18:12:05 +02:00
Aryeh Gregor
08bf09d55c Bug 1269209 - Port test_bug1154791.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 8MmrfEJXFb9
2016-08-22 21:22:13 +03:00
Aryeh Gregor
411ba68b53 Bug 1269209 - Port test_bug1140105.html from chrome to plain; r=masayuki
MozReview-Commit-ID: BfdjmtEdwX4
2016-10-31 18:11:21 +02:00
Aryeh Gregor
2de8ee747d Bug 1269209 - Port test_bug1100966.html from chrome to plain; r=masayuki
MozReview-Commit-ID: BlAIUibApXY
2016-08-22 21:20:05 +03:00
Aryeh Gregor
569f2ac168 Bug 1269209 - Port test_bug1053048.html from chrome to plain; r=masayuki
MozReview-Commit-ID: ECNH5u4S4QR
2016-08-22 21:18:43 +03:00
Aryeh Gregor
4673c69f98 Bug 1269209 - Port test_bug830600.html from chrome to plain; r=masayuki
Fails in e10s.  mrbkap said he has no idea why without debugging it
(comment 8 in bug).

MozReview-Commit-ID: 6vG0czg6Vpv
2016-08-22 21:17:49 +03:00
Aryeh Gregor
2283c45d92 Bug 1269209 - Port test_bug635636.html from chrome to plain; r=masayuki
MozReview-Commit-ID: KoJbPZ85emj
2016-08-22 21:16:52 +03:00
Aryeh Gregor
9a19c4aba3 Bug 1269209 - Port test_bug483651.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 1320m72F2lz
2016-08-22 21:13:37 +03:00
Aryeh Gregor
2d2b030acd Bug 1269209 - Port test_bug471319.html from chrome to plain; r=masayuki
MozReview-Commit-ID: E8CBXZLPBPC
2016-08-22 21:12:45 +03:00
Aryeh Gregor
60b5da80b0 Bug 1269209 - Port test_bug366682.html from chrome to plain; r=masayuki
MozReview-Commit-ID: EB8je1gkEwM
2016-08-22 21:11:37 +03:00
Aryeh Gregor
0c2fe187ab Bug 1269209 - Port test_bug46555.html from chrome to plain; r=masayuki
MozReview-Commit-ID: J7YdJAIzvR9
2016-08-22 21:10:39 +03:00
Aryeh Gregor
b21c462f2e Bug 1269209 - Port test_bug1205983.html from chrome to plain; r=masayuki
MozReview-Commit-ID: FPFRvbOftw4
2016-10-31 18:09:37 +02:00
Aryeh Gregor
225ac7af74 Bug 1269209 - Port test_bug1200533.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 2CrI1aTjaYJ
2016-08-22 21:07:52 +03:00
Aryeh Gregor
5aea5b7b05 Bug 1269209 - Port test_bug1204147.html from chrome to plain; r=masayuki
MozReview-Commit-ID: KBeFI73j1Jx
2016-08-22 21:06:41 +03:00
Aryeh Gregor
29cf33b800 Bug 1269209 - Port test_bug717433.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 426kBYZCCWy
2016-10-31 18:08:42 +02:00
Aryeh Gregor
75524f3039 Bug 1269209 - Port test_bug697981.html from chrome to plain; r=masayuki
MozReview-Commit-ID: IrnlEWhIBzk
2016-10-31 18:08:13 +02:00
Aryeh Gregor
45101741a1 Bug 1269209 - Port test_bug678842.html from chrome to plain; r=masayuki
MozReview-Commit-ID: LUSLjnMYl1I
2016-08-22 21:03:23 +03:00
Aryeh Gregor
e98e939603 Bug 1269209 - Port test_bug338427.html from chrome to plain; r=masayuki
MozReview-Commit-ID: HiDXAKaZlQA
2016-10-31 18:06:46 +02:00
Aryeh Gregor
6dc53c6bec Bug 1269209 - Port test_async_UpdateCurrentDictionary.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 3dneNqKrYCe
2016-08-22 21:00:48 +03:00
Aryeh Gregor
2e0b779c1c Bug 1269209 - Fix incorrect bug number in test; r=masayuki
MozReview-Commit-ID: Kk1BIx6wDXI
2016-05-05 13:52:22 +03:00
Jonathan Kew
e007b6ec83 Bug 1301655 - pt 0 - Add an optional parameter to nsIChromeRegistry.getSelectedLocale to allow callers to request the locale be returned as a valid BCP47 lang tag. r=gandalf 2016-10-28 12:04:06 +01:00
Sebastian Hengst
7d3fa0e8a7 Backed out changeset e71532f2babd (bug 1269209) for various test failures. r=backout a=backout
MozReview-Commit-ID: FIO8a5T5iaH
2016-10-28 00:39:52 +02:00
Sebastian Hengst
8873da9713 Backed out changeset c7d8d25e09b6 (bug 1269209)
MozReview-Commit-ID: KivGNRxiRDu
2016-10-28 00:38:50 +02:00
Sebastian Hengst
1a5704fe4d Backed out changeset 5d2f4867ec7f (bug 1269209)
MozReview-Commit-ID: IX1osGGXxnp
2016-10-28 00:38:46 +02:00
Sebastian Hengst
eb2c39bdf6 Backed out changeset 56e0713ad54b (bug 1269209)
MozReview-Commit-ID: 2dWIegpWkFd
2016-10-28 00:38:42 +02:00
Sebastian Hengst
8cfb0a45ca Backed out changeset 19eb42e6b3eb (bug 1269209)
MozReview-Commit-ID: 6JC2Zy7luDl
2016-10-28 00:38:38 +02:00
Sebastian Hengst
427cf28ece Backed out changeset dda3cfcd2b5c (bug 1269209)
MozReview-Commit-ID: BvcUYSfSJtR
2016-10-28 00:38:34 +02:00
Sebastian Hengst
8bb044ccde Backed out changeset 2ebb8eab3834 (bug 1269209)
MozReview-Commit-ID: KSIiOz5idEL
2016-10-28 00:38:29 +02:00
Sebastian Hengst
f51e61e88c Backed out changeset 5f63100d5531 (bug 1269209)
MozReview-Commit-ID: Jl5DGq5SSIb
2016-10-28 00:38:25 +02:00
Sebastian Hengst
97986cca99 Backed out changeset 104c0aa10747 (bug 1269209)
MozReview-Commit-ID: 6zxq7BZVDdV
2016-10-28 00:38:21 +02:00
Sebastian Hengst
7d4a382a0a Backed out changeset cea0421beffa (bug 1269209)
MozReview-Commit-ID: K2h53eVFx72
2016-10-28 00:38:17 +02:00
Sebastian Hengst
2c7c46521a Backed out changeset ecf28a55600f (bug 1269209)
MozReview-Commit-ID: 8b32exDhjlc
2016-10-28 00:38:13 +02:00
Sebastian Hengst
ae4944d68e Backed out changeset a3d0e9ed7d85 (bug 1269209)
MozReview-Commit-ID: 44w6YVdBpNw
2016-10-28 00:38:09 +02:00
Sebastian Hengst
1cec747683 Backed out changeset b74022c44df0 (bug 1269209)
MozReview-Commit-ID: 7eQIKVrJVzo
2016-10-28 00:38:05 +02:00
Sebastian Hengst
74577df24b Backed out changeset 016b31e0631f (bug 1269209)
MozReview-Commit-ID: FjxnOGL1u2a
2016-10-28 00:38:01 +02:00
Sebastian Hengst
4bd0a3ef40 Backed out changeset bc025cccc7fb (bug 1269209)
MozReview-Commit-ID: 6pYIMGGUqai
2016-10-28 00:37:57 +02:00
Sebastian Hengst
60e55fd4f8 Backed out changeset dc9d739edd0f (bug 1269209)
MozReview-Commit-ID: FyJ0wypywng
2016-10-28 00:37:53 +02:00
Sebastian Hengst
32b1c62a71 Backed out changeset 1b9719af21a2 (bug 1269209)
MozReview-Commit-ID: HiRfHGgLsuS
2016-10-28 00:37:49 +02:00
Sebastian Hengst
9d3acef348 Backed out changeset d6701dc311d0 (bug 1269209)
MozReview-Commit-ID: 2Vg2oalCgvo
2016-10-28 00:37:45 +02:00
Sebastian Hengst
8b31046df0 Backed out changeset e77b8468e140 (bug 1269209)
MozReview-Commit-ID: CKyQPo2BPT2
2016-10-28 00:37:41 +02:00
Sebastian Hengst
7cf51c45ad Backed out changeset faf627174b48 (bug 1269209)
MozReview-Commit-ID: A7oK2jlMuXo
2016-10-28 00:37:37 +02:00
Sebastian Hengst
06c15394c4 Backed out changeset eac4a21c91f3 (bug 1269209)
MozReview-Commit-ID: KBo6scQvIke
2016-10-28 00:37:32 +02:00
Sebastian Hengst
59fa0eaa9d Backed out changeset 0e23de3de2ed (bug 1269209)
MozReview-Commit-ID: 1k72iduYwye
2016-10-28 00:37:28 +02:00
Aryeh Gregor
3330f68ce5 Bug 1269209 - .ini cleanup; r=masayuki
MozReview-Commit-ID: ISJBtyiuNfV

--HG--
extra : rebase_source : e58827d6ed0bb1dcf3fe4251560f32394b262ee7
2016-08-22 21:25:33 +03:00
Aryeh Gregor
8612495f59 Bug 1269209 - Port test_bug1257363.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 1KcoAHEsDwB

--HG--
extra : rebase_source : 90d548c0af3914e006c1bf8fa1509428daf4b30e
2016-08-22 21:24:12 +03:00
Aryeh Gregor
09461ca50e Bug 1269209 - Port test_bug1250010.html from chrome to plain; r=masayuki
MozReview-Commit-ID: AerXvBRSmqN

--HG--
extra : rebase_source : 68901551ae2603ed80f11396758820cea97cfca9
2016-08-22 21:23:13 +03:00
Aryeh Gregor
f5b843f27c Bug 1269209 - Port test_bug1154791.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 8MmrfEJXFb9

--HG--
extra : rebase_source : 922e5f1b58222cc3017a9b2c792d87cf3eb58a25
2016-08-22 21:22:13 +03:00
Aryeh Gregor
8015667d53 Bug 1269209 - Port test_bug1140105.html from chrome to plain; r=masayuki
MozReview-Commit-ID: BfdjmtEdwX4

--HG--
extra : rebase_source : 9511095055c4a66cf45c82d909c8eaeb7103850c
2016-08-22 21:21:18 +03:00
Aryeh Gregor
cf68de1927 Bug 1269209 - Port test_bug1100966.html from chrome to plain; r=masayuki
MozReview-Commit-ID: BlAIUibApXY

--HG--
extra : rebase_source : ffd3721942ce7c17752215444d6f190417d5fb4b
2016-08-22 21:20:05 +03:00
Aryeh Gregor
d77c622ef5 Bug 1269209 - Port test_bug1053048.html from chrome to plain; r=masayuki
MozReview-Commit-ID: ECNH5u4S4QR

--HG--
extra : rebase_source : a7c72ce5ecc9422a5661cb10bb4ec61c7a4dfc51
2016-08-22 21:18:43 +03:00
Aryeh Gregor
17e1475d15 Bug 1269209 - Port test_bug830600.html from chrome to plain; r=masayuki
Fails in e10s.  mrbkap said he has no idea why without debugging it
(comment 8 in bug).

MozReview-Commit-ID: 6vG0czg6Vpv

--HG--
extra : rebase_source : 1ef955889b331352870542b5362c8368c6ed290f
2016-08-22 21:17:49 +03:00
Aryeh Gregor
57d3061a3c Bug 1269209 - Port test_bug635636.html from chrome to plain; r=masayuki
MozReview-Commit-ID: KoJbPZ85emj

--HG--
extra : rebase_source : df1f1d5dd8c02d6d00821ba0171d8e7697d3d789
2016-08-22 21:16:52 +03:00
Aryeh Gregor
4c585dd3d0 Bug 1269209 - Port test_bug483651.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 1320m72F2lz

--HG--
extra : rebase_source : 729e1bca03be68e66e9c67d68f2824079d395695
2016-08-22 21:13:37 +03:00
Aryeh Gregor
4e7480d417 Bug 1269209 - Port test_bug471319.html from chrome to plain; r=masayuki
MozReview-Commit-ID: E8CBXZLPBPC

--HG--
extra : rebase_source : 23d2cd5787d87ae3d8c31265af4f2aeef9f57032
2016-08-22 21:12:45 +03:00
Aryeh Gregor
eacd1f594c Bug 1269209 - Port test_bug366682.html from chrome to plain; r=masayuki
MozReview-Commit-ID: EB8je1gkEwM

--HG--
extra : rebase_source : 3157a34cc5906146d24925256433e06041c36dd3
2016-08-22 21:11:37 +03:00
Aryeh Gregor
918902dabb Bug 1269209 - Port test_bug46555.html from chrome to plain; r=masayuki
MozReview-Commit-ID: J7YdJAIzvR9

--HG--
extra : rebase_source : 6b9af9ca7b3bc7018bea6fb9a499c843f0b648be
2016-08-22 21:10:39 +03:00
Aryeh Gregor
84f4bfb68c Bug 1269209 - Port test_bug1205983.html from chrome to plain; r=masayuki
MozReview-Commit-ID: FPFRvbOftw4

--HG--
extra : rebase_source : e476b38c53c07e7c5a0b6fa468aa16f66ac45a79
2016-08-22 21:08:52 +03:00
Aryeh Gregor
7d10038ed6 Bug 1269209 - Port test_bug1200533.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 2CrI1aTjaYJ

--HG--
extra : rebase_source : 9aa79d9ca17f1cd9205001394a8d11062e97730c
2016-08-22 21:07:52 +03:00
Aryeh Gregor
ad70bfa1ca Bug 1269209 - Port test_bug1204147.html from chrome to plain; r=masayuki
MozReview-Commit-ID: KBeFI73j1Jx

--HG--
extra : rebase_source : 8f498011aa015474704ade718556b6d2896da8c6
2016-08-22 21:06:41 +03:00
Aryeh Gregor
013f27422c Bug 1269209 - Port test_bug717433.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 426kBYZCCWy

--HG--
extra : rebase_source : a2ca84e14b4d94712cad6985b403cc665e13518e
2016-08-22 21:05:29 +03:00
Aryeh Gregor
e2c71b973f Bug 1269209 - Port test_bug697981.html from chrome to plain; r=masayuki
MozReview-Commit-ID: IrnlEWhIBzk

--HG--
extra : rebase_source : 2126f778124279d1987cc5712852e295619f9753
2016-08-22 21:04:30 +03:00
Aryeh Gregor
31005c9468 Bug 1269209 - Port test_bug678842.html from chrome to plain; r=masayuki
MozReview-Commit-ID: LUSLjnMYl1I

--HG--
extra : rebase_source : 1d41fc571c47bba436e99b7239e6b7f4f4df25bc
2016-08-22 21:03:23 +03:00
Aryeh Gregor
9f27fa1dd2 Bug 1269209 - Port test_bug338427.html from chrome to plain; r=masayuki
MozReview-Commit-ID: HiDXAKaZlQA

--HG--
extra : rebase_source : 69b4d87f6c31de8208d3e400f6bf0a2c38616d78
2016-08-22 21:02:11 +03:00
Aryeh Gregor
84e7b9c6b9 Bug 1269209 - Port test_async_UpdateCurrentDictionary.html from chrome to plain; r=masayuki
MozReview-Commit-ID: 3dneNqKrYCe

--HG--
extra : rebase_source : c3bb5488705e02c7802412e19c516c1a446c883d
2016-08-22 21:00:48 +03:00
Aryeh Gregor
8155affd0b Bug 1269209 - DOS -> Unix newlines; r=masayuki
MozReview-Commit-ID: 3StxlnmY1A1

--HG--
extra : rebase_source : e2eec74a7a730b03f3b1c5bd6afb9d4086956262
2016-05-08 15:50:44 +03:00
Aryeh Gregor
5a872fcc34 Bug 1269209 - Fix incorrect bug number in test; r=masayuki
MozReview-Commit-ID: Kk1BIx6wDXI

--HG--
extra : rebase_source : ebf9eab60a0896a9b9dfd8bfe3c1157ede5c80f6
2016-05-05 13:52:22 +03:00
Carsten "Tomcat" Book
9031c83f32 Merge mozilla-central to autoland 2016-10-26 17:14:27 +02:00
Masayuki Nakano
7999bc1f16 Bug 1311621 Fix odd indent of editor/composer/nsComposerRegistration.cpp r=smaug
MozReview-Commit-ID: L4y0UNS6xFb

--HG--
extra : rebase_source : 116b2c82384ae03d23d243fe2a41e50c7012f4f9
2016-10-25 15:07:42 +09:00
Masayuki Nakano
3f9cd43050 Bug 1312451 Remove unnecessary empty line from .cpp files under editor/txmgr r=smaug
The .cpp files under editor/txmgr have a lot of unnecessary empty lines and they make reading the code more difficult because fewer lines can be displayed in screen.  This patch removes such unnecessary lines and C like variable declarations at start of some methods because they also waste lines and make them unclear where is the first user of them.

MozReview-Commit-ID: GXGkdoLJ4Jw

--HG--
extra : rebase_source : 449e191553cff8c875565802d930abe2a6dba4a6
2016-10-25 14:57:10 +09:00
Masayuki Nakano
b83f17b535 Bug 1311606 Rename |result| of nsresult variants to |rv| in editor r=smaug
For conforming to our coding rules, |result| of nsresult variants should be renamed to |rv|.

MozReview-Commit-ID: Bk8CyLAnvXQ

--HG--
extra : rebase_source : dd3dc34a032f22abf3fd7f85556b47ffbeec55b2
2016-10-25 00:43:49 +09:00
Makoto Kato
c4eee3e2b8 Bug 1312936 - Part 2. Use nsAutoCString for nsITranserable.getAnyTransferData into editor. r=masayuki
Also, replace nsCRT::strcmp with EqualsLiteral.  nsCRT::strcmp is deprecated API.

MozReview-Commit-ID: KZ4xfk7bhH3

--HG--
extra : rebase_source : dace79aea16c53ed48bcd47a62bf5ca7b36d2a3c
2016-10-26 11:10:29 +09:00
Carsten "Tomcat" Book
e3e8571c53 merge mozilla-inbound to mozilla-central a=merge 2016-10-24 16:55:47 +02:00
Masayuki Nakano
a6c4cf07dc Bug 1309413 part.4 Get rid of NS_ENSURE_* from SetDocumentTitleTransaction r=ehsan
NS_ENSURE_* are deprecated.  So, let's rewrite them with NS_WARN_IF().

MozReview-Commit-ID: 1lqUhfLrncJ
2016-10-15 00:51:48 +09:00
Masayuki Nakano
41708ec80f Bug 1309413 part.3 Fix some nits in SetDocumentTitleTransaction.cpp r=ehsan
SetDocumentTitleTransaction.cpp was written a long time ago.  So, it doesn't use our modern coding style.  Let's fix it.

MozReview-Commit-ID: LhgMbv8dqKm
2016-10-14 18:43:25 +09:00
Masayuki Nakano
81b72e056d Bug 1309413 part.2 Rename the variable in SetDocumentTitleTransaction::SetDomTitle() from "res" to "rv" r=ehsan
MozReview-Commit-ID: CMZbBIpq8y2
2016-10-14 18:37:00 +09:00
Masayuki Nakano
f0796a5d35 Bug 1309413 part.1 SetDocumentTitleTransaction::SetDomTitle() should retry to get head element before inserting new title element r=ehsan
When there is no title element, SetDocumentTitleTransaction::SetDomTitle() creates title element and try to insert it to the head element.  However, it might be swapped during modifying existing title element or head element.

Therefore, after modifying the tree, SetDocumentTitleTransaction::SetDomTitle() should forget the retrieved head element and when it needs to refer current head element, it should retry to get the head element again.

MozReview-Commit-ID: 59BxEwrflye
2016-10-14 18:06:21 +09:00
Masayuki Nakano
bea2eb150e Bug 1309413 part.0 Add automated test to test SetDocumentTitleTransaction::SetDomTitle() r=ehsan
For detecting regressions, SetDocumentTitleTransaction::SetDomTitle() should be tested.

The transaction is created only when nsIHTMLEditor::setDocumentTitle().  Therefore, it needs to be a chrome mochitest.

MozReview-Commit-ID: 4UjAJ8zNPBP
2016-10-15 00:38:42 +09:00
Masayuki Nakano
6bc92def07 Bug 1311240 Fix odd "{" and "}" of control statements in editor for conforming to our coding rules r=smaug
Currently, editor code uses following style (or similar style) in a lot of places:

if (foo)
{

}
else
{

}

This patch fixes this as conforming to our coding rules, i.e., it becomes:

if (foo) {

} else {

}

Additionally, this fixes other odd control statements in the files which include above issue because it's difficult to find following issues with searching the files:

* if (foo) bar;
* if (foo) { bar; }
* if (foo)
    bar;

Finally, if it becomes much simpler than current code, this patch rewrites existing code with "early return style". But this case is only a few places because this is risky.

MozReview-Commit-ID: 2Gs26goWXrF

--HG--
extra : rebase_source : 603f9003a3566b3203bdeb27dc73ac33502d2853
2016-10-24 11:27:45 +09:00
Eric Rahm
a2f7bff287 Bug 1311759 - Remove unused references to nsISupportsArray. r=froydnj
This removes various references to nsISupportsArray throughtout the tree that
aren't used.

MozReview-Commit-ID: EtgD1DRwY8e
2016-10-21 16:34:42 -07:00
Masayuki Nakano
2773c4d0ef Bug 1310618 Replace nsresult variables |res| with |rv| under editor/ r=Ehsan
In our coding rules, variable names of nsresult should be rv.  Indeed, when you see |rv| in the code, you must assume that its type if nsresult.

However, a lot of code under editor/ uses |res| for the variables of nsresult.  Let's replace |res| with |rv|.

And this patch improves following points:

1. When |rv| is set in both |if| and |else| block and they are check outside of them, this moves the check into each |if| and |else| block because even if the failure is notified with warning, you cannot see which case was performed and failed.  This change makes it clear.

2. When |return rv;| returns non-error code because |rv| is checked with NS_ENSURE_SUCCESS() immediately before, setting replacing it with |return NS_OK;| is clearer.

3. Move declaration of |nsresult rv| into smaller scope as far as possible.  This prevents setting rv to unexpected value and easier to check its value at reading the code.

MozReview-Commit-ID: 9MAqj7sFey3

--HG--
extra : rebase_source : 0fd316b851ea616b3a95d8c1afc111ff55e11993
2016-10-19 18:09:33 +09:00
Masayuki Nakano
701f3b7c7a Bug 1311235 part.3 Rename NS_EDITOR_ELEMENT_NOT_FOUND to NS_SUCCESS_EDITOR_ELEMENT_NOT_FOUND r=Ehsan
MozReview-Commit-ID: KBeqo2WwOBY

--HG--
extra : rebase_source : b8263ea2bbad63bcbea056b1c11240a28bb4bfb2
2016-10-19 14:35:21 +09:00
Masayuki Nakano
015e1b9d89 Bug 1311235 part.2 Rename NS_FOUND_TARGET to NS_EDITOR_FOUND_TARGET and make it a success code r=Ehsan
NS_FOUND_TARGET is now declared as an error code.  However, making it as a success code makes the code simpler.

First, this patch renames it to NS_SUCCESS_EDITOR_FOUND_TARGET because it's usual naming rule (according to the other declarations).

Next, FindTargetNode() should return it when a nest call of itself returns NS_SUCCESS_EDITOR_FOUND_TARGET as it does now.

Finally, removing the code overwriting NS_FOUND_TARGET with NS_OK from HTMLEditor::CreateDOMFragmentFromPaste() since it doesn't cause hitting NS_ENSURE_SUCCESS() and the variable, rv, will be overwritten with other method's result.

MozReview-Commit-ID: 6GgZptrXXQa

--HG--
extra : rebase_source : 79418fc83fb087e559221f895c59c7c334980456
2016-10-19 14:15:24 +09:00
Makoto Kato
167407b34f Bug 850043 - Part 2. Add test. r=masayuki
MozReview-Commit-ID: 9iY6udNCQdL

--HG--
extra : rebase_source : 4d9ec835c619afa2fc2b8157118e31ee5ab9e0d0
2016-10-17 14:24:47 +09:00
Makoto Kato
d4e1205058 Bug 850043 - Part 1. Looking for better insertion point when using plain text editor. r=masayuki
When typing character, current selection node might be anonymous DIV, not text node.  So even if plain text, we might not get it.

We should get text node correctly when using plain text editor.

MozReview-Commit-ID: LmfYa7BqZnC

--HG--
extra : rebase_source : d08c74c8cc5fdec4d19772f112e54a08b95afeb3
2016-10-17 14:22:46 +09:00
Xidorn Quan
05ef8466c6 Bug 1309109 part 5 - Store ServoDeclarationBlock rather than RawServoDeclarationBlock in nsAttrValue. r=heycam
MozReview-Commit-ID: HWqgjwif1qF

--HG--
extra : source : cf3b1baff3d1d6233c72e32cf01cd28a2b344ebf
2016-10-18 15:29:03 +11:00
Olli Pettay
d04af0658f Bug 1309720, ensure expected DOM tree operations when calling insertBefore, r=ehsan
--HG--
extra : rebase_source : 9583d0f4aa9c395c3615f17244c4531a9d441534
2016-10-14 15:33:42 +03:00
Ehsan Akhgari
430e61c30f Bug 1248148 - Disable firing selection events during HTML editor initialization; r=mystor
This is similar to what we do for the plaintext editor initialization.
2016-10-13 13:46:40 -04:00
Makoto Kato
626a2cfaa9 Bug 1309117 - Make ImgFromData fallible. r=masayuki
When pasting large image, it may cause OOM when generating base64 data.  So we should use fallible allocator instead.

Also, base64 is ASCII, so we should use AppendASCIItoUTF16 instead of AppendUTF8toUTF16.

MozReview-Commit-ID: 8yWPxfEcEwv

--HG--
extra : rebase_source : 6c2c3144d4413017b4861443c945aeb0d6d995ef
2016-10-11 19:28:30 +09:00
Boris Zbarsky
a3ba31e74a Bug 1308287 part 2. Make DataTransfer.types use [NeedsSubjectPrincipal]. r=mystor 2016-10-10 21:07:48 -04:00
Boris Zbarsky
bae20efd7f Bug 1298243 part 7. Change DataTransfer.types from being a DOMStringList to being a frozen array. r=mystor,gijs 2016-10-10 21:07:47 -04:00
Xidorn Quan
2f49a48a09 Bug 1304302 part 10 - Replace all uses of StyleSheetHandle. r=heycam
This commit is generated by the following commands with some minor
manual adjustment:

find . \( -name '*.h' -or -name '*.cpp' \) -not -path './layout/style/StyleSheet*' -exec sed -i -b \
  -e '/^\(#include\|using\)/s/StyleSheetHandle/StyleSheet/g' \
  -e 's/\(mozilla::\)\?StyleSheetHandle::RefPtr/RefPtr<\1StyleSheet>/g' \
  -e 's/StyleSheetHandle()/nullptr/g' \
  -e 's/->AsStyleSheet()//g' \
  -e 's/StyleSheetHandle/StyleSheet*/g' {} +
sed -i -b 's/sheet->AsVoidPtr()/sheet.get()/' layout/style/Loader.cpp
sed -i -b 's/AsHandle()/this/' layout/style/StyleSheet.cpp

MozReview-Commit-ID: 7abdvlKHukd

--HG--
extra : source : e5682242db07203b5a91810fe1e243c955310588
2016-09-26 22:03:25 +10:00
Carsten "Tomcat" Book
36f1fe4e63 Bug 972110 - fix test_bug674770-1.html after merge conflict a=me
--HG--
extra : amend_source : 8616390a1773b278f52691300128d15d7b55de98
2016-09-23 12:14:13 +02:00
Carsten "Tomcat" Book
a65e4225ef merge mozilla-inbound to mozilla-central a=merge 2016-09-23 12:05:53 +02:00
Masayuki Nakano
c29d9ac401 Bug 972110 Rewrite editor/libeditor/test_bug674770-1.html without setTimeout() for avoiding intermittent failure r=smaug
We can assume that if middle button's click event on a link isn't consumed by any event handlers including system event group's, it will cause open new tab.  With this assumption, we can avoid using setTimeout which causes random orange.

However, unfortunately, in e10s mode, the default is NOT consumed at window in bubbling phase but consumed at that time. So, when not working the link is expected, we cannot check Event.defaultPrevented.  But fortunately, we can check if the page is loaded after that.

Note that for testing this, the test needs to check if an event handler which is either in default group or system group consumed a click event.  However, this runs as mochitest-plain.  Therefore, Event.defaultPrevented returns false if the event is consumed only in the system group's event listener.  For avoiding this issue, this patch adds defaultPreventedInAnyGroups() into SpecialPowers.  In SpecialPowers, Event.defaultPrevented is accessed from chrome context.  Therefore, we can get the result what this test needs.

MozReview-Commit-ID: Cfn4lFR1dfI

--HG--
extra : rebase_source : 51feb768bd38f62cc19c2f4aecaaea0135190599
2016-09-22 10:54:51 +09:00
aceman
8667dcbcb6 Bug 1273001 - convert HTMLEditor::getLinkedObjects() to nsIArray. r=masayuki 2016-09-20 12:47:00 +02:00
Gabor Krizsanits
af105a9c64 Bug 1301340 - Force single process in some tests. r=mrbkap 2016-09-22 09:24:31 +02:00
Shing Lyu
74414dd285 Bug 1302993 - Update some stylo reftest expectations; r=heycam
MozReview-Commit-ID: 5UUDlAUfBYP

--HG--
extra : rebase_source : c8aff1382e492bc07c59becc697abfb4f7bd8f95
2016-09-12 11:05:21 +05:30
aceman
8577dea451 Bug 1272893 - Remove nsISupportsArray from GetEmbeddedObjects() in editor. r=masayuki
--HG--
extra : amend_source : 2e47d294e70be626e77f5b46614c907e17ac5ba5
2016-09-15 04:33:00 +02:00
Manish Goregaokar
aad318e17a Bug 1300337 - Replace None_ variants from nsStyleConsts.h with None; r=heycam,TYLin
MozReview-Commit-ID: CxHzbEzjLxT

--HG--
extra : rebase_source : 232f90b8b107f7fb49f47a29a4e493660b8a7d87
2016-09-04 00:16:58 +05:30
Shing Lyu
db11558e50 Bug 1288350 - Temporary reftest list for Stylo vs Gecko test r=heycam,manishearth
--HG--
extra : rebase_source : 4772418bd2813d4e79643a833eb09e47fe893d84
2016-09-05 11:45:39 +08:00
Carsten "Tomcat" Book
d98e95abb8 Merge mozilla-central to autoland 2016-09-08 12:51:52 +02:00
Ting-Yu Lin
6f82a72d0c Bug 1301325 - Remove text_caret*.png under editor/composer/res/. r=mtseng
MozReview-Commit-ID: 5UQ65KIOxW8

--HG--
extra : rebase_source : f3606c754227f894eb674f6dfd16eac78236c0a3
2016-09-08 16:54:15 +08:00
Thomas Wisniewski
2b28c5e2a9 Bug 1069012 - Unprefix ::placeholder pseudo-element. r=bz 2016-09-07 19:38:38 -04:00
Michael Layzell
5d1745c161 Bug 1018486 - Part 2: Changes in editor/, r=masayuki
MozReview-Commit-ID: JA7UCVXEd8j
2016-09-07 10:50:37 -04:00
Nicholas Nethercote
b71747b2ac Bug 1299727 - Rename NS_WARN_IF_FALSE as NS_WARNING_ASSERTION. r=erahm.
The new name makes the sense of the condition much clearer. E.g. compare:

  NS_WARN_IF_FALSE(!rv.Failed());

with:

  NS_WARNING_ASSERTION(!rv.Failed());

The new name also makes it clearer that it only has effect in debug builds,
because that's standard for assertions.

--HG--
extra : rebase_source : 886e57a9e433e0cb6ed635cc075b34b7ebf81853
2016-09-01 15:01:16 +10:00
Emilio Cobos Álvarez
619cb14d87 Bug 1299066: Make NS_STYLE_DISPLAY_* an enum class. Prefer indexing instead of linear search in the frame constructor r=heycam,bz
The main renaming was generated with the following python script:

```

import sys
import re

CAMEL_CASE_REGEX = re.compile(r"(^|_|-)([A-Z])([A-Z]+)")
DISPLAY_REGEX = re.compile(r"\bNS_STYLE_DISPLAY_([^M][A-Z_]+)\b")

def to_camel_case(ident):
  return re.sub(CAMEL_CASE_REGEX,
                lambda m: m.group(2) + m.group(3).lower(), ident)

def constant_to_enum(constant):
  return "StyleDisplay::" + to_camel_case(constant) + ("_" if constant == "NONE" else "")

def process_line(line):
  return re.sub(DISPLAY_REGEX,
                lambda m: constant_to_enum(m.group(1)), line)

lines = []
with open(sys.argv[1], "r") as f:
  for line in f:
    lines.append(process_line(line))

with open(sys.argv[1], "w") as f:
  for line in lines:
    f.write(line)
```

And the following shell commands:

```
find . -name '*.cpp' -exec python display.py {} \;
find . -name '*.h' -exec python display.py {} \;
```

MozReview-Commit-ID: 91xYCbLC2Vf
2016-09-01 20:41:17 -07:00
Aryeh Gregor
76862dadad Bug 1299453 - Stop using createEvent("DragEvents"/"KeyEvents") internally; r=smaug
They are non-standard aliases for "DragEvent" and "KeyboardEvent" that
are not supported by any other UA, and we would like to drop support.
So first let's stop using them ourselves, so we can use telemetry to see
if any sites are using them.

MozReview-Commit-ID: ICC33ORa2st
2016-08-31 20:38:50 +03:00
Ou Shinjo
2e390f8812 Bug 1266165 - CompositionTransaction::SetIMESelection() should not hide caret when redo r=masayuki
CompositionTransaction::SetIMESelection() is also called when user redos the committed composition.  In such case, it doesn't have ranges, but DoTransaction() tries to restore selection ranges with no ranges.  That causes hiding caret because when there is no caret range in the ranges, SetIMESelection() hides the caret as IME requested.

So, for redo, SetIMESelection() shouldn't hide caret when there are no ranges (i.e., the composition was already committed).
2016-08-27 13:26:42 +09:00
Aryeh Gregor
f3e54042f1 Bug 1271115 - Merge ChromeUtils.js into EventUtils.js; r=jmaher
This allows plain mochitests to use the functions as well, which is
necessary to get them to work with e10s.

MozReview-Commit-ID: J4um2mliJcZ
2016-08-25 16:57:09 +03:00
Aryeh Gregor
f5cce8463c Bug 1250805 - Respect type-in state when caching inline styles; r=masayuki
MozReview-Commit-ID: OZCUbNUvmz
2016-08-25 14:43:21 +03:00
Lee Salzman
ac99e35d5f Bug 1278957 - enable Skia content for Linux and Android. r=mchang
MozReview-Commit-ID: KFb81rVM0ik
2016-08-23 13:55:14 -04:00
Aryeh Gregor
f6c34fc75b Bug 748308 - Support insertParagraph and insertLineBreak per spec/Blink/WebKit; r=masayuki
Previously we supported insertParagraph as a synonym for formatBlock
"p", which is both useless and incompatible with all other browsers.
Edge's behavior doesn't look useful and looks redundant with insertHTML
(although it matches the name nicely, probably because they invented
the command).  Blink/WebKit treat it the same as hitting Enter, which is
useful for cross-browser testing until we get synthesizeKey() in wpt.

At the same time, I added insertLineBreak, which Blink/WebKit support
with the same functionality as pressing Shift-Enter.

The new event.html failures are spurious -- we used to pass by mistake
because we didn't support insertlinebreak at all.  insertlinebreak.html
has only new passes, no new failures, although it's not clear on the
diff.

MozReview-Commit-ID: 16oPcxXwGcj
2016-08-23 14:13:17 +03:00
Aryeh Gregor
a97d9af06f Bug 1295563 - Assert that editors can't be reinitialized during an edit action; r=masayuki
Many HTMLEditRules methods use the pattern of
  nsCOMPtr<nsIEditor> kungFuDeathGrip(mHTMLEditor);
at the beginning of the method, followed by using mHTMLEditor freely.
If Init() is then called on the editor, mHTMLEditor is set to null, so
it will crash.  Other bad stuff will probably happen too.

MozReview-Commit-ID: gUtaTAQJIh
2016-08-23 14:13:16 +03:00
Aryeh Gregor
dfe0b2fb6c Bug 1265800 part 3 - Move cursor into all adjacent nodes after delete; r=masayuki
When deleting, we previously would only move the cursor back into the
previous block if the last leaf node was a text node, for some reason.
We should move into the previous block in other cases as well, like if
the leaf node is a collapsed <br>.  (Probably it's not correct to move
backward into tables, but that already was happening if the table had
text at the end.  There may be other cases where this is wrong.)

MozReview-Commit-ID: 8e0dTU3lNYO
2016-08-22 14:27:17 +03:00
Aryeh Gregor
2a778fda0b Bug 1265800 part 2 - Don't place cursor after invisible break; r=masayuki
If the user tries to insert text without moving the cursor, the
invisible break will become visible, which from the user's perspective
means an extra line break was inserted for no reason.

The IsVisBreak change here is a bit scary, because it may result in
unexpected behavior changes, but it seems to improve correctness.  If it
turns out to cause problems, it can be added as a special case to
GetGoodSelPointForNode instead.

MozReview-Commit-ID: 7SRQYHYtJvF
2016-08-22 14:27:08 +03:00
Aryeh Gregor
09a3b26740 Bug 1265800 part 1 - Small unrelated cleanup patch; r=masayuki
MozReview-Commit-ID: CmyOTeFgKtS
2016-08-22 14:26:52 +03:00
Sebastian Hengst
6568eeec5b Backed out changeset e3b15fe52734 (bug 1265800) for failing added wpt /XMLHttpRequest/event-error.html. r=backout 2016-08-21 23:48:54 +02:00
Sebastian Hengst
9df7aba907 Backed out changeset bba587e03e0b (bug 1265800) 2016-08-21 23:42:45 +02:00
Sebastian Hengst
73836dc023 Backed out changeset da1cdd000993 (bug 1265800) 2016-08-21 23:42:41 +02:00
Aryeh Gregor
aeca189ce4 Bug 1265800 part 3 - Move cursor into all adjacent nodes after delete; r=masayuki
When deleting, we previously would only move the cursor back into the
previous block if the last leaf node was a text node, for some reason.
We should move into the previous block in other cases as well, like if
the leaf node is a collapsed <br>.  (Probably it's not correct to move
backward into tables, but that already was happening if the table had
text at the end.  There may be other cases where this is wrong.)

MozReview-Commit-ID: 8e0dTU3lNYO
2016-08-21 18:13:49 +03:00
Aryeh Gregor
c0a463e1dd Bug 1265800 part 2 - Don't place cursor after invisible break; r=masayuki
If the user tries to insert text without moving the cursor, the
invisible break will become visible, which from the user's perspective
means an extra line break was inserted for no reason.

The IsVisBreak change here is a bit scary, because it may result in
unexpected behavior changes, but it seems to improve correctness.  If it
turns out to cause problems, it can be added as a special case to
GetGoodSelPointForNode instead.

MozReview-Commit-ID: 7SRQYHYtJvF
2016-08-21 18:13:49 +03:00