Commit Graph

193 Commits

Author SHA1 Message Date
Hiroyuki Ikezoe
6a17dc5067 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
2019-04-11 06:22:14 +00:00
Matthew Noorenberghe
e24ba068b6 Bug 1538952 - Don't automatically open the password autocomplete popup when we only have the footer to show. r=jaws,mak
Normally autocomplete results are cached based upon the search string but to get the desired behaviour we want two different sets of results for the same search string depending on how the autocomplete search was started:
a) Via automatically focusing a password field.
b) Every other method of starting an autocomplete search.

In order to not have cached results used, the result code for case (a) [an empty result] will be `RESULT_FAILURE` and I've updated the autocomplete code to not re-use an error result.

In the coming months we may be rewriting our content autocomplete code but that would be too risky to uplift to 67 so for now I'm tracking when satchel automatically opens the popup upon focus and then using that state in the autocomplete result creation code to know whether to include the footer.

Differential Revision: https://phabricator.services.mozilla.com/D25173
2019-03-30 04:20:20 +00:00
prathiksha
5e3dc75527 Bug 1526522 - Provide visual effects on password field autocomplete. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D20745
2019-03-19 16:57:18 +00:00
Matthew Noorenberghe
25b014fbfa Bug 1534896 - Don't close the login autocomplete popup when the search string becomes empty. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D23622
2019-03-15 20:57:02 +00:00
Jared Wein
e7a8e99151 Bug 1330561 - Check if a relevant field is already focused when attaching autocomplete. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D21267
2019-02-26 15:43:31 -05:00
Alexander Surkov
3b919522d1 Bug 1525101 - adjust nsIFormFillController to make custom elements popup working, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D20505
2019-02-25 20:02:35 +00:00
Alexander Surkov
3ad0c4b140 Bug 1525101 - adjust nsIAutoCompletePopup to make custom element popups working, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D20504
2019-02-25 20:02:17 +00:00
Kris Maglione
a10656a5c8 Bug 1524687: Part 8 - Convert remaining toolkit modules to static registration. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D18403
2019-01-24 16:34:52 -08:00
Csoregi Natalia
ddfb8b53b5 Backed out 79 changesets (bug 1524687, bug 1524688) for crashes on mozilla::dom::ScreenOrientation::ScreenOrientation(nsPIDOMWindowInner *,nsScreen *). CLOSED TREE
Backed out changeset 68a001a42406 (bug 1524687)
Backed out changeset 328de611bcd3 (bug 1524688)
Backed out changeset 68cffca6927a (bug 1524687)
Backed out changeset 81dc12cc9257 (bug 1524688)
Backed out changeset c7c49f64048f (bug 1524688)
Backed out changeset fb23a0271da0 (bug 1524688)
Backed out changeset 0c1d1248e59e (bug 1524688)
Backed out changeset 9e9ec7de4160 (bug 1524688)
Backed out changeset de0b9993bd5d (bug 1524688)
Backed out changeset 92877cf4fe33 (bug 1524688)
Backed out changeset b4938f2ff8fd (bug 1524688)
Backed out changeset 230d2feaf941 (bug 1524688)
Backed out changeset 6c63bc240972 (bug 1524688)
Backed out changeset 0ad5465eace1 (bug 1524688)
Backed out changeset 1e75ce91029b (bug 1524688)
Backed out changeset 34a978503b1d (bug 1524688)
Backed out changeset 183602e8a30b (bug 1524688)
Backed out changeset 12a9135dc005 (bug 1524688)
Backed out changeset 978ef5dac9db (bug 1524688)
Backed out changeset 28105bf7bf6a (bug 1524688)
Backed out changeset a9fb74beaf2b (bug 1524688)
Backed out changeset fe106b369a72 (bug 1524688)
Backed out changeset e657e77d4271 (bug 1524688)
Backed out changeset 09f626870ad0 (bug 1524688)
Backed out changeset fe9b6695212e (bug 1524688)
Backed out changeset 995ea188bc31 (bug 1524688)
Backed out changeset 01c4d3edb1b0 (bug 1524688)
Backed out changeset 1bb7dfbb9f48 (bug 1524688)
Backed out changeset 56c61e0a1f45 (bug 1524688)
Backed out changeset c819943ff466 (bug 1524688)
Backed out changeset a1dd5cec066e (bug 1524688)
Backed out changeset 517838ee0c3c (bug 1524688)
Backed out changeset f509a5759fdf (bug 1524688)
Backed out changeset 56f5c8f0d708 (bug 1524688)
Backed out changeset 5746311ef859 (bug 1524688)
Backed out changeset df02f7d25212 (bug 1524688)
Backed out changeset c9846136d105 (bug 1524688)
Backed out changeset 2bd48db9cd0f (bug 1524688)
Backed out changeset ff120b4eeb79 (bug 1524688)
Backed out changeset fe583e7aae8d (bug 1524688)
Backed out changeset 18f156d6355a (bug 1524688)
Backed out changeset f4eaebbe2e0f (bug 1524688)
Backed out changeset bf6b18e23f69 (bug 1524688)
Backed out changeset dd89eb7e9b0d (bug 1524688)
Backed out changeset 4cbbb367ba0b (bug 1524688)
Backed out changeset 4ed0cf6be580 (bug 1524688)
Backed out changeset d8efb5ed62b1 (bug 1524688)
Backed out changeset ea347d57d73a (bug 1524688)
Backed out changeset 911689ef9f33 (bug 1524688)
Backed out changeset 28670fdc418d (bug 1524688)
Backed out changeset 38e1e42a0fb0 (bug 1524688)
Backed out changeset 35a5f031dd1e (bug 1524688)
Backed out changeset b586d55d76d5 (bug 1524688)
Backed out changeset 6dcacead1746 (bug 1524688)
Backed out changeset 9895239d8ac6 (bug 1524688)
Backed out changeset 25f982fd53bd (bug 1524688)
Backed out changeset 4fb0f0a59fe2 (bug 1524688)
Backed out changeset fdc6c4ed241a (bug 1524688)
Backed out changeset 5ce5986068f0 (bug 1524688)
Backed out changeset ab64ed7388ae (bug 1524688)
Backed out changeset 56607c5a301a (bug 1524688)
Backed out changeset 6b3684e7d8f9 (bug 1524688)
Backed out changeset ee28258a5724 (bug 1524688)
Backed out changeset 9201a7ea3c54 (bug 1524688)
Backed out changeset d5dca413e2da (bug 1524688)
Backed out changeset 68eb174a337b (bug 1524688)
Backed out changeset 625f71135038 (bug 1524687)
Backed out changeset 46e13c453538 (bug 1524687)
Backed out changeset 614be688767f (bug 1524687)
Backed out changeset 9c24919ac5c2 (bug 1524687)
Backed out changeset b9862758b98c (bug 1524687)
Backed out changeset 92d9e927deec (bug 1524687)
Backed out changeset f4ee175bc5bd (bug 1524687)
Backed out changeset 191afe83da2e (bug 1524687)
Backed out changeset c58caf41bb94 (bug 1524687)
Backed out changeset df95a56dae04 (bug 1524687)
Backed out changeset 10c69df4444d (bug 1524687)
Backed out changeset 219b84a58f50 (bug 1524687)
Backed out changeset e96e61bd282f (bug 1524687)
2019-02-14 11:50:23 +02:00
Kris Maglione
f001a35eb9 Bug 1524687: Part 8 - Convert remaining toolkit modules to static registration. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D18403
2019-01-24 16:34:52 -08:00
garvitdelhi
cdc6f539cb Bug 1519185: Remove AttributeWillChange aNewValue parameter r=emilio,bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D17073
2019-01-29 17:59:38 +01:00
Cosmin Sabou
ef6c5d87ab Backed out 2 changesets (bug 1519185) build bustages on nsMenuGroupOwnerX.mm. CLOSED TREE
Backed out changeset e1de5282e21a (bug 1519185)
Backed out changeset 00d8afb01890 (bug 1519185)
2019-01-29 18:22:46 +02:00
garvitdelhi
790b1c35a4 Bug 1519185: Remove AttributeWillChange aNewValue parameter r=emilio,bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D17073
2019-01-29 15:27:02 +00:00
Emilio Cobos Álvarez
d4977dddf9 Bug 1489440 - Fix nsFormFillController in presence of Shadow DOM. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D17121
2019-01-21 14:29:16 +00:00
Emilio Cobos Álvarez
dc336a73ba Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug
Summary: Really sorry for the size of the patch. It's mostly automatic
s/nsIDocument/Document/ but I had to fix up in a bunch of places manually to
add the right namespacing and such.

Overall it's not a very interesting patch I think.

nsDocument.cpp turns into Document.cpp, nsIDocument.h into Document.h and
nsIDocumentInlines.h into DocumentInlines.h.

I also changed a bunch of nsCOMPtr usage to RefPtr, but not all of it.

While fixing up some of the bits I also removed some unneeded OwnerDoc() null
checks and such, but I didn't do anything riskier than that.
2019-01-03 17:48:33 +01:00
Sylvestre Ledru
e5a134f73a Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset
2018-11-30 11:46:48 +01:00
Andrew McCreight
05b70f0bb6 Bug 1493737 - Fix many trivial calls to do_QueryInterface r=smaug
If class A is derived from class B, then an instance of class A can be
converted to B via a static cast, so a slower QI is not needed.

Differential Revision: https://phabricator.services.mozilla.com/D6861
2018-10-01 21:38:01 +00:00
Marco Bonardo
7abd9bf710 Bug 1388123 - Make autocomplete handle Enter on keydown. r=MattN
Some pages, like the Google login form, submit information on keydown, that
causes us to not autocomplete, because we handle keypress instead.
The patch changes autocomplete to happen on keydown.
Unfortunately formautofill also uses keydown and tries to access popup data too
late, thus it needs some hacks to work properly.
In general the formautofill code has too many indirections due to e10s, and that
makes the fix more fragile than we'd want. Ideally content autocomplete should
have its own codebase, rather than sharing the same controller as chrome code.

MozReview-Commit-ID: oAyASmDFm1
2018-06-22 12:37:09 +02:00
Jeff Gilbert
70a22b2878 Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot
MozReview-Commit-ID: JtTcLL5OPF0
2018-06-26 17:05:01 -07:00
Boris Zbarsky
a0e4948ccd Bug 1465875 part 5. Eliminate nsIDOMNSEditableElement. r=qdot 2018-06-01 22:35:23 -04:00
Boris Zbarsky
da0b0353d7 Bug 1465875 part 3. Eliminate C++ use of nsIDOMNSEditableElement. r=qdot 2018-06-01 22:35:22 -04:00
Adrian Wielgosik
929be0f567 Bug 1418078 - Convert XPIDL, C++ users of nsIDOMHTMLInputElement. r=bz
MozReview-Commit-ID: 9K5wL93cZ4j
2018-04-18 22:35:09 +02:00
Boris Zbarsky
4038e1d23f Bug 1455674 part 17. Remove use of nsIDOMElement in non-dom non-JS code. r=qdot 2018-04-26 23:37:34 -04:00
Boris Zbarsky
6fb00d932f Bug 1457155. Rename various focus manager variables to make it clearer that they're Elements. r=mccr8 2018-04-26 15:28:31 -04:00
shindli
55275cebc3 Backed out 2 changesets (bug 1457155, bug 1457156) for B failures in builds/worker/workspace/build/src/dom/html/HTMLObjectElement.cpp on a CLOSED TREE
Backed out changeset 8b2a6b54336c (bug 1457155)
Backed out changeset 4e267d999797 (bug 1457156)
2018-04-27 01:34:37 +03:00
Boris Zbarsky
6764622e9f Bug 1457155. Rename various focus manager variables to make it clearer that they're Elements. r=mccr8 2018-04-26 15:28:31 -04:00
Boris Zbarsky
00c784322e Bug 1455052 part 4. Stop using nsIDOMEvent in xpidl interfaces. r=masayuki
MozReview-Commit-ID: GIs8DVfduKe
2018-04-20 12:53:17 -04:00
Boris Zbarsky
ced355935b Bug 1455055 part 7. Clean up remaining HandleEvent implementations. r=masayuki
MozReview-Commit-ID: LezJYKK74H5
2018-04-20 00:49:30 -04:00
Boris Zbarsky
65759d684b Bug 1455055 part 1. Convert nsIDOMEventListener to taking an Event, not an nsIDOMEvent. r=masayuki
This does no cleanup other than what's needed to compile.  Cleanup coming up in
later patches.

MozReview-Commit-ID: 3sOnkj71n09
2018-04-20 00:49:29 -04:00
Boris Zbarsky
d54406240d Bug 1449631 part 6. Remove nsIDOMEventTarget::DispatchEvent. r=smaug
MozReview-Commit-ID: 8YMgmMwZkAL
2018-04-05 13:42:41 -04:00
Boris Zbarsky
152cd3ba6e Bug 1447098 part 1. Rename FromContent on various DOM classes to FromNode. r=mystor
MozReview-Commit-ID: 202nkbmkwfR
2018-03-21 17:39:04 -04:00
Boris Zbarsky
3352976d14 Bug 1446711 part 5. Get rid of nsIDOMMouseEvent::GetButton. r=qdot
MozReview-Commit-ID: AZWzObh01uI
2018-03-20 00:16:06 -04:00
Emilio Cobos Álvarez
0ff849122a Bug 1442207: Remove unneeded arguments to nsIMutationObserver. r=smaug
aDocument is always content->OwnerDoc().
aContainer is always content->GetParent().

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

MozReview-Commit-ID: 4xwPCOnhyIL
2018-03-01 22:45:17 +01:00
Emilio Cobos Álvarez
7a79ccba52 Bug 1441547: Make character data change notifications use a const reference for the info parameter. r=smaug
It's not intended to be mutated.

MozReview-Commit-ID: 5nkD1YkidlV
2018-02-27 15:30:27 +01:00
Adrian Wielgosik
b3471f9af4 Bug 1440741 - Remove all members from nsIDOMHTMLFormElement. r=qdot
MozReview-Commit-ID: 2UcUy4MkVsM
2018-02-23 19:28:08 +01:00
Masayuki Nakano
46555c3338 Bug 1434837 - Make autocomplete and satchel listen to keypress event at the system event group r=mak
The autocomplete module listens to keypress event for both printable keys and
non-printable keys a lot.  However, we'll stop dispatching keypress event for
non-printable keys in the default event group of web content.  So, autocomplete
should listen to keypress events at the system event group.

Note that it's difficult to change keypress event listeners to keydown event
listeners because if we stop keypress events at preceding keydown event in
autocomplete or satchel module, some other modules fail to handle keydown or
keypress event before autocomplete and it's not easy to investigate which
module's which keypress event listener should be changed to keydown event
listener.  Therefore, this patch doesn't do it at least for now.

MozReview-Commit-ID: 7e3aklmKrXu
2018-02-08 22:42:29 +09:00
Boris Zbarsky
d81bb35cf8 Bug 1436508 part 11. Remove the use of the nsIDOMKeyEvent::DOM_VK* constants in C++. r=masayuki
MozReview-Commit-ID: Honw0NrVMuV
2018-02-09 11:17:09 -05:00
Boris Zbarsky
5a2494fba7 Bug 1436508 part 7. Remove nsIDOMKeyEvent usage from formfill and spellcheck. r=masayuki
The various event header changes are to avoid forcing random places to include nsGlobalWindowInner.h

MozReview-Commit-ID: 4THIjj6kIXv
2018-02-09 11:17:09 -05:00
Josh Matthews
d169301c59 Bug 1436743 - Dispatch events via the docgroup rather than the tabgroup when possible. r=mystor 2018-02-08 15:54:00 -05:00
Paolo Amadini
aa9592d486 Bug 1427364 - Remove showCommentColumn and showImageColumn. r=mak
MozReview-Commit-ID: 8RNVaLvZkrY
2018-01-10 15:22:23 +00:00
Boris Zbarsky
b46cdaa78d Bug 1434318 part 13. Remove nsIDOMDocument::CreateEvent. r=mystor
MozReview-Commit-ID: EaUjTLeaQ0n
2018-01-31 15:18:11 -05:00
Boris Zbarsky
95a5e42c52 Bug 1434318 part 2. Stop using nsIContentViewer::GetDOMDocument in C++. r=mystor
MozReview-Commit-ID: FoMoVgCngGR
2018-01-31 15:18:09 -05:00
Boris Zbarsky
e924590fac Bug 1418085 part 3. Stop using nsIDOMHTMLElement in form fill. r=mystor
MozReview-Commit-ID: Ax7RUZQCosr
2018-01-30 00:25:36 -05:00
Boris Zbarsky
2e39082c0d Bug 1432186 part 16. Remove nsIDOMNode's ownerDocument attribute. r=mccr8
MozReview-Commit-ID: JqfAFxPBz41
2018-01-29 23:10:52 -05:00
DimiL
8b6d0c4a38 Bug 1407879 - Check password field url against the local whitelist. r=francois
MozReview-Commit-ID: 1OqpeWeU1s1
2017-12-19 14:16:23 +08:00
DimiL
ea3c40a569 Bug 1425625 - Fix getting reputation service with wrong interface name. r=francois
Fix get service with wrong interface name and a double init issue.

MozReview-Commit-ID: BA0wex06eWb
2017-12-19 09:46:28 +08:00
DimiL
cb870a0cdd Bug 1407878 - P1. Check URLs against the login reputation service when a password field is focused. r=francois 2017-12-14 10:11:45 +08:00
Sean Lee
66f562ece2 Bug 1398101 - Allow the FormAutofill fields with autocomplete="off" to proceed startSearch. r=MattN
MozReview-Commit-ID: 6pZUPY1Fray
2017-09-11 12:11:12 +08:00
Nicholas Nethercote
7dbfdaf890 Bug 1400460 - Rename nsIAtom as nsAtom. r=hiro.
(Path is actually r=froydnj.)

Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.

MozReview-Commit-ID: 91U22X2NydP
2017-10-03 09:05:19 +11:00
Catalin Badea
fc6ab5f0ea Bug 651120 - Remove index argument from content removed/appended/inserted notifications. r=peterv 2017-10-03 11:09:08 +01:00