mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-05 15:28:39 +09:00
Issue #2721 - Create special case exception for <A>.Click() outside of DOM
This removes the requirement for there to be a non-null PresShell to dispatch `Click()` events on `<A>` elements (only), since the exception to the rule has propagated to the spec. With these changes it should now be possible do create an anchor and `Click()` on it from JS without actually first attaching it to the DOM of the presented document, as abused by scripted downloads in pages (instead of using the A attribute to custom-name downloads).
This commit is contained in:
parent
72a17a5284
commit
37de431ac0
15 changed files with 79 additions and 94 deletions
|
|
@ -199,16 +199,9 @@ HTMLAnchorElement::IsHTMLFocusable(bool aWithMouse,
|
|||
}
|
||||
|
||||
// cannot focus links if there is no link handler
|
||||
nsIDocument* doc = GetComposedDoc();
|
||||
if (doc) {
|
||||
nsIPresShell* presShell = doc->GetShell();
|
||||
if (presShell) {
|
||||
nsPresContext* presContext = presShell->GetPresContext();
|
||||
if (presContext && !presContext->GetLinkHandler()) {
|
||||
*aIsFocusable = false;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if (!OwnerDoc()->LinkHandlingEnabled()) {
|
||||
*aIsFocusable = false;
|
||||
return false;
|
||||
}
|
||||
|
||||
// Links that are in an editable region should never be focusable, even if
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue