Commit Graph

393 Commits

Author SHA1 Message Date
Brian Grinstead
a702aa90f1 Bug 1556539 - Move rules unneeded in content from minimal-xul.css to xul.css r=NeilDeakin
Differential Revision: https://phabricator.services.mozilla.com/D33550

--HG--
extra : moz-landing-system : lando
2019-06-07 13:49:19 +00: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
Gijs Kruitbosch
3c6894d020 Bug 1543508 - revert will-change additions now that layers no longer cause compositor bugs, r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D33165

--HG--
extra : moz-landing-system : lando
2019-06-03 20:10:44 +00:00
Alexander Surkov
33b1abfc3f Bug 1512432 - convert richlistitem binding to Custom Element, r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D32474

--HG--
extra : moz-landing-system : lando
2019-05-30 14:12:47 +00:00
Alexander Surkov
543e2caf1e Bug 1519514 - convert tab binding to a Custom Element, r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D26600

--HG--
extra : source : 2cd983857de6c73d677c161faf1aaa67a4c3f500
2019-05-28 22:00:16 +00:00
Cosmin Sabou
fa7207a14d Backed out 4 changesets (bug 1519514) for causing several browser chrome failures. CLOSED TREE
Backed out changeset 485c2c76fab6 (bug 1519514)
Backed out changeset 8488d800a785 (bug 1519514)
Backed out changeset 858b9456eb3c (bug 1519514)
Backed out changeset 2cd983857de6 (bug 1519514)
2019-05-29 11:01:47 +03:00
Alexander Surkov
9a4862fe5e Bug 1519514 - convert tab binding to a Custom Element, r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D26600

--HG--
extra : moz-landing-system : lando
2019-05-28 22:00: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
Brian Grinstead
787d9413a8 Bug 1500626 - Convert <menuitem> bindings to a Custom Element r=surkov
Differential Revision: https://phabricator.services.mozilla.com/D9322

--HG--
extra : moz-landing-system : lando
2019-05-02 19:28:18 +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
Emilio Cobos Álvarez
b025fc9258 Bug 1546542 - Add a pref to be able to enable arrowpanel animations on Linux. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D28585

--HG--
extra : moz-landing-system : lando
2019-04-24 09:56:38 +00:00
Emilio Cobos Álvarez
1ccf57f63f Bug 1470880 - Stop relying on [side] in arrowpanel selectors in order to remove last usage of xbl resources. r=bgrins
The reason why this fixes it is a bit subtle, let me try to explain.

XBL has this mechanism where all attributes in the binding `<content>` element
get auto-propagated to the bound element (the `<panel>` in this case).

This doesn't seem to be a very used feature looking at:

https://searchfox.org/mozilla-central/search?q=%3Ccontent&case=false&regexp=false&path=xml

The panel binding uses it to add the `side` attribute:

https://searchfox.org/mozilla-central/rev/d80f0a570736dce76a2eb184fb65517462089e8a/toolkit/content/widgets/popup.xml#264

The key here is that this attribute addition is silent (`aNotify=false`):

https://searchfox.org/mozilla-central/rev/d80f0a570736dce76a2eb184fb65517462089e8a/dom/xbl/nsXBLBinding.cpp#341

This means that the presence of this attribute is not supposed to change the
rendering of the page. It'd also be unsafe to notify at the point at which we
create XBL bindings.

So the way this happens is:

  * We compute the initial style of the `<panel>` element (which doesn't have a
    `side` attribute, and thus doesn't match the rules, and has a computed
    opacity of 1).
  * The XBL service _silently_ sets the `side` attribute. This should cause a
    style change, but it doesn't since it's silent, so we remain with the
    opacity of 1.
  * We open the popup, and the XBL binding listens for the `popupshowing` event
    and adds the `animate` attribute. The style system notices, and eventually
    we compute the new style. Issue is, it has again an opacity of 1, so we
    don't fire the transition.

Same with transform and such of course.

So far so good, but then, why does it work if there's a `<resources>` element
with an empty stylesheet? Fun that you ask!

We explicitly re-resolve the style of the element if there are any stylesheets:

https://searchfox.org/mozilla-central/rev/d80f0a570736dce76a2eb184fb65517462089e8a/dom/xbl/nsXBLService.cpp#551

And thus grab the correct initial opacity of zero, and trigger the transition.

Given arrow panels always have a `side` attribute (and same for the bookmarks
thing), making their style not depend on the silent attribute additions from
`<content>` fixes the bug.

We could fix the bug with an alternative patch (re-resolving style if there's a
`<content>` element with attributes in the binding). This wouldn't be completely
sound anyway in presence of combinators, and given that it'd remain being
unsound anyway, we should probably just remove that feature.

Also, the simplification of the stylesheets seems worth it anyway.

I'll follow-up removing the `<resources>` implementation, and we should probably
investigate removing the `<content>` attribute propagation, since it's the
really unsound thing here.

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

--HG--
extra : moz-landing-system : lando
2019-04-24 09:29:48 +00:00
Andrew Swan
060462cafd Bug 1546541 Remove no-op toolbarbutton menu bindings r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D28584

--HG--
extra : moz-landing-system : lando
2019-04-24 00:10:42 +00:00
Bogdan Tara
6647b813f2 Backed out changeset 9509ae2baf1c (bug 1470880) for components/customizableui/test/browser* failures CLOSED TREE 2019-04-23 03:28:13 +03:00
Emilio Cobos Álvarez
e4f84a0b9d Bug 1470880 - Simplify arrowpanel selectors in order to remove last usage of xbl resources. r=bgrins
The reason why this fixes it is a bit subtle, let me try to explain.

XBL has this mechanism where all attributes in the binding `<content>` element
get auto-propagated to the bound element (the `<panel>` in this case).

This doesn't seem to be a very used feature looking at:

https://searchfox.org/mozilla-central/search?q=%3Ccontent&case=false&regexp=false&path=xml

The panel binding uses it to add the `side` attribute:

https://searchfox.org/mozilla-central/rev/d80f0a570736dce76a2eb184fb65517462089e8a/toolkit/content/widgets/popup.xml#264

The key here is that this attribute addition is silent (`aNotify=false`):

https://searchfox.org/mozilla-central/rev/d80f0a570736dce76a2eb184fb65517462089e8a/dom/xbl/nsXBLBinding.cpp#341

This means that the presence of this attribute is not supposed to change the
rendering of the page. It'd also be unsafe to notify at the point at which we
create XBL bindings.

So the way this happens is:

  * We compute the initial style of the `<panel>` element (which doesn't have a
    `side` attribute, and thus doesn't match the rules, and has a computed
    opacity of 1).
  * The XBL service _silently_ sets the `side` attribute. This should cause a
    style change, but it doesn't since it's silent, so we remain with the
    opacity of 1.
  * We open the popup, and the XBL binding listens for the `popupshowing` event
    and adds the `animate` attribute. The style system notices, and eventually
    we compute the new style. Issue is, it has again an opacity of 1, so we
    don't fire the transition.

Same with transform and such of course.

So far so good, but then, why does it work if there's a `<resources>` element
with an empty stylesheet? Fun that you ask!

We explicitly re-resolve the style of the element if there are any stylesheets:

https://searchfox.org/mozilla-central/rev/d80f0a570736dce76a2eb184fb65517462089e8a/dom/xbl/nsXBLService.cpp#551

And thus grab the correct initial opacity of zero, and trigger the transition.

Given arrow panels always have a `side` attribute (and same for the bookmarks
thing), making their style not depend on the silent attribute additions from
`<content>` fixes the bug.

We could fix the bug with an alternative patch (re-resolving style if there's a
`<content>` element with attributes in the binding). This wouldn't be completely
sound anyway in presence of combinators, and given that it'd remain being
unsound anyway, we should probably just remove that feature.

Also, the simplification of the stylesheets seems worth it anyway.

I'll follow-up removing the `<resources>` implementation, and we should probably
investigate removing the `<content>` attribute propagation, since it's the
really unsound thing here.

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

--HG--
extra : moz-landing-system : lando
2019-04-22 21:41:29 +00:00
Andrew Swan
24c3452da6 Bug 1538983 Rework highlightable buttons r=jaws
Our standard <button> binding has been carrying around an extra <label>
just to support search highlighting in about:preferences.  This patch
removes that overhead by moving the tweaks that about:preferences needs
into a custom element used only within about:preferences.

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

--HG--
extra : rebase_source : f7fe120f29630c76a1af77ddf16a422d3c946c58
2019-04-19 14:08:33 -07: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
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
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
dd5a4c95c6 Bug 1495861 - Convert <radio> to a Custom Element r=surkov
Differential Revision: https://phabricator.services.mozilla.com/D8121

--HG--
extra : moz-landing-system : lando
2019-04-05 21:16:24 +00:00
Alexander Surkov
7d23a96f82 Bug 1495357 - convert wizard-buttons binding to a Custom Element, r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D23392

--HG--
extra : moz-landing-system : lando
2019-04-04 14:14:52 +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
Trushita
e838288317 Bug 1496193: Remove unused datepicker[type=grid] selector r=bgrins
Removed unused datepicker[type=grid] selector

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

--HG--
extra : moz-landing-system : lando
2019-03-25 16:53:21 +00:00
Alexander Surkov
095a1cda92 Bug 1494846 - kill wizard-header binding, r=paolo
Differential Revision: https://phabricator.services.mozilla.com/D23391

--HG--
extra : moz-landing-system : lando
2019-03-17 19:36:03 +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
Tim Nguyen
fa021187df Bug 1513343 - Remove textarea binding and replace usages with html:textarea. r=bgrins,dao
Differential Revision: https://phabricator.services.mozilla.com/D15001

--HG--
extra : moz-landing-system : lando
2019-03-05 11:41:42 +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
Victor Porof
4622859c92 Bug 1523957 - Convert trees to custom elements, r=bgrins, mak, standard8, MattN
***
Bug 1523957 - Part 0: Whitespace changes in tree.js, r=bgrins
***
Bug 1523957 - Part 1.1: Naively convert tree to a custom element, r=bgrins
***
Bug 1523957 - Part 1.2: Properly mixin BaseControl and extend XULTreeElement, r=bgrins
***
Bug 1523957 - Part 1.3: Use Shadow DOM for slotting children, r=bgrins
***
Bug 1523957 - Part 1.4: Properly handle key events in combination with shift modifiers, r=bgrins
***
Bug 1523957 - Part 1.5: Lint for the lint gods in tree.js, r=bgrins, standard8
***
Bug 1523957 - Part 2.1: Naively convert places-tree to a custom element, preserving history, r=bgrins
***
Bug 1523957 - Part 2.2: Lint for the lint gods in places-tree.js, r=bgrins
***
Bug 1523957 - Part 2.3: Fix browser_passwordmgr_editing.js, r=MattN
***
Bug 1523957 - Part 2.4: Fix browser_bookmarksProperties.js, r=bgrins
***
Bug 1523957 - Part 2.5: Make the edit bookmark tree lazily constructed so there aren't any trees left in the browser window markup, r=bgrins
***
Bug 1523957 - Part 2.6: Add eslint globals to places-tree.js, r=bgrins, standard8

--HG--
rename : browser/components/places/content/tree.xml => browser/components/places/content/places-tree.js
2019-02-21 15:39:53 +01:00
Emilio Cobos Álvarez
b2994ac538 Bug 1528453 - Don't use min-height: 0 for xul trees. r=bgrins
In the regressing bug I accidentally removed a special-case for
min-{height/width}: 0 that treated it as auto for XUL trees:

  https://hg.mozilla.org/integration/mozilla-inbound/rev/bf8e35be76d8#l34.94

I can put it back if you think it's better, but these two lines of code were
here before min-width: auto even existed (min-width: 0 used to be the default).

I think this is better than changing the platform back to special-case
min-width: 0, and I don't see many other problematic uses of min-height /
min-width: 0, so let's try this.

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

--HG--
extra : moz-landing-system : lando
2019-02-16 21:27:39 +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
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
599d3ecb6b Bug 1519486 - convert autocomplete-richlistitem XBL binding to CE, r=MattN 2019-01-24 08:40:36 -05: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
Victor Porof
fb37ef1dea Bug 1503826 - Remove the treerows binding, r=bgrins 2019-01-17 10:53:53 +01:00
Victor Porof
86d7401fa8 Bug 1507704 - Migrate the columnpicker binding into a custom element, r=bgrins 2019-01-14 09:38:24 +01:00
Timothy Guan-tin Chien
005832324b Bug 1454357 - Remove the scrollbox binding r=NeilDeakin
With all the previous efforts, the scrollbox binding now does nothing but to create an inner box element holding the scrolling content.

It turned out that inner box can be easily removed. The padding set by the document sheets can be moved to the srollbox element directly.

The only gotcha is XULScrollElement::ScrollByIndex() -- it can now reach the child item frames directly from the scrolled frame.

Depends on D15169

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

--HG--
extra : moz-landing-system : lando
2019-01-09 20:12:26 +00: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
2a67f25fbd Bug 1454360 - Use "arrowscrollbox" in the "popup-scrollbars" binding. r=NeilDeakin
This prepares this binding for the unification with the "popup" binding, and removes the last consumer of the scrollByIndex method of XULScrollElement.

Because some code paths in "arrowscrollbox" are optimized using requestAnimationFrame, the related scrolling tests are now asynchronous.

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

--HG--
extra : rebase_source : f5d26df106785f2c0d158b8a23a648a71ab06b2d
2019-01-04 15:07:12 +00:00
Timothy Guan-tin Chien
bd38b39f8a Bug 1512048 - Convert tabmodalprompt binding to JSM module r=Gijs
This converts the tabmodalprompt binding to a class, to be constructed along side with the element
by TabModalPromptBox.

TabModalPromptBox will keep the instances in a map and pass it to the callers, instead of the element.
The tests and callers can access the class instance by passing the element reference to the map.

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

--HG--
rename : toolkit/components/prompts/content/tabprompts.xml => toolkit/components/prompts/content/tabprompts.jsm
extra : moz-landing-system : lando
2019-01-04 19:29:34 +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
Paolo Amadini
cf8940d9a8 Bug 1516876 - Remove the "autocomplete-richlistbox" binding. r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D15501

--HG--
extra : rebase_source : 9aac2594266b3fd956fe268d473958635ce6b25d
2018-12-30 15:59:57 +00:00
Paolo Amadini
55e0dac60d Bug 1472557 - Remove the "scrollbox" anonymous element from "richlistbox". r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D15388

--HG--
extra : source : b46be9dd9fe019870b2e33b26db8204db79aad23
2018-12-30 13:48:45 +00:00