Commit graph

76 commits

Author SHA1 Message Date
Paul Morris
ea6fd457ff Bug 1545824 - Implement a getElementForAttrInheritance function r=aswan
Differential Revision: https://phabricator.services.mozilla.com/D39210

--HG--
extra : moz-landing-system : lando
2019-07-30 15:11:26 +00:00
Victor Porof
0773795931 Bug 1561435 - Format toolkit/content/, a=automatic-formatting
# ignore-this-changeset

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

--HG--
extra : source : 651d8f947a29f5d80b7e833f7e6b99e2afe8bf9d
2019-07-05 11:14:49 +02:00
Alexander Surkov
61cc7103cf Bug 1544916 - migrate dialog binding to Custom Element r=bgrins,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D30289

--HG--
rename : toolkit/content/widgets/dialog.xml => toolkit/content/widgets/dialog.js
extra : moz-landing-system : lando
2019-06-04 17:28:16 +00:00
Andrew Swan
a745ec6099 Bug 1519577 Convert toolbarbutton to a custom element r=surkov
Differential Revision: https://phabricator.services.mozilla.com/D31941

--HG--
extra : rebase_source : 3709ef713f1a7dc9fbc2d0ac97f16bea757fcd2b
2019-05-20 10:01:02 -07:00
Tim Nguyen
c1f5b7a338 Bug 1521280 - Convert search-textbox to a custom element. r=dao,bgrins
Differential Revision: https://phabricator.services.mozilla.com/D23045

--HG--
rename : toolkit/content/widgets/textbox.xml => toolkit/content/widgets/search-textbox.js
extra : moz-landing-system : lando
2019-05-13 18:12:37 +00:00
Coroiu Cristina
cc280c4be9 Backed out changeset c5798de806e2 (bug 1521280) for crashing when searching about:config for upcoming beta (bug 1551013)
--HG--
extra : rebase_source : 8f936159c23d09bf227ce4f5eb6f2d96d33bbff1
2019-05-13 08:50:28 +03:00
Tim Nguyen
1a57aab68e Bug 1521280 - Convert search-textbox to a custom element. r=dao,bgrins
Differential Revision: https://phabricator.services.mozilla.com/D23045

--HG--
rename : toolkit/content/widgets/textbox.xml => toolkit/content/widgets/search-textbox.js
extra : moz-landing-system : lando
2019-05-10 11:46:49 +00:00
Razvan Maries
444ee13e14 Merge mozilla-inbound to mozilla-central a=merge 2019-04-26 12:46:15 +03:00
Brian Grinstead
4663e6262a Bug 1448213 - Migrate label-control to a Custom Element r=surkov
Differential Revision: https://phabricator.services.mozilla.com/D5686

--HG--
extra : moz-landing-system : lando
2019-04-23 20:16:46 +00:00
Andrew Swan
66e382f5b2 Bug 1538983 Convert button xbl binding to a custom element r=bgrins
As of this change, instances of xul <button> use a custom element.
The button-base xbl binding remains for now, since it is still used
by toolbarbutton, it will be removed soon.

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

--HG--
rename : toolkit/content/widgets/button.xml => toolkit/content/widgets/button.js
extra : rebase_source : 2be8ee3fa9bb43866013f62211d8cb3706dbf1ab
2019-04-15 14:27:32 -07:00
Brian Grinstead
9835cc7787 Bug 1546024 - Clear the _inheritedElements cache on chrome custom elements when re-calling initializeAttributeInheritance r=surkov
Otherwise we can end  up setting the proper attribute on removed children when elements get disconnected
and reconnected.

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

--HG--
extra : moz-landing-system : lando
2019-04-22 13:52:17 +00:00
Andrew Swan
a7ca3ac30d Bug 1545865 Handle inherited attributes overridden by derived element classes r=bgrins
The existing implementation of inherited attributes keeps a data
structure in a property on the class, but derived classes were
unintentionally getting that structure from their parent class,
preventing derived classes from declaring a different set of inherited
attributes.

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

--HG--
extra : moz-landing-system : lando
2019-04-20 16:22:10 +00:00
Brian Grinstead
2787623601 Bug 1545765 - Fix attribute inheritance for empty attribute values r=aswan
This accidentally got dropped in Bug 1528268.

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

--HG--
extra : moz-landing-system : lando
2019-04-19 21:07:40 +00:00
Brian Grinstead
9bda39c108 Bug 1519502 - Convert menu bindings to a Custom Element r=surkov
Differential Revision: https://phabricator.services.mozilla.com/D19593

--HG--
extra : moz-landing-system : lando
2019-04-18 16:41:46 +00:00
Brian Grinstead
7621a8bf3a Bug 1528268 - Make initializeAttributeInheritance and incremental attribute changes do less work r=aswan
This provides a flipped data structure based on the provided inheritedAttributes,
which looks like:

Object<selector, attrs_to_inherit_comma_separated>

To one that looks like:

Object<attr, Array<Array<selector, attr_to_inherit>>

This should improve performance because:

1) We only fetch element at connectedCallback that actually will have attributes inherited.
2) When an attribute changes we can quickly inherit only that one.

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

--HG--
extra : moz-landing-system : lando
2019-04-18 16:41:39 +00:00
Dorel Luca
f5a2c905f4 Backed out 2 changesets (bug 1519502, bug 1528268) for Crashtest failures in toolkit/content/tests/chrome/test_popupincontent.xul. CLOSED TREE
Backed out changeset 904cc7903feb (bug 1519502)
Backed out changeset f8770d7eebd1 (bug 1528268)
2019-04-18 18:26:41 +03:00
Brian Grinstead
d48d388df2 Bug 1519502 - Convert menu bindings to a Custom Element r=surkov
Differential Revision: https://phabricator.services.mozilla.com/D19593

--HG--
extra : moz-landing-system : lando
2019-04-17 15:56:41 +00:00
Brian Grinstead
fffaa7e5a8 Bug 1528268 - Make initializeAttributeInheritance and incremental attribute changes do less work r=aswan
This provides a flipped data structure based on the provided inheritedAttributes,
which looks like:

Object<selector, attrs_to_inherit_comma_separated>

To one that looks like:

Object<attr, Array<Array<selector, attr_to_inherit>>

This should improve performance because:

1) We only fetch element at connectedCallback that actually will have attributes inherited.
2) When an attribute changes we can quickly inherit only that one.

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

--HG--
extra : moz-landing-system : lando
2019-04-17 18:48:46 +00:00
Brian Grinstead
6d157529af Bug 1544924 - Support filtering individual classes with MOZ_INSTRUMENT_CUSTOM_ELEMENTS;r=aswan
For example, you can do MOZ_INSTRUMENT_CUSTOM_ELEMENTS=MozXULElement,Button
to limit output to classes containing those strings in their name

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

--HG--
extra : moz-landing-system : lando
2019-04-17 01:12:41 +00:00
Brian Grinstead
0c7558a0dd Bug 1541516 - Instrument base custom element class and print call information in the console r=aswan
If MOZ_INSTRUMENT_CUSTOM_ELEMENTS is set in the environment, then modify Custom Elements
to wrap each function and property lookup to keep a count and running time. Then print out
tables for each element at startup. Tables can be re-printed with `MozElements.printInstrumentation()`.

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

--HG--
extra : moz-landing-system : lando
2019-04-10 17:34:43 +00:00
Alexander Surkov
e163a0e714 Bug 1542844 - All wizards displays [Done] button from the point where they open on OS X, r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D26734

--HG--
extra : moz-landing-system : lando
2019-04-09 21:16:07 +00:00
Paul Morris
c3a3d09307 Bug 1531870 - [de-xbl] convert popup binding to custom element; r=bgrins
For now, only add the MozMenuPopup base class to MozElements,
and don't define a custom element for it with
`customElements.define`. This is to help avoid conflicts in
de-xbl work. (See the bug for details.)

Includes a function to do 'manual slotting', moving child
elements into place. Dynamically adding, modifying, or
removing child nodes after the element is connected needs
to be handled manually as well.

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

--HG--
rename : toolkit/content/widgets/popup.xml => toolkit/content/widgets/menupopup.js
extra : moz-landing-system : lando
2019-03-30 00:05:08 +00:00
Andrew Swan
745c949fa8 Bug 1535182 Remove BaseElementMixin and MozElementMixin from window global r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D24828

--HG--
extra : moz-landing-system : lando
2019-03-26 21:43:13 +00:00
Alexander Surkov
822a58f809 Bug 1534685 - make all custom elements to use the attribute inheritance base implementation, r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D23541

--HG--
extra : moz-landing-system : lando
2019-03-14 21:44:54 +00:00
Alexander Surkov
ec0c8c08d3 Bug 1495622 - Conver wizardpage binding to Custom Elements, r=paolo 2019-03-06 10:27:25 -05:00
Alexander Surkov
e5f57aa59a Bug 1525101 - Convert autocomplete-rich-result-popup into a Custom Element, r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D20506

--HG--
extra : moz-landing-system : lando
2019-03-05 17:45:57 +00:00
Gijs Kruitbosch
de6d0168b0 Bug 1532071 - call formatAccessKey when inheriting accesskey attributes into labels, r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D22102

--HG--
extra : moz-landing-system : lando
2019-03-05 15:30:00 +00:00
Alexander Surkov
0d30de1b66 Bug 1455433 - migrate xul:checkbox to CE, r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D21457

--HG--
rename : toolkit/content/widgets/checkbox.xml => toolkit/content/widgets/checkbox.js
extra : moz-landing-system : lando
2019-02-28 20:32:50 +00:00
Brian Grinstead
672f93b031 Bug 1528969 - Only remove whitespace-only text nodes in parseXULToFragment r=MattN
It was supposed to be doing this already, but we were instead removing _all_ text
nodes, which led the the "Learn More" link not showing up in popupnotifications

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

--HG--
extra : moz-landing-system : lando
2019-02-19 23:28:30 +00:00
Brian Grinstead
033239db58 Bug 1527680 - Add MozElement inheritedAttributes helper for automatically inheriting attributes based on a map of selectors to attributes r=paolo
This allows elements to skip explicitly declaring `observedAttributes` and then imperatively
calling `inheritAttribute` on the appropriate child nodes. For simple cases this means less
boilerplate and moving this logic into the base class.

This is an opt-in feature, so more complex cases can continue to manually implement inheriting
behavior as before.

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

--HG--
extra : moz-landing-system : lando
2019-02-15 23:10:18 +00:00
Daniel Varga
1e9aa9e1fc Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE
--HG--
rename : browser/components/nsBrowserContentHandler.js => browser/components/BrowserContentHandler.jsm
2019-02-15 03:51:05 +02:00
Brendan Dahl
74c580a4c5 Bug 1527733 - Remove special XUL DOM tree traversal. r=smaug
Move functionality out of XULDocument::AddElementToDocumentPost:
1) Convert all XUL link elements into HTML link elements which have
code to handle when they are added to the DOM.
2) Move handling of the end of a linkset element into nsXULElement's DoneAddingChildren callback.
3) Move document direction reset to where the root element is created.

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

--HG--
extra : moz-landing-system : lando
2019-02-14 10:43:35 +00:00
Alexander Surkov
1649231cef Bug 1527495 - migrate text-link binding to CE, r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D19595

--HG--
rename : toolkit/content/widgets/text.xml => toolkit/content/widgets/text.js
2019-02-12 19:14:40 -05:00
Brian Grinstead
c894dd5369 Bug 1527105 - Convert menucaption to Custom Element r=paolo
Differential Revision: https://phabricator.services.mozilla.com/D19439

--HG--
rename : toolkit/content/widgets/menu.xml => toolkit/content/widgets/menu.js
extra : moz-landing-system : lando
2019-02-12 19:08:25 +00:00
Brian Grinstead
9d224c7b43 Bug 1526826 - Make BaseTextMixin extend BaseControlMixin r=surkov
Differential Revision: https://phabricator.services.mozilla.com/D19316

--HG--
extra : moz-landing-system : lando
2019-02-11 17:33:07 +00:00
Brian Grinstead
04c18529e4 Bug 1487065 - Implement popup-notification as a Custom Element r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D17699

--HG--
rename : toolkit/content/widgets/notification.xml => toolkit/content/widgets/popupnotification.js
extra : moz-landing-system : lando
2019-02-07 22:16:26 +00:00
Alexander Surkov
fccfd070c9 Bug 1519486 - convert autocomplete-richlistitem-insecure-field XBL binding to CE, r=bgrins 2019-01-24 08:40:22 -05:00
Myk Melez
25349d2601 Bug 1518283 - prohibit blank lines at the beginning and end of blocks (eslint padded-blocks) r=mossop,Standard8
Differential Revision: https://phabricator.services.mozilla.com/D17526

--HG--
extra : moz-landing-system : lando
2019-01-30 17:26:25 +00:00
Cosmin Sabou
599a15d354 Merge mozilla-inbound to mozilla-central. a=merge 2019-01-29 12:01:56 +02:00
Brian Grinstead
5bea9f2e3e Bug 1523429 - Skip updating child attributes in MozElement.inheritAttribute if the host attribute hasn't changed r=timdream
Differential Revision: https://phabricator.services.mozilla.com/D17887

--HG--
extra : moz-landing-system : lando
2019-01-28 23:57:24 +00:00
Timothy Guan-tin Chien
0de6e5d4aa Bug 1518932 - Convert menulist to custom element r=paolo
This custom element replaces XBL <content> usage by directly prepend the two needed child nodes when the element is connected.

This is doable because

- There isn't any direct access of child nodes under <menulist>. Everyone seems to access via .menupopup, which is usually the only child.
- We don't need to move the children under <menulist>. If we need to and if the child is a <xbl:children> (which could happen if <menulist> is inside an XBL <content> that just get cloned to the document), the layout will get very confused and crash (see finding in bug 1514926)

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

--HG--
rename : toolkit/content/widgets/menulist.xml => toolkit/content/widgets/menulist.js
extra : moz-landing-system : lando
2019-01-28 18:24:08 +00:00
Timothy Guan-tin Chien
c5b97c4ccd Bug 1518932 - Create BaseControlMixin, allowing BaseControl to inherit other native XULElement classes r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D14925

--HG--
extra : moz-landing-system : lando
2019-01-28 18:24:06 +00:00
Kris Maglione
e930b89c34 Bug 1514594: Part 3 - Change ChromeUtils.import API.
***
Bug 1514594: Part 3a - Change ChromeUtils.import to return an exports object; not pollute global. r=mccr8

This changes the behavior of ChromeUtils.import() to return an exports object,
rather than a module global, in all cases except when `null` is passed as a
second argument, and changes the default behavior not to pollute the global
scope with the module's exports. Thus, the following code written for the old
model:

  ChromeUtils.import("resource://gre/modules/Services.jsm");

is approximately the same as the following, in the new model:

  var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");

Since the two behaviors are mutually incompatible, this patch will land with a
scripted rewrite to update all existing callers to use the new model rather
than the old.
***
Bug 1514594: Part 3b - Mass rewrite all JS code to use the new ChromeUtils.import API. rs=Gijs

This was done using the followng script:

https://bitbucket.org/kmaglione/m-c-rewrites/src/tip/processors/cu-import-exports.jsm
***
Bug 1514594: Part 3c - Update ESLint plugin for ChromeUtils.import API changes. r=Standard8

Differential Revision: https://phabricator.services.mozilla.com/D16747
***
Bug 1514594: Part 3d - Remove/fix hundreds of duplicate imports from sync tests. r=Gijs

Differential Revision: https://phabricator.services.mozilla.com/D16748
***
Bug 1514594: Part 3e - Remove no-op ChromeUtils.import() calls. r=Gijs

Differential Revision: https://phabricator.services.mozilla.com/D16749
***
Bug 1514594: Part 3f.1 - Cleanup various test corner cases after mass rewrite. r=Gijs
***
Bug 1514594: Part 3f.2 - Cleanup various non-test corner cases after mass rewrite. r=Gijs

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

--HG--
extra : rebase_source : 359574ee3064c90f33bf36c2ebe3159a24cc8895
extra : histedit_source : b93c8f42808b1599f9122d7842d2c0b3e656a594%2C64a3a4e3359dc889e2ab2b49461bab9e27fc10a7
2019-01-17 10:18:31 -08:00
Brian Grinstead
f6c12a437b Bug 1441935 - Modifications on top of the generated MozBrowser Custom Element r=mconley
In order to make the history easier to navigate, this changeset includes the
modifications required to make <xul:browser> actually work as a Custom Element,
and switches the app to use it instead of the XBL browser.

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

--HG--
extra : moz-landing-system : lando
2019-01-10 01:45:43 +00:00
Tim Nguyen
34cebfc0b6 Bug 1437641 - Remove numberbox binding and convert usages to input[type=number]. r=bgrins,dao
Differential Revision: https://phabricator.services.mozilla.com/D15882

--HG--
rename : toolkit/themes/shared/numberbox.css => toolkit/themes/shared/numberinput.css
extra : moz-landing-system : lando
2019-01-09 08:51:32 +00:00
Paolo Amadini
a61bfb98fb Bug 1472558 - Convert "richlistbox" to Custom Element. r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D15502

--HG--
rename : toolkit/content/widgets/richlistbox.xml => toolkit/content/widgets/richlistbox.js
extra : rebase_source : 7517e9d0760589a3df426aef4fa1c9c33f5355aa
2018-12-31 07:54:10 +00:00
Neil Deakin
323ddeb5ad Bug 1492326, don't use 'instanceof nsiDOMXUL*' in toolkit and mobile files, r=paolo 2018-12-04 11:33:06 -05:00
Neil Deakin
2ceb209681 Bug 1492326, revert some of bug 1478372, so that callers need to get the custom interface from a custom element without using QueryInterface, r=peterv 2018-12-04 11:33:06 -05:00
Paolo Amadini
9004df8f9b Bug 1499947 - Part 2 - Remove the "progressmeter" element and related tests. r=bgrins,bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D12145

--HG--
extra : rebase_source : a322611933b371e726b25dd4223456a8f761e886
2018-11-20 14:12:33 +00:00
Paolo Amadini
cdb5b4eb19 Bug 1471403 - Part 4 - Convert "notificationbox" to a custom class. r=bgrins
As part of the conversion, support for notificationsHidden and children that are not notifications is also removed.

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

--HG--
rename : toolkit/content/widgets/notification.xml => toolkit/content/widgets/notificationbox.js
extra : rebase_source : 36a5412e1e9a9dc591fd486d1123c1f763a6f173
2018-11-09 14:58:18 +00:00