This involves changing moveToAnchor to be allowed while the popup is showing. This change allows the buttons within the tab to use the normal algorithm for determining the tooltip position. This also fixes bug 1695900 so that tooltips for items in bookmarks menus also appear offset as well. Only the main tab and bookmarks on the toolbar appear aligned with the button's bottom edge.
Differential Revision: https://phabricator.services.mozilla.com/D115558
There's a pattern of clearing JS things when calling mozilla::DropJSObjects,
but mozilla::DropJSObjects already clears the JS things itself by calling
CycleCollectedJSRuntime::RemoveJSHolder.
Differential Revision: https://phabricator.services.mozilla.com/D115885
This patch also fixes an issue where hidden native items could be activated, and makes the
error message consistent between both implementations in this case.
Differential Revision: https://phabricator.services.mozilla.com/D114503
Similifies use of EventStates and ObjectType/FallbackType enums since most states they represented are no longer valid with the removal of NPAPI plugins. The state machine for (unsupported) plugin elements is now much simpler but still distinguishes between HTML fallbacks, fallbacks leading to a "BROKEN" state (e.g. failing to load the image the element refers to), and fallbacks that would simply lead the element to occupy an empty region. The last type of fallback is behind a pref "layout.use-plugin-fallback" and is disabled by default.
Simplifying the state machine allows us to clean up nsObjectLoadingContent. We also update many of the enums which refered to plugins, which would otherwise get confusing.
Differential Revision: https://phabricator.services.mozilla.com/D107158
Similifies use of EventStates and ObjectType/FallbackType enums since most states they represented are no longer valid with the removal of NPAPI plugins. The state machine for (unsupported) plugin elements is now much simpler but still distinguishes between HTML fallbacks, fallbacks leading to a "BROKEN" state (e.g. failing to load the image the element refers to), and fallbacks that would simply lead the element to occupy an empty region. The last type of fallback is behind a pref "layout.use-plugin-fallback" and is disabled by default.
Simplifying the state machine allows us to clean up nsObjectLoadingContent. We also update many of the enums which refered to plugins, which would otherwise get confusing.
Differential Revision: https://phabricator.services.mozilla.com/D107158
titletip=true is set in nsXULTooltipListener for trees. Ideally the
default TooltipTextProvider would handle `<tree>` and we could remove
the tree-specific logic from nsXULTooltipListener, but while that's not
the case, we don't want to override the behavior and prevent the default
event handling for those.
Differential Revision: https://phabricator.services.mozilla.com/D110109
So Element could decide how focus should be handled if accesskey shouldn't cause
activation, e.g. label element would forward focus to control element.
This could make behavior saner a bit, though there is still something we could
improve, e.g. if the control element doesn't have same accesskey, we are unable
to cycle to the next one in order while pressing same accesskey again.
But this is still better than stuck somewhere if label element is not focusable.
Differential Revision: https://phabricator.services.mozilla.com/D109067
- Add missing include directives and forward declarations.
- Remove some extra include directives.
- Add missing namespace qualifications.
- Move include directives out of namespace in toolkit/xre/GlobalSemaphore.h
Differential Revision: https://phabricator.services.mozilla.com/D98894
This makes the naming more consistent with other functions called
Insert and/or Update. Also, it removes the ambiguity whether
Put expects that an entry already exists or not, in particular because
it differed from nsTHashtable::PutEntry in that regard.
Differential Revision: https://phabricator.services.mozilla.com/D105473
I was playing with this code for bug 1693446 and I had to debug with rr
where the illegal constructors were coming from to figure out what the
right thing to do was. This comment hopefully saves that time to someone
(or even me) in the future.
DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D105683
We always compute the tabindex value, so just return it to the caller
all the time. This allows us to use early-returns which makes the code a
bit easier to follow.
This patch shouldn't change behavior.
Differential Revision: https://phabricator.services.mozilla.com/D100423
When re-creating element prototypes for elements within localized elements we
must set the mIsAtom correctly on the prototype.
Differential Revision: https://phabricator.services.mozilla.com/D97799