gecko-dev/dom/xul
Brendan Dahl 934e37ef92 Bug 1486888 - Support XUL broadcasters in non-XUL documents. r=smaug
The majority of the XUL broadcaster logic is moved out of XULDocument and
into a separate class (XULBroadcastManager). The hookup points for when
listeners need to be created and listeners need to be notified is now
handled by the XULElement itself and nsDocument. To avoid any overhead,
the XULBroadcastManager is only ever created when a document uses a
listener.

The new approach does have the disadvantage that broadcasting can now only
work with XULElements, but going forward we'd like to discontinue this
feature and rely on MutationObservers to implement similar things.

One test had to be modified to use XUL elements instead of HTML elements
because of the reason noted above.

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

--HG--
extra : moz-landing-system : lando
2018-10-19 01:22:46 +00:00
..
crashtests Bug 1446961, remove obsolete calls to showPopup and replace usages of the popup box object with the same methods defined on popups, r=paolo 2018-04-27 11:04:36 -04:00
test Bug 1486888 - Support XUL broadcasters in non-XUL documents. r=smaug 2018-10-19 01:22:46 +00:00
XULBroadcastManager.cpp Bug 1486888 - Support XUL broadcasters in non-XUL documents. r=smaug 2018-10-19 01:22:46 +00:00
XULBroadcastManager.h Bug 1486888 - Support XUL broadcasters in non-XUL documents. r=smaug 2018-10-19 01:22:46 +00:00
XULDocument.cpp Bug 1486888 - Support XUL broadcasters in non-XUL documents. r=smaug 2018-10-19 01:22:46 +00:00
XULDocument.h Bug 1486888 - Support XUL broadcasters in non-XUL documents. r=smaug 2018-10-19 01:22:46 +00:00
XULFrameElement.cpp Bug 1479860: Remove unused aCompileEventHandlers argument from BindToTree. r=bz 2018-08-01 10:42:54 +02:00
XULFrameElement.h Bug 1492894 - part 1 - make the node hierarchy consistently constructed with NodeInfo&&; r=mccr8 2018-09-21 16:45:49 -04:00
XULMenuElement.cpp Bug 1494000, use Element::GetFrame in XULMenuElement and XULPopupElement, r=bz 2018-10-18 08:40:10 -04:00
XULMenuElement.h Bug 1492894 - part 1 - make the node hierarchy consistently constructed with NodeInfo&&; r=mccr8 2018-09-21 16:45:49 -04:00
XULPopupElement.cpp Bug 1494000, use Element::GetFrame in XULMenuElement and XULPopupElement, r=bz 2018-10-18 08:40:10 -04:00
XULPopupElement.h Bug 1461798 - Migrate <tooltip> to a C++ implementation. r=smaug 2018-10-03 20:42:19 +00:00
XULScrollElement.cpp Bug 1454358, removes unneccessary implementation of ScrollBoxObject rr?enndeakin+6102 r=bz,enndeakin+6102 2018-06-25 10:11:31 -07:00
XULScrollElement.h Bug 1492894 - part 1 - make the node hierarchy consistently constructed with NodeInfo&&; r=mccr8 2018-09-21 16:45:49 -04:00
XULTextElement.cpp Bug 1494230 - replace #text-base binding by webidl control, r=smaug 2018-10-01 11:37:39 +08:00
XULTextElement.h Bug 1494529 - kill #text-label binding, r=smaug 2018-10-02 10:15:51 +08:00
XULTooltipElement.cpp Bug 1497601 - Use a xul:description instead of a xul:label for tooltips;r=smaug 2018-10-16 13:54:07 +00:00
XULTooltipElement.h Bug 1461798 - Migrate <tooltip> to a C++ implementation. r=smaug 2018-10-03 20:42:19 +00:00
moz.build Bug 1486888 - Support XUL broadcasters in non-XUL documents. r=smaug 2018-10-19 01:22:46 +00:00
nsIController.idl Bug 1491605 - Remove nsIControllerCommandGroup because it is dead code; r=baku 2018-09-17 09:54:04 -04:00
nsIControllers.idl
nsXULCommandDispatcher.cpp Bug 1481645 - Remove some redundant uses of do_QueryInterface. r=bzbarsky 2018-08-13 09:05:19 +00:00
nsXULCommandDispatcher.h Bug 1455676 part 14. Remove most use of nsIDOMNode in dom/. r=qdot 2018-05-29 22:58:49 -04:00
nsXULContentSink.cpp Bug 1493210 - Remove XUL forward references. r=bzbarsky 2018-09-24 16:43:42 +00:00
nsXULContentSink.h Bug 1453795 - XPToolkit - Initialize member fields in classes/ structures. r=jvarga 2018-06-15 14:12:46 +03:00
nsXULContentUtils.cpp Bug 1481286 - Use a custom element to add/remove command updater. r=bz 2018-08-08 09:02:03 -07:00
nsXULContentUtils.h Bug 1481286 - Use a custom element to add/remove command updater. r=bz 2018-08-08 09:02:03 -07:00
nsXULControllers.cpp Bug 1491387 - Remove NS_NewXULControllers(); r=baku 2018-09-17 09:52:18 -04:00
nsXULControllers.h Bug 1491387 - Remove NS_NewXULControllers(); r=baku 2018-09-17 09:52:18 -04:00
nsXULElement.cpp Bug 1486888 - Support XUL broadcasters in non-XUL documents. r=smaug 2018-10-19 01:22:46 +00:00
nsXULElement.h Bug 1486888 - Support XUL broadcasters in non-XUL documents. r=smaug 2018-10-19 01:22:46 +00:00
nsXULPopupListener.cpp Bug 1483090 - Rename StyleUserInterface to StyleUI. r=emilio 2018-08-14 08:37:37 +00:00
nsXULPopupListener.h Bug 1464519. Remove some dead code in nsXULPopupListener::HandleEvent. r=felipe 2018-05-26 00:23:04 -04:00
nsXULPrototypeCache.cpp Bug 1476928 - Remove nsIURI.CloneIgnoringRef and nsIURI.CloneWithNewRef r=JuniorHsu 2018-07-23 11:28:47 +00:00
nsXULPrototypeCache.h
nsXULPrototypeDocument.cpp Bug 1469769 - Part 6: Replace non-failing NS_NOTREACHED with MOZ_ASSERT_UNREACHABLE. r=froydnj 2018-06-17 22:43:11 -07:00
nsXULPrototypeDocument.h Bug 1450753 - Remove XUL style overlays. r=Nika 2018-06-06 15:15:25 -07:00
nsXULSortService.cpp Bug 1489690, part 4 - Fix some misc. issues with the XUL sort service r=bzbarsky 2018-09-13 18:37:50 +00:00
nsXULSortService.h Bug 1489690, part 3 - De-COM the XUL sort service r=bzbarsky 2018-09-13 18:37:48 +00:00