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
Перейти к файлу
Hiroyuki Ikezoe 7b600a0531 Bug 1534070 - Factor scroll-padding into the position calculation where nsIPresShell::ScrollContentIntoView() is going to scroll if necessary. r=botond
In the case where scroll-snap-type is specified for the scroll container, the
scroll-padding is also factored into in ScrollFrameHelper::ComputeScrollSnapInfo
which is called via ScrollFrameHelper::ScrollToWithOrigin.  It doesn't double
the scroll-padding value, but it's actually redundant, we should avoid it.
We could separate the functionality of ScrollToWithOrigin, one is to scroll
to a given element, the other is to scroll to a given position.  The former will
be used for Element.scrollIntoElement and relevant stuff, the latter will be
used for Element.scrollTo and relevant stuff.  That's being said, as of now, we
have still the old scroll snap implementation, so the separation will introduce
complexity, the separation should be done once after the old implementation
removed.

There are 9 call sites of nsIPresShell::ScrollContentIntoView:
  nsIPresShell::GoToAnchor
  nsIPresShell::ScrollToAnchor
  Element::ScrollIntoView
   We definitely needs scroll-padding and scroll-margin for these functions.

  nsCoreUtils::ScrollTo
   This is used for Accesible::ScrollTo which scrolls to a given accesible node,
   probably we should behave as what Element::ScrollIntoView does.

  Accessible::DispatchClickEvent
   Similar to the above, similated various mouse events on a given target node.

  PresShell::EventHandler::PrepareToUseCaretPosition
  PresShell::EventHandler::GetCurrentItemAndPositionForElement
   Both are for context menu, we shouldn't consider scroll-padding and
   scroll-margin.

  nsFormFillController::SetPopupOpen
   This is used for autocompletion popup, we shouldn't consider scroll-padding
   and scroll-margin.

  nsFocusManager::ScrollIntoView
   This is bit unfortunate, we should use scroll-padding and scroll-margin
   depending on call site of this function. Bug 1535232 is for this case.

cssom-view/scrollIntoView-scrollPadding.html which has some tests that is
actually testing scroll-padding with scrollIntoView passes with this change.

The reftest in this change is a test case that the browser navigates to an
element with specifying the anchor to the element.

Differential Revision: https://phabricator.services.mozilla.com/D23084

--HG--
extra : moz-landing-system : lando
2019-04-11 06:22:14 +00:00
.cargo Bug 1529117 - Bump serde and serde_derive to branch from 1.0.88. r=jrmuizel 2019-04-04 15:41:57 +00:00
.vscode Bug 1514820 - Recommend a VSCode extension for IDL language highlighting r=jya 2018-12-18 19:43:33 +00:00
accessible Bug 1542691 - [Linux] Replace nsGConfService by GSettingsService in accessible/atk/Platform.cpp, r=karlt 2019-04-09 20:47:45 +00:00
browser Backed out 4 changesets (bug 1540387) for xpcshell failures at toolkit/mozapps/extensions/test/xpcshell/test_shutdown.js on a CLOSED TREE 2019-04-11 02:57:19 +03:00
build Backed out 4 changesets (bug 1458385) for nightly updates fail. a=backout 2019-04-10 21:09:46 +03:00
caps Bug 1517797 - Rewrite net_IsValidIPv6Addr in Rust r=valentin,froydnj 2019-04-08 06:33:04 +00:00
chrome Bug 1442778 - Add "chromeContext" parameter to console API and console service messages. r=smaug 2019-04-01 22:42:34 +00:00
config Bug 1541068 - add Rust compilation directories to GARBAGE_DIRS; r=nalexander 2019-04-09 18:59:19 +00:00
db Bug 1530749 - Upgrade to SQLite 3.27.2. r=mak 2019-02-26 23:21:05 +00:00
devtools Bug 1531228 - Enable the new scroll snap and disable the old scroll snap on nightly. r=botond 2019-04-11 06:22:01 +00:00
docshell Bug 1542673, increase history.state size limit, r=qdot 2019-04-10 20:21:55 +00:00
dom Bug 1534070 - Factor scroll-padding into the position calculation where nsIPresShell::ScrollContentIntoView() is going to scroll if necessary. r=botond 2019-04-11 06:22:14 +00:00
editor Bug 1424790 - Disable 694880-1.html on Android 4.3 and linux !debug for frequent failures. r=jmaher 2019-04-09 10:40:42 +00:00
extensions Bug 1513799 - Remove windows-1252 as a Japanese detection outcome. r=emk. 2019-04-08 14:43:26 +03:00
gfx Bug 1373832 - Deflate the snapport by scroll-padding and adjust the snap positions by the padding value. r=botond 2019-04-11 06:21:48 +00:00
gradle/wrapper Bug 1509572 - Part 1: Bump Gradle wrapper to 4.10.2; decouple script from Gradle version. r=snorp 2018-11-26 21:42:27 +00:00
hal Bug 1523969 part 9 - Move method definition inline comments to new line in 'hal/'. r=gsvelto 2019-02-25 16:07:35 -06:00
image Bug 1318091 - Disable failing android gtests; r=bc 2019-04-08 20:58:21 +00:00
intl Bug 1542146 - Apply the change with the option StatementMacros from clang-format-8 r=andi 2019-04-05 21:42:17 +00:00
ipc Bug 1530303 - Put CrossOriginOpenerPolicy in BrowsingContext r=nika 2019-04-09 20:10:13 +00:00
js Bug 1541404 part 8 - Add ICEntry::isForPrologue and use it instead of ICEntry::isForOp. r=tcampbell 2019-04-10 16:28:07 +00:00
layout Bug 1534070 - Factor scroll-padding into the position calculation where nsIPresShell::ScrollContentIntoView() is going to scroll if necessary. r=botond 2019-04-11 06:22:14 +00:00
media Bug 1543419 - Fix libdav1d moz.yaml quoting. r=achronop 2019-04-10 15:59:00 +00:00
memory Bug 1542758 - mozjemalloc.cpp should use posix_madvise on Solaris r=glandium 2019-04-09 08:20:48 +00:00
mfbt Backed out 4 changesets (bug 1458385) for nightly updates fail. a=backout 2019-04-10 21:09:46 +03:00
mobile Bug 1543468 - Stop using toolkit netError.css URL on Android. r=JanH 2019-04-10 19:32:20 +00:00
modules Bug 1531228 - Enable the new scroll snap and disable the old scroll snap on nightly. r=botond 2019-04-11 06:22:01 +00:00
mozglue Bug 1542146 - Apply the change with the option StatementMacros from clang-format-8 r=andi 2019-04-05 21:42:17 +00:00
netwerk Bug 1543079 - Use Window and Channel IDs instead of pointers in ContentBlockingAllowListKey, r=Ehsan 2019-04-09 22:11:10 +00:00
nsprpub Bug 1526010, NSPR 4.21 RTM, r=me 2019-03-07 11:16:36 +01:00
other-licenses Backed out 4 changesets (bug 1458385) for nightly updates fail. a=backout 2019-04-10 21:09:46 +03:00
parser Bug 1542996 - Remove duplicate component registration. r=kmag 2019-04-09 18:58:49 +00:00
python Bug 1542042 - Convert arguments to unicode explicitly in |./mach run|. r=nalexander 2019-04-09 23:13:07 +00:00
remote bug 1542198: remote: build tests only on --enable-tests; r=ochameau 2019-04-09 14:45:58 +00:00
security bug 1529044 - use a low-priority queue on a certificate verification thread to import intermediate certificates r=mgoodwin 2019-04-10 21:44:16 +00:00
services Bug 1539784 - ensure the master-password is unlocked before disconnecting from sync. r=eoger 2019-04-10 15:41:28 +00:00
servo Bug 1531228 - Enable the new scroll snap and disable the old scroll snap on nightly. r=botond 2019-04-11 06:22:01 +00:00
startupcache Bug 1536091 - Relax the startup cache test restrictions to account for QuantumBar not loading search-one-offs.js. r=kmag 2019-04-11 07:20:16 +00:00
storage Bug 1543295 - Pass the text length when creating an `nsString` from a SQLite text result. r=mak 2019-04-11 03:19:39 +00:00
taskcluster bug 1541859 - add action task to child tasks' dependencies. r=dustin 2019-04-10 15:29:16 +00:00
testing Bug 1534070 - Factor scroll-padding into the position calculation where nsIPresShell::ScrollContentIntoView() is going to scroll if necessary. r=botond 2019-04-11 06:22:14 +00:00
third_party Backed out 2 changesets (bug 1522931) for breaking macOS build on 10.14. a=backout 2019-04-10 17:10:12 +03:00
toolkit Bug 1534070 - Factor scroll-padding into the position calculation where nsIPresShell::ScrollContentIntoView() is going to scroll if necessary. r=botond 2019-04-11 06:22:14 +00:00
tools Merge autoland to mozilla-central. a=merge 2019-04-11 00:51:52 +03:00
uriloader Bug 1540015 - part 3: Rename Document::GetShell() to Document::GetPresShell() and make it return PresShell* rather than nsIPresShell* r=smaug,emilio 2019-03-29 15:12:47 +00:00
view Bug 1542407 - Make nsIFrame use mozilla::PresShell directly rather than via nsIPresShell r=emilio 2019-04-06 06:02:28 +00:00
widget Merge mozilla-inbound to mozilla-central. a=merge 2019-04-11 00:54:55 +03:00
xpcom Bug 1541970 - Support incontentshell attribute for XUL panel;r=NeilDeakin 2019-04-09 09:41:56 +00:00
xpfe/appshell Bug 1540170 - don't use history for windowless browsers, r=farre 2019-04-01 11:59:40 +01:00
.arcconfig
.clang-format Bug 1542146 - Use the new option StatementMacros from clang-format-8 r=andi 2019-04-05 21:41:57 +00:00
.clang-format-ignore Bug 1533481 - Part 9: Update Gecko to Unicode 12. r=jfkthame! 2019-04-04 12:46:18 +03:00
.cron.yml Bug 1538560 - disable cron job to run mochitest valgrind tasks because they permafail r=gbrown 2019-04-01 15:08:44 +00:00
.eslintignore Merge inbound to mozilla-central. a=merge 2019-04-10 01:09:36 +03:00
.eslintrc.js Bug 1541024 - parser/ automated ESLint no-throw-literal fixes. r=hsivonen 2019-04-05 11:31:01 +00:00
.flake8 Bug 1541086: Remove the embedding code and update the bug components for widget::headless. r=myk r=bdahl 2019-04-02 09:07:54 -07:00
.gdbinit Bug 1486903 - Add "ftl" command to dump frame subtree to .gdbinit. r=Ehsan 2018-08-28 20:20:21 +00:00
.gdbinit_python
.git-blame-ignore-revs No bug - Ignore bug 1016240 in blame/annotate. r=MattN 2019-04-04 14:56:20 -04:00
.gitignore Bug 1500987 - Elevate the new debugger one directory. r=jlast 2019-04-09 13:16:00 -04:00
.hg-annotate-ignore-revs No bug - Ignore bug 1016240 in blame/annotate. r=MattN 2019-04-04 14:56:20 -04:00
.hg-format-source Bug 1511181 - Quick fix for .hg-format-source that has an empty line. r=ehsan, a=aryx 2018-11-30 13:25:44 +02:00
.hgignore Bug 1516337 - Part 1: Dedupe sha2 and related dependencies r=froydnj 2019-04-08 23:17:50 +03:00
.hgtags No bug - Tagging mozilla-central 9421b477d67cfc4c9e03350cd554a9e6acc7f435 with FIREFOX_NIGHTLY_67_END a=release DONTBUILD CLOSED TREE 2019-03-18 10:56:58 +00:00
.lldbinit
.mailmap
.taskcluster.yml Bug 1488313: [taskgraph] Don't notify sherrifs on cron decision task failures on try; r=dustin 2019-03-27 19:38:05 +00:00
.trackerignore Bug 1486468 - Add .trackerignore file to avoid GNOME Tracker indexing mozilla-central files. r=ahal 2018-08-27 16:45:03 +02:00
.yamllint
.ycm_extra_conf.py Bug 1522135 - Make .ycm_extra_conf.py work with python3. r=jgraham 2019-01-24 13:51:28 +01:00
AUTHORS
CLOBBER Bug 1533481 - Part 10: Updating ICU requires a clobber. r=jwalden! 2019-04-04 12:46:32 +03:00
Cargo.lock Merge inbound to mozilla-central. a=merge 2019-04-09 12:55:19 +03:00
Cargo.toml Bug 1529117 - Bump serde and serde_derive to branch from 1.0.88. r=jrmuizel 2019-04-04 15:41:57 +00:00
GNUmakefile
LEGAL
LICENSE
Makefile.in Bug 1537574 - Use mozbuild's backend-out-of-date logic for RecursiveMake; r=firefox-build-system-reviewers,chmanchester 2019-04-10 22:14:27 +00:00
README.txt Bug 1480997 - Remove "Mozilla FTP server" link in README.txt r=mossop 2018-10-23 10:06:29 +00:00
aclocal.m4 Bug 1519603 - Manually inline AC_OUTPUT_SUBDIRS and MOZ_RUN_ALL_SUBCONFIGURES. r=nalexander 2019-01-14 18:37:06 +00:00
build.gradle Bug 1541609 - [geckoview] Enforce packages in API. r=snorp,esawin 2019-04-10 01:50:58 +00:00
client.mk Bug 1498031 - Merge code paths for running configure between Tup and Make based backends. r=firefox-build-system-reviewers,mshal 2018-10-16 22:21:36 +00:00
client.py
configure.in
configure.py Bug 1528241 - Add a trace mode to python configure that logs internal values. r=chmanchester 2019-02-20 07:46:22 +09:00
gradle.properties Bug 1527896 - Increase Gradle heaps to handle large assets. r=nalexander 2019-02-14 18:21:13 +00:00
gradlew
gradlew.bat Bug 1527796 - Part 3. Use gradlew.bat on Windows. r=nalexander 2019-02-26 11:06:12 +09:00
mach
moz.build Bug 1507334 - Add mozconfigs for 3-stage PGO; r=firefox-build-system-reviewers,chmanchester#firefox-build-system-reviewers 2019-01-10 01:34:49 +00:00
moz.configure Bug 1532695 - Include target.gtest.tests.tar.gz in android builds; r=bc 2019-04-08 22:02:45 +00:00
mozilla-config.h.in Bug 1504022 - Map GetExceptionCode to a nop to avoid an error r=bobowen 2018-11-02 13:28:01 -05:00
old-configure.in Bug 1433685 - Remove nsGConfService, r=glandium 2019-04-10 10:18:14 +00:00
package-lock.json Bug 1536589 - Update ESLint and associated modules. r=mossop 2019-04-08 20:06:38 +00:00
package.json Bug 1536589 - Update ESLint and associated modules. r=mossop 2019-04-08 20:06:38 +00:00
settings.gradle Bug 1527796 - Part 5. Add python.exe path of mozilla-build to call mach command from gradle. r=nalexander 2019-03-29 18:11:09 +09: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.]

Nightly development builds can be downloaded from:

    https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central/
            - or -
    https://www.mozilla.org/firefox/channel/desktop/#nightly

Keep in mind that nightly builds, which are used by Mozilla developers for
testing, may be buggy.