Read-only Git mirror of the Mercurial gecko repositories at https://hg.mozilla.org. How to contribute: https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html
Перейти к файлу
Masayuki Nakano 18912959bd Bug 1406726 - HTMLEditRules::WillInsertBreak() should reset mNewNode with caret position r=m_kato
HTMLEditRules::WillInsertBreak() started to use HTMLEditRules::MakeBasicBlock()
to wrap existing inline elements with default paragraph separator if inline
elements are children of editing host.  However,
HTMLEditRules::ApplyBlockStyle() called by HTMLEditRules::MakeBasicBlock() sets
mNewNode to last new block node.  So, if it wraps inline elements after caret
position, mNewNode becomes after expected caret position and
HTMLEditRules::AfterEditInner() will move caret into it.

This patch make HTMLEditRules::WillInsertBreak() reset mNewNode with
caret position after calling HTMLEditRules::MakeBasicBlock().

Additionally, this patch fixes a bug of HTMLEditor::IsVisibleBRElement().
That is, it uses only editable nodes to check if given <br> element is
visible.  However, editable state is not related to this check.  If <br>
element is followed by non-editable inline node (except invisible data
nodes), it always visible.  This bug caused getting wrong nodes with
HTMLEditRules::GetNodesFromSelection() which is used by
HTMLEditRules::MakeBasicBlock().  Therefore, this patch also adds lots of
EditorBase::Get(Next|Previous)ElementOrText*() and
HTMLEditor::Get(Next|Previous)HTMLElementOrText*() to ignore only invisible
data nodes.

Note that even with this fix, the range of nodes computed by
HTMLEditRules::GetNodesFromSelection() is still odd if only non-editable
elements follow a <br> node which is first <br> element after the caret
position.  However, what is expected by the execCommand spec is unclear.
So, automated test added by this patch checks current inconsistent behavior
for now.

MozReview-Commit-ID: 2m52StwoEEH

--HG--
extra : rebase_source : 6b9b2338e35c4d2e89a405fd8e1ffc7b0873ca1e
2018-02-13 19:01:42 +09:00
.cargo Bug 1426116 - Update for changes in WR PR 2251. r=jrmuizel 2018-01-08 09:19:27 -05:00
.vscode Bug 1423565 - Update tasks.json as per documentation. r=rillian 2017-12-06 14:59:35 +01:00
accessible Bug 1436902 part 3. Replace usage of NS_IMPL_ISUPPORTS_INHERITED0 with NS_INLINE_DECL_REFCOUNTING_INHERITED when possible. r=mccr8 2018-02-12 15:44:40 -05:00
browser Backed out changeset 067ee834b07b (bug 1404688) for xpcshell failures at toolkit/mozapps/extensions/test/xpcshell/test_LightweightThemeManager.js 2018-02-15 05:15:10 +02:00
build Bug 1437201 - Part 1: Don't try to use target as host with clang for Android. r=froydnj 2018-02-09 14:32:28 -08:00
caps Backed out 4 changesets (bug 1432358) for failing xpcshell's test_ext_contentscript_triggeringPrincipal.js 2018-02-12 19:58:28 +02:00
chrome Bug 1230369 - Manually fix some remaining instances of Ci/Cc/Cu definitions and switch Components.* to using the shorthand in some places. r=florian 2018-02-07 09:24:15 +00:00
config Bug 1435424 - Remove doxygen support from the build system. r=gps 2018-02-02 14:24:18 -08:00
db Bug 1432269 - Upgrade to SQLite 3.22.0. r=mak 2018-01-31 09:41:50 -05:00
devtools Bug 1436659 - Use updatePlaybackRate in DevTools; r=daisuke 2018-02-13 15:04:18 +09:00
docshell Bug 1437300 - Remove nsIDocCharset. r=bz 2018-02-10 19:12:42 +01:00
dom Bug 1436659 - Implement pending playback rate mechanism; r=hiro 2018-02-13 15:04:18 +09:00
editor Bug 1406726 - HTMLEditRules::WillInsertBreak() should reset mNewNode with caret position r=m_kato 2018-02-13 19:01:42 +09:00
embedding Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian 2018-01-29 15:20:18 -08:00
extensions Bug 1435924 - Part 1: Switch from nsSubstring.h to nsAString.h. r=dbaron 2018-02-05 17:36:32 -08:00
gfx Backed out changeset eedbb054f2ae (bug 1437694) for failing Browser chrome on browser/components/search/test/browser_searchbar_openpopup.js 2018-02-15 06:49:07 +02:00
gradle/wrapper Bug 1411654 - Part 1: Upgrade to Android-Gradle 3.0+ and build-tools;26.0.2. r=maliu 2017-10-26 11:00:36 -07:00
hal Bug 1423552: Use BaseRect access methods instead of member variables in hal/ r=gsvelto 2018-01-10 11:17:58 -05:00
image Bug 1436902 part 3. Replace usage of NS_IMPL_ISUPPORTS_INHERITED0 with NS_INLINE_DECL_REFCOUNTING_INHERITED when possible. r=mccr8 2018-02-12 15:44:40 -05:00
intl Bug 1437427 - Workaround promise/microtask bug with a callback in Fluent runtime. r=Pike 2018-02-13 12:26:31 -08:00
ipc Bug 1433046: mscom::Interceptor: Don't destroy an aggregated interceptor before releasing its interface. r=aklotz 2018-02-08 15:53:20 +10:00
js Merge mozilla-central to autoland. CLOSED TREE 2018-02-15 00:35:45 +02:00
layout Bug 1429962: Don't add frames / reframe text that is going to get reframed anyway. r=bz 2018-02-14 12:35:43 +01:00
media Bug 1436759 - Release NrIceMediaStreams on sts thread in transport_unittests.cpp. r=bwc 2018-02-14 14:24:50 -06:00
memory Bug 1436541 - Don't clobber the thread-local arenas when we happen to hit a large allocation. r=glandium 2018-02-07 18:17:48 -08:00
mfbt Bug 1428614 - Implement mozilla::IFStream and mozilla::OFStream. r=froydnj 2018-01-07 18:31:31 +09:00
mobile Merge mozilla-central to autoland. CLOSED TREE 2018-02-15 00:35:45 +02:00
modules Merge mozilla-central to autoland. CLOSED TREE 2018-02-15 00:35:45 +02:00
mozglue Bug 1437309: Delayload crypt32 and wintrust in mozglue; r=glandium 2018-02-12 12:17:36 -07:00
netwerk Merge inbound to mozilla-central. a=merge 2018-02-13 00:08:37 +02:00
nsprpub Bug 1420407, uplift NSPR_4_18_RTM, no code change, only version number. Require version 4.18 for building. r=me 2018-01-18 14:02:42 +01:00
other-licenses Bug 1436475 Part 5 - Add a readme and a patch file with our changes to the 7-zip directory. r=agashlin 2018-02-13 09:17:07 -08:00
parser Bug 1437604 - remove NS_INTERFACE_MAP_END_THREADSAFE; r=mystor 2018-02-12 14:36:46 -05:00
python Bug 1424682 - Migrate the chrome of Preferences to the new Localization API. r=flod,jaws 2017-12-18 23:19:13 -08:00
rdf Bug 1432992, part 1 - Remove definitions of Ci, Cr, Cc, and Cu. r=florian 2018-02-06 09:36:57 -08:00
security Merge autoland to mozilla-central a=merge 2018-02-15 00:19:43 +02:00
services Bug 1388830 - upgrade kinto-http.js to 4.5.3. r=MattN 2018-02-14 12:48:09 -05:00
servo servo: Merge #20033 - Output unquoted family name as a series of identifiers (from upsuper:font-space); r=emilio 2018-02-12 18:21:47 -05:00
startupcache Bug 1428557 - Stop using GetNativePath in xpcom/. r=froydnj 2017-12-15 06:53:37 +09:00
storage Bug 1432992, part 1 - Remove definitions of Ci, Cr, Cc, and Cu. r=florian 2018-02-06 09:36:57 -08:00
taskcluster Merge autoland to mozilla-central. a=merge 2018-02-13 11:38:16 +02:00
testing Bug 1436659 - Implement pending playback rate mechanism; r=hiro 2018-02-13 15:04:18 +09:00
third_party Bug 1437351 - Vendor deps for mp4parse v0.10.0. r=kinetik 2018-02-13 17:53:51 -08:00
toolkit Backed out changeset 067ee834b07b (bug 1404688) for xpcshell failures at toolkit/mozapps/extensions/test/xpcshell/test_LightweightThemeManager.js 2018-02-15 05:15:10 +02:00
tools Merge inbound to mozilla-central. a=merge 2018-02-13 11:39:36 +02:00
uriloader Bug 1437604 - remove NS_INTERFACE_MAP_END_THREADSAFE; r=mystor 2018-02-12 14:36:46 -05:00
view Bug 1423551: Use BaseRect access methods instead of member variables in view/. r=jet 2018-01-10 11:16:22 -05:00
widget Merge mozilla-inbound to mozilla-central a=merge 2018-02-15 00:23:02 +02:00
xpcom Backed out 2 changesets (bug 1173851) for Mochitest failures on dom/tests/mochitest/general/test_interfaces.html. CLOSED TREE 2018-02-15 01:10:06 +02:00
xpfe Bug 1223303 - Fix nsChromeTreeOwner::OnLocationChanged to set nsXULWindow::mChromeLoaded to false when loading a different document, r=mystor. 2018-02-08 12:29:10 +01:00
.arcconfig Bug 1424950: Add missing repository.callsign to .arcconfig. r=dkl 2017-12-13 15:38:18 +01:00
.clang-format Bug 1414764 - Remove Mozilla specific options to avoid build warnings with gcc and -Wcomment enabled. r=sylvestre 2017-11-06 11:47:40 +02:00
.clang-format-ignore Bug 1430792 - ExampleStylesheet.h should not be formatted r=andi 2018-01-16 16:37:01 +01:00
.cron.yml Bug 1418188 - Run Searchfox indexing in TaskCluster on a daily basis (r=dustin,chmanchester) 2017-11-23 07:25:12 -08:00
.eslintignore Bug 1436076 - Part 1 - Fix eslint for hudservice.js;r=nchevobbe 2018-02-07 08:16:37 -08:00
.eslintrc.js Bug 1436389 - Switch xbl related files to a different method for determining their environment. r=mossop 2018-02-07 16:02:25 +00:00
.flake8 Bug 1434430 - [flake8] Fix blank 'except' statements r=rwood 2018-01-31 14:32:08 -05:00
.gdbinit Bug 1400460 - Rename nsIAtom as nsAtom. r=hiro. 2017-10-03 09:05:19 +11:00
.gdbinit_python Bug 1346025 - Move vendored python modules from /python to /third_party/python, r=ted 2017-05-25 11:48:03 -04:00
.gitignore Bug 1429511 - Move Rust port of mozrunner to central. r=ahal 2018-01-12 15:31:20 +00:00
.hgignore Bug 1431177 - Update hgignore for talos webkit tests; r=jmaher 2018-01-17 13:59:55 -05:00
.hgtags Added tag FIREFOX_NIGHTLY_59_END for changeset 5faab9e61990 2018-01-22 11:14:37 +00:00
.inferconfig Bug 1357629 - Add httpclientandroidlib to .inferconfig ignore list r=nalexander,njpark 2017-04-18 20:05:25 -07:00
.lldbinit Bug 1400460 - Rename nsIAtom as nsAtom. r=hiro. 2017-10-03 09:05:19 +11:00
.mailmap Bug 1436182 - Add a .mailmap file to mozilla-central, r=ehsan 2018-02-07 16:01:06 -05:00
.taskcluster.yml Bug 1437562: only use ..:branch:default role, not :*; r=bstack 2018-02-12 18:58:05 +00:00
.yamllint Bug 1392795 - [yamllint] Group paths to lint by their closest config and run each config group separately, r=dustin 2017-08-23 11:28:28 -04:00
.ycm_extra_conf.py
AUTHORS Bug 1111333 - Enable double-tap-drag to zoom. r=kats 2017-05-23 19:53:06 +02:00
CLOBBER Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2018-01-22 11:19:18 +00:00
GNUmakefile
LEGAL
LICENSE
Makefile.in Bug 1424651: Remove unused SOCORRO_SYMBOL_UPLOAD_TOKEN_FILE mozconfig variable; r=ted.mielczarek 2017-12-10 23:05:05 -07:00
README.txt Bug 1349108 - Update links in README.txt to HTTPS r=RyanVM 2017-03-21 00:11:02 -04:00
aclocal.m4 Bug 1363992 - Remove jemalloc 4. r=njn 2017-05-11 13:23:07 +09:00
build.gradle Bug 1411654 - Part 1: Upgrade to Android-Gradle 3.0+ and build-tools;26.0.2. r=maliu 2017-10-26 11:00:36 -07:00
client.mk Bug 1417264 - Write .mozconfig.json from Python; r=nalexander 2017-11-13 17:45:03 -08:00
client.py Bug 1399100 - fix client.py follow-up, r=kaie 2017-09-20 09:13:14 +02:00
configure.in
configure.py Bug 1412460 - Don't write make variables in configure.d; r=mshal 2017-11-01 15:02:11 -07:00
gradle.properties Bug 1411654 - Part 2: Update Robolectric to 3.5.1. r=mcomella 2017-11-07 20:26:43 -08:00
gradlew
mach
moz.build Backed out 2 changesets (bug 1403519) for bustage on \python\mozbuild\mozbuild\test\frontend\test_reader.py on a CLOSED TREE 2018-01-17 07:23:40 +02:00
moz.configure Bug 1435424 - Remove doxygen support from the build system. r=gps 2018-02-02 14:24:18 -08:00
mozilla-config.h.in Bug 1431803 Turn __try into if(true) and __except into else in the chromium sandbox code r=bobowen,glandium 2018-01-22 12:18:51 -06:00
npm-shrinkwrap.json Bug 1436389 - Upgrade ESLint to version 4.17.0. r=mossop 2018-02-07 16:01:29 +00:00
old-configure.in Bug 1433517 - Prevent illegal characters in MOZ_MACBUNDLE_ID r=glandium 2018-02-05 10:31:00 +02:00
package.json Bug 1436389 - Upgrade ESLint to version 4.17.0. r=mossop 2018-02-07 16:01:29 +00:00
settings.gradle Bug 1360587 - Part 2. Remove bouncer apk build config; source; docs, r=nalexander 2017-10-25 22:51:44 +08:00
test.mozbuild

README.txt

An explanation of the Mozilla Source Code Directory Structure and links to
project pages with documentation can be found at:

    https://developer.mozilla.org/en/Mozilla_Source_Code_Directory_Structure

For information on how to build Mozilla from the source code, see:

    https://developer.mozilla.org/en/docs/Build_Documentation

To have your bug fix / feature added to Mozilla, you should create a patch and
submit it to Bugzilla (https://bugzilla.mozilla.org). Instructions are at:

    https://developer.mozilla.org/en/docs/Creating_a_patch
    https://developer.mozilla.org/en/docs/Getting_your_patch_in_the_tree

If you have a question about developing Mozilla, and can't find the solution
on https://developer.mozilla.org, you can try asking your question in a
mozilla.* Usenet group, or on IRC at irc.mozilla.org. [The Mozilla news groups
are accessible on Google Groups, or news.mozilla.org with a NNTP reader.]

You can download nightly development builds from the Mozilla FTP server.
Keep in mind that nightly builds, which are used by Mozilla developers for
testing, may be buggy. Firefox nightlies, for example, can be found at:

    https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central/
            - or -
    https://nightly.mozilla.org/