This patch was autogenerated by my decomponents.py
It covers almost every file with the extension js, jsm, html, py,
xhtml, or xul.
It removes blank lines after removed lines, when the removed lines are
preceded by either blank lines or the start of a new block. The "start
of a new block" is defined fairly hackily: either the line starts with
//, ends with */, ends with {, <![CDATA[, """ or '''. The first two
cover comments, the third one covers JS, the fourth covers JS embedded
in XUL, and the final two cover JS embedded in Python. This also
applies if the removed line was the first line of the file.
It covers the pattern matching cases like "var {classes: Cc,
interfaces: Ci, utils: Cu, results: Cr} = Components;". It'll remove
the entire thing if they are all either Ci, Cr, Cc or Cu, or it will
remove the appropriate ones and leave the residue behind. If there's
only one behind, then it will turn it into a normal, non-pattern
matching variable definition. (For instance, "const { classes: Cc,
Constructor: CC, interfaces: Ci, utils: Cu } = Components" becomes
"const CC = Components.Constructor".)
MozReview-Commit-ID: DeSHcClQ7cG
This patch does a minor refactor of the code used to style popup menu for
the <select> element.
It improves the custom styling experience on MacOS, preserves the functionality
on Windows and removes the unnecessary per-item CSS rules significantly
improving the performance of opening the <select> list.
MozReview-Commit-ID: 7myXq8aDAWr
Since the order of events is 'blur' followed by 'focus', we send a message from the content process to the parent process and wait for a reply to give enough time for the parent process to signal that the 'blur' was related to the focusing of the search field. If the parent process hasn't signaled as such, then the content process will proceed with hiding the dropdown.
MozReview-Commit-ID: 6ngoo9uHcsM
The comparison being removed was only put in place because it seemed like a "good-idea" to prevent <select> from being unreadable, though it's not a fool-proof strategy and it breaks content that uses different styling approaches. This removal does not regress any of the other test cases.
MozReview-Commit-ID: 8HeXZXnjpbl
This patch also fixes a bug in our UpdateDropDown code where we weren't computing updated styles for <select> element, as well as another bug where we weren't passing the correct number of arguments to this.populate.
MozReview-Commit-ID: 8LAeIliRXhZ
This problem only occurs when optgroups are involved since they introduce recursion in to the menu-building code and we weren't correctly passing state through
the recursion.
MozReview-Commit-ID: 514zcjgXbIY
This problem only occurs when optgroups are involved since they introduce recursion in to the menu-building code and we weren't correctly passing state through
the recursion.
MozReview-Commit-ID: 514zcjgXbIY
Previously we were respecting the webpages request to show a translucent background on popups, though it now seems that content didn't actually
want a translucent background. After comparing with Chrome, I see that they remove the alpha channel and always show the background color as
fully opaque. This patch also fixes a related bug where the background-color may have been set to a transparent color (not rgba(0, 0, 0, 0)) and
we would show the popup as transparent. This is now fixed with this patch as well.
MozReview-Commit-ID: KqDtvI0zwqP
Select dropdown popups now anchor on the currently selected element in a <select> dropdown for Mac instead of above/below the <select> dropdown.
MozReview-Commit-ID: JlgrZdArehq