Commit Graph

147 Commits

Author SHA1 Message Date
Kris Maglione
856fa07b17 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
2019-01-17 10:18:31 -08:00
Paolo Amadini
3d858408e1 Bug 1513149 - Hovering the action buttons doesn't display the command associated with the button. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D14172
2018-12-11 18:27:01 +00:00
Tom Schuster
9c64b67174 Bug 1503588 - Remove aDataLen parameter from nsITransferable.getAnyTransferData. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D10441
2018-11-02 11:02:25 +00:00
Paolo Amadini
1b1a2ac959 Bug 1452626 - Remove the "download" binding. r=mak,bgrins
Differential Revision: https://phabricator.services.mozilla.com/D7176
2018-10-04 11:12:03 +01:00
Paolo Amadini
1549bd8b40 Bug 1493969 - Refactor the user interface update code of download elements. r=mak,ursula
Differential Revision: https://phabricator.services.mozilla.com/D4539
2018-09-28 14:59:30 +01:00
Paolo Amadini
a9a795fc41 Bug 1452629 - Part 1 - Avoid redundant button elements in the "download" widget. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D4441
2018-09-13 16:16:46 +01:00
Mark Banner
462116b7f9 Bug 1486739 - Add missing dangling commas in browser/, services/, taskcluster/ and toolkit/. r=mossop
Automatic changes by ESLint, except for manual corrections for .xml files.

Differential Revision: https://phabricator.services.mozilla.com/D4439
2018-08-31 05:59:17 +00:00
Brendan Dahl
532fe1f6b0 Bug 1485426 - Use createXULElement instead of createElement in XUL docs. r=bgrins
Preparing for transitioning to XHTML.

MozReview-Commit-ID: JLlmUxsvhIB

Differential Revision: https://phabricator.services.mozilla.com/D4265
2018-08-25 00:16:27 +00:00
Brian Grinstead
1c86f46ecd Bug 1479125 - Migrate calls that expect an element to be returned to use element variation firstChild etc to firstElementChild etc;r=Paolo
This allows the JS to work in HTML documents, where whitespace is preserved. In XUL
documents, whitespace is ignored when parsing so text nodes are generally not returned.

The following changes were made, with manual cleanups as necessary (i.e. when firstChild actually
refers to a text node, or when firstChild is used in a loop to empty out an element):

  firstChild->firstElementChild
  lastChild->lastElementChild
  nextSibling->nextElementSibling
  previousSibling->previousElementSibling
  childNodes->children

MozReview-Commit-ID: 95NQ8syBhYw
2018-08-08 15:22:53 -07:00
Ciure Andrei
642bbf1d1c Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-02-23 02:06:26 +02:00
Paolo Amadini
f7c87a1ab1 Bug 1439358 - Part 2 - Don't use the "current" property when restoring focus from the blocked downloads subview. r=Gijs
MozReview-Commit-ID: ASmmdQMctr5
2018-02-22 12:20:53 +00:00
Brendan Dahl
08481d480b Bug 1434077 - Inline indicators overlay. r=Paolo
This is part of the work to remove XUL overlays. The overlay was originally
created to help startup performance, but inlining the overlay seems to
no longer have detrimental effects to performance and is more straightforward.

MozReview-Commit-ID: 7sfVel6qvgv
2018-02-14 12:20:58 -08:00
Brendan Dahl
e5f0a48b9a Bug 1434077 - Inline downloads overlay. r=Paolo
This is part of the work to remove XUL overlays. The overlay was originally
created to help startup performance, but using a hidden panel instead seems to
have no detrimental effects to performance and is more straightforward.

MozReview-Commit-ID: JlWcZEhPXyH
2018-02-06 15:55:50 -08:00
Boris Zbarsky
4fd6e65c55 Bug 1436508 part 10. Remove use of nsIDOMKeyEvent in JS. r=masayuki
MozReview-Commit-ID: GGciORX62Yh
2018-02-09 11:17:09 -05:00
Paolo Amadini
ff1ddd6adf Bug 1434883 - Part 2 - Use an asynchronous API to open PanelMultiView panels. r=Gijs
MozReview-Commit-ID: 3VzoxJ3Ociy
2018-02-06 09:02:27 +00:00
Andrew McCreight
272cee1e65 Bug 1432992, part 1 - Remove definitions of Ci, Cr, Cc, and Cu. r=florian
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
2018-02-06 09:36:57 -08:00
Florian Quèze
c5f15a4700 Bug 1339461 - script-generated patch to convert foo.indexOf(...) == -1 to foo.includes(), r=Mossop. 2018-02-01 20:45:22 +01:00
Kris Maglione
0bb74efdf1 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl
2018-01-29 15:20:18 -08:00
Cosmin Sabou
f09d6d985d Backed out 3 changesets (bug 1431533) for Android mochitest failures on testEventDispatcher on a CLOSED TREE
Backed out changeset a1eca62826a1 (bug 1431533)
Backed out changeset 34c999fa006b (bug 1431533)
Backed out changeset e2674287e57f (bug 1431533)
2018-01-30 07:17:48 +02:00
Kris Maglione
fd67f090b2 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl
2018-01-29 15:20:18 -08:00
Brindusan Cristian
483ba301cb Backed out 2 changesets (bug 1431533) for ESlint failures on a CLOSED TREE
Backed out changeset 6e56f4c8843e (bug 1431533)
Backed out changeset 12fc4dee861c (bug 1431533)
2018-01-30 02:32:43 +02:00
Kris Maglione
683a97d172 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl
2018-01-29 15:20:18 -08:00
Erica Wright
942200ccac Bug 1033395 - Panels Should Be Anchored from the Same Height on the Toolbar. r=johannh
MozReview-Commit-ID: 6bhlfeD1esE
2017-09-13 15:49:32 -04:00
Phil Ringnalda
6f4d37fc42 Backed out changeset 5b9d2ebcf44e (bug 1033395) for failures in browser_overflow_anchor.js
MozReview-Commit-ID: LfhmJLydnaF
2017-10-16 22:01:54 -07:00
Erica Wright
fa263f98ba Bug 1033395 - Panels Should Be Anchored from the Same Height on the Toolbar. r=johannh
MozReview-Commit-ID: 6bhlfeD1esE
2017-09-13 15:49:32 -04:00
Dan Banner
5af4450327 Bug 1408777 - Automatically fix instances of missing semicolons in the tree. r=Standard8
MozReview-Commit-ID: Jm8BRgt6mIv
2017-10-15 20:50:39 +01:00
Boris Zbarsky
c4de48a0e8 Bug 1400898 part 1. Remove the one script use of nsIDOMChromeWindow. r=farre
MozReview-Commit-ID: I31eceiJP55
2017-09-19 10:13:22 -04:00
Gijs Kruitbosch
d48e2eaf65 Bug 1397447 - make downloads button autohide by default, r=mak
MozReview-Commit-ID: E9izQpa4fFZ
2017-09-08 14:16:36 +01:00
Mike de Boer
bc72a05e37 Bug 1354532 - Part 1 - Implement a new Downloads view as part of the Library widget. r=Paolo
MozReview-Commit-ID: AqH8Zj8XCQl
2017-09-06 16:23:00 +02:00
Sebastian Hengst
2b4cc8b55c Backed out changeset f1d18c741b2c (bug 1354532) for eslint failure at browser/components/downloads/DownloadsCommon.jsm:671: Expected property shorthand. r=backout 2017-09-06 16:48:00 +02:00
Mike de Boer
6cb3ed2016 Bug 1354532 - Part 1 - Implement a new Downloads view as part of the Library widget. r=Paolo
MozReview-Commit-ID: AqH8Zj8XCQl
2017-09-06 16:23:00 +02:00
Wes Kocher
08356deb1c Merge m-c to autoland, a=merge
MozReview-Commit-ID: LEKykpTAKjv
2017-08-25 17:32:33 -07:00
Gijs Kruitbosch
663af591de Back out changeset 97f7f5175b2f (bug 1371765) because we're changing the plan for the downloads button, rs=backout,firebot,paolo
MozReview-Commit-ID: FTvFDV5nuG6
2017-08-25 13:32:47 +01:00
Blake Winton
cbe7a23f74 Bug 1384692 - Update the download doorhanger style. ui-r=amylee, r=Paolo.
MozReview-Commit-ID: 4pY9JxnLNYk
2017-08-01 09:18:11 -04:00
Gijs Kruitbosch
89a0e2f431 Bug 1371765 - make downloads button non-customizable, r=jaws,Paolo
MozReview-Commit-ID: E9izQpa4fFZ
2017-08-16 15:54:36 +01:00
Paolo Amadini
d1e1b518d1 Bug 1381411 - Implement the DownloadHistoryList object. r=mak
This also changes the Library window to use the newly added back-end object. The only user-visible change should be how the selection behaves when retrying downloads.

MozReview-Commit-ID: 7CQr1m21rcB
2017-08-04 14:48:53 +01:00
Florian Quèze
e62545f7be Bug 1381853 - lazy load downloads scripts into the browser window, r=mconley. 2017-07-23 00:18:00 +02:00
Paolo Amadini
1a2766e349 Bug 1381409 - Part 3 - Use DownloadList notifications directly in front-end download views. r=mak
The DownloadList object now provides batch notifications directly, in preparation for linking front-end views to other types of download lists without having to use the DownloadsData indirection.

MozReview-Commit-ID: FOTz1YwGRE1
2017-07-17 12:05:12 +01:00
Paolo Amadini
81fd3d7bde Bug 1381409 - Part 2 - Let each view keep the state of downloads relevant to it. r=mak
The front-end download views now maintain the old download state themselves, instead of relying on the DownloadsData object dispatching the onDownloadStateChanged notification.

This allows each view to keep only the state relevant to it, for example the Downloads Panel already keeps the state only for the visible items. This also makes it possible for each view to use a different hash than the one provided by the legacy stateOfDownload method, and allows bypassing the DownloadsData indirection entirely.

MozReview-Commit-ID: 2D1ixsZCkCa
2017-07-17 12:07:17 +01:00
Paolo Amadini
1907d28bdd Bug 1381409 - Part 1 - Always add Download objects in their original order. r=mak
When a new front-end view is added to the DownloadsData object, the Download objects it contains are loaded into the view starting with the newest, which is the opposite of the order used by the underlying DownloadList.

This was originally implemented as an optimization for the Downloads Panel, at a time when the full list of completed downloads was persisted in the same SQLite database as session downloads. This difference is now unnecessary given the low number of session downloads, and can be removed in preparation for bypassing the DownloadsData indirection entirely.

MozReview-Commit-ID: 5EBkqvyXFq4
2017-07-16 17:36:00 +01:00
Paolo Amadini
efed284f45 Bug 1009116 - Redo resizing architecture of panelmultiview. r=Gijs
The height of the "panelmultiview" binding is now determined by the stack layout code, and doesn't have to be calculated manually via JavaScript anymore. This allows the removal of mutation and overflow observers, and reduces the number of synchronous layouts being made.

There is still a workaround included for wrapping blocks not being taken into account in height calculations.

MozReview-Commit-ID: 9rrPU5O5hUx
2017-05-23 17:08:01 +01:00
Paolo Amadini
b972e9cc0c Bug 1362207 - Remove the dropdown menu from the footer of the Downloads Panel. r=mak
MozReview-Commit-ID: CFrHklbB7TK
2017-05-05 15:37:00 +01:00
Yiren Wang
fd7cf240a8 Bug 1264206 - Enable ESLint for browser/components/downloads and fix the existing issues. r=Standard8
MozReview-Commit-ID: HDjTxdFCnRp
2017-04-03 10:25:05 +01:00
David Rajchenbach-Teller
d557516aec Bug 1087255 - Convert Download JS clients of RemovePage(s) to History.remove;r=paolo
MozReview-Commit-ID: KpXAh74W12E
2014-10-31 12:39:28 +01:00
Sean Lee
233ef57ca5 Bug 1282662 - Part 2: Implement the detail description in hover button case.; r=Paolo
MozReview-Commit-ID: G3L0sULmRLD
2016-12-21 22:50:07 +08:00
George Pîrlea
7262d5afe4 Bug 991965 - Inhibit item selection and update commands when the DownloadsBlockedSubview is open. r=paolo
MozReview-Commit-ID: Akly0NenY8Z
2017-01-21 17:42:36 +00:00
George Pîrlea
4c524107e8 Bug 991965 - Use event.target and inhibit item selection if the context menu is open. r=paolo
1) In the Downloads Panel, hovering over an item would sometimes not trigger an
actual selection, due to an error in how 'onDownloadMouseOver()' events were
processed - 'aEvent.orginalTarget' doesn't take retargets into account. Fixed
by using 'aEvent.target' instead of 'aEvent.originalTarget'.

2) In the Downloads Panel, right-clicking an item opens a context menu that
lets you act on the selected item. However, if you unintentionally hover over a
different item when the context menu is open, the selection changes. You may,
for example, 'Remove From History' a different, unintended item. Fixed by
inhibiting item selection when a context menu is open for a download item.

MozReview-Commit-ID: DLIAFNcs33N
2017-01-21 12:21:51 +00:00
Florian Quèze
63de711857 Bug 1331081 - script generated patch to omit addEventListener/removeEventListener's third parameter when it's false, r=jaws. 2017-01-17 11:50:25 +01:00
Rex Lee
f09826a23b Bug 1269957 - Unify height of download items and allow maximum 5 items to show in downloads panel. r=Paolo
MozReview-Commit-ID: 1EoBfLXyDVN
2016-12-01 20:42:05 +08:00
Sean Lee
e6a4eae011 Bug 1282664 - Redesign the right-menu on a download item in Downloads Panel.; r=Paolo
MozReview-Commit-ID: DyTisE3dX1A
2016-10-14 14:07:00 +08:00