diff options
author | athenian200 <athenian200@outlook.com> | 2020-01-16 14:07:04 -0600 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2020-04-14 12:16:31 +0200 |
commit | 563dc95cdbdd94496360f14fc277c4b8fc79bbab (patch) | |
tree | 8c0dd0fb0fc73264d0a513f06497155071c598d1 /layout/generic | |
parent | 7e59ac9036ae2cbb91ff216e50eac75b9588557a (diff) | |
download | UXP-563dc95cdbdd94496360f14fc277c4b8fc79bbab.tar UXP-563dc95cdbdd94496360f14fc277c4b8fc79bbab.tar.gz UXP-563dc95cdbdd94496360f14fc277c4b8fc79bbab.tar.lz UXP-563dc95cdbdd94496360f14fc277c4b8fc79bbab.tar.xz UXP-563dc95cdbdd94496360f14fc277c4b8fc79bbab.zip |
Issue #1356 - Remove -moz-user-input disabled to improve event handling.
Diffstat (limited to 'layout/generic')
-rw-r--r-- | layout/generic/nsFrame.cpp | 13 | ||||
-rw-r--r-- | layout/generic/nsIFrame.h | 5 |
2 files changed, 18 insertions, 0 deletions
diff --git a/layout/generic/nsFrame.cpp b/layout/generic/nsFrame.cpp index bbbb5c332..8d4ea8754 100644 --- a/layout/generic/nsFrame.cpp +++ b/layout/generic/nsFrame.cpp @@ -5557,6 +5557,19 @@ nsFrame::Reflow(nsPresContext* aPresContext, NS_FRAME_SET_TRUNCATION(aStatus, aReflowInput, aDesiredSize); } +bool +nsIFrame::IsContentDisabled() const +{ + // FIXME(emilio): Doing this via CSS means callers must ensure the style is up + // to date, and they don't! + if (StyleUserInterface()->mUserInput == StyleUserInput::None) { + return true; + } + + auto* element = nsGenericHTMLElement::FromContentOrNull(GetContent()); + return element && element->IsDisabled(); +} + nsresult nsFrame::CharacterDataChanged(CharacterDataChangeInfo* aInfo) { diff --git a/layout/generic/nsIFrame.h b/layout/generic/nsIFrame.h index 57f5c460c..93eb95099 100644 --- a/layout/generic/nsIFrame.h +++ b/layout/generic/nsIFrame.h @@ -2436,6 +2436,11 @@ public: nsIWidget* GetNearestWidget(nsPoint& aOffset) const; /** + * Whether the content for this frame is disabled, used for event handling. + */ + bool IsContentDisabled() const; + + /** * Get the "type" of the frame. May return nullptr. * * @see nsGkAtoms |