Commit Graph

73 Commits

Author SHA1 Message Date
Markus Stange
9590831a70 Bug 1704948 - Forward mouse button to menuitem command event. r=smaug,robwu
Differential Revision: https://phabricator.services.mozilla.com/D111956
2021-04-20 17:44:16 +00:00
Tomislav Jovanovic
9feb88f6ce Bug 1704772 - Fix extension context menu checkbox items and vertical alignment r=Gijs
1) Stop setting the image attribute for extension menu checkbox items.  They
don't work with the new custom chekbox appearance CSS, and not shown anyway.

2) When gutter is visible, stop padding menu items with an icon outside of it,
and use the gutter as a place for said icons.

3) Adjust margin for menu items with icons to align the text with the rest of
the menu items when the gutter is visible.

Differential Revision: https://phabricator.services.mozilla.com/D112267
2021-04-16 21:05:53 +00:00
Narcis Beleuzu
2fd43d5a0b Backed out 7 changesets (bug 1704948, bug 1704879) for bc failures on browser_ext_menus_capture_secondary_click.js
Backed out changeset 02705918c4bf (bug 1704879)
Backed out changeset 79945b876a1d (bug 1704879)
Backed out changeset eb725de20b11 (bug 1704948)
Backed out changeset 454597ac2ba3 (bug 1704948)
Backed out changeset a43a8ef206ea (bug 1704948)
Backed out changeset 2369e321069e (bug 1704948)
Backed out changeset bdf396edd692 (bug 1704948)
2021-04-15 03:30:52 +03:00
Markus Stange
07f0db0247 Bug 1704948 - Forward mouse button to menuitem command event. r=smaug,robwu
Differential Revision: https://phabricator.services.mozilla.com/D111956
2021-04-14 21:23:28 +00:00
Gijs Kruitbosch
caed5fb330 Bug 1699828 - put extension items at the top of the content menu on macOS, r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D109367
2021-03-23 11:40:24 +00:00
Bogdan Tara
27578e9bba Backed out changeset c0c671865b2e (bug 1699828) for browser_ext_menus_replace_menu_context.js mochitest failures CLOSED TREE 2021-03-23 02:11:07 +02:00
Gijs Kruitbosch
230a3d81b8 Bug 1699828 - put extension items at the top of the content menu on macOS, r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D109367
2021-03-22 22:42:26 +00:00
Luca Greco
af06fcfd97 Bug 1698158 - part 2 - Remove unnecessary jsm imports in existing WebExtensions API modules. r=mixedpuppy
Depends on D108226

Differential Revision: https://phabricator.services.mozilla.com/D108227
2021-03-16 18:15:40 +00:00
Neil Deakin
9c2b6f8a9a Bug 1691860, move code that hides separators in the content area context menu into a single place that just hides duplicates, r=Gijs,robwu
Differential Revision: https://phabricator.services.mozilla.com/D104615
2021-03-04 00:16:16 +00:00
Dcoder99
0f5ae533d0 Bug 1651008 - Gives meaningful menus create error message. r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D85024
2020-07-29 02:58:43 +00:00
Sonia Singla
0fb79d563f Bug 1638360 - Only show bookmark menu items for nodes with a bookmarkGuid. r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D79605
2020-06-14 16:50:12 +00:00
Tomislav Jovanovic
19393d7c03 Bug 1642956 - Rename extension.whiteListedHosts to allowedOrigins r=mixedpuppy,extension-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D78050
2020-06-04 21:39:27 +00:00
Rob Wu
9e4cd62f02 Bug 1633968 - Use TabContextMenu.contextTab in ext-menus r=rpl
Differential Revision: https://phabricator.services.mozilla.com/D73256
2020-05-21 18:20:40 +00:00
Bogdan Tara
3612f97816 Backed out 2 changesets (bug 1633968) for browser_ext_menus_events.js failures CLOSED TREE
Backed out changeset 9dc3a4d32630 (bug 1633968)
Backed out changeset 55cc61b65e56 (bug 1633968)
2020-05-21 21:02:00 +03:00
Rob Wu
a256aad651 Bug 1633968 - Use TabContextMenu.contextTab in ext-menus r=rpl
Differential Revision: https://phabricator.services.mozilla.com/D73256
2020-05-20 17:05:07 +00:00
Luca Greco
250484d8d5 Bug 1602384 - Make sure menu.onShown API event is still emitted after a destroyed extension context. r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D60493
2020-01-22 12:21:14 +00:00
gfmcknight
7733076174 Bug 1405031 - Add middle-click and click modifiers to browserAction r=robwu,Gijs
and pageActions.

Before this change, browserActions and pageActions did not trigger
onClick events when middle-clicked, and no information on the button or
any modifiers were passed in the onClick event. With this change, middle
clicking triggers an event, and a clickData object is passed in the
onClick event, with the button and a list of modifiers.

Differential Revision: https://phabricator.services.mozilla.com/D41492
2019-10-28 15:33:11 +00:00
Bogdan Tara
ce5d659eea Backed out changeset 6c464eede88a (bug 1405031) for browser_ext_pageAction_click_types.js failures CLOSED TREE 2019-09-20 01:03:17 +03:00
gfmcknight
c50b0ea139 Bug 1405031 - Add middle-click and click modifiers to browserAction r=robwu
and pageActions.

Before this change, browserActions and pageActions did not trigger
onClick events when middle-clicked, and no information on the button or
any modifiers were passed in the onClick event. With this change, middle
clicking triggers an event, and a clickData object is passed in the
onClick event, with the button and a list of modifiers.

Differential Revision: https://phabricator.services.mozilla.com/D41492
2019-09-19 17:06:22 +00:00
monikamaheshwari
edb30ffaec Bug 1578683 Turn on ESLint rule prefer-boolean-length-check for toolkit and browser r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D45629
2019-09-14 09:39:26 +00:00
Coroiu Cristina
fefeba975d Backed out changeset 74f522fc33ae (bug 1405031) for browser-chrome failures at browser/components/extensions/test/browser/browser_ext_browserAction_click_types.js 2019-09-13 03:59:58 +03:00
gfmcknight
24a36c3701 Bug 1405031 - Add middle-click and click modifiers to browserAction r=robwu
and pageActions.

Before this change, browserActions and pageActions did not trigger
onClick events when middle-clicked, and no information on the button or
any modifiers were passed in the onClick event. With this change, middle
clicking triggers an event, and a clickData object is passed in the
onClick event, with the button and a list of modifiers.

Differential Revision: https://phabricator.services.mozilla.com/D41492
2019-09-12 20:41:24 +00:00
Sylvestre Ledru
f4d7743944 Bug 1562642 - Part 3 - Add missing MPL2 headers in browser & toolkit r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D37217
2019-07-10 12:03:37 +00:00
Andreea Pavel
1ec8be7299 Backed out changeset 3d59cb02b6ff (bug 1562642) for eslint failure on a CLOSED TREE 2019-07-10 14:44:29 +03:00
Sylvestre Ledru
48a94b058e Bug 1562642 - Part 3 - Add missing MPL2 headers in browser & toolkit r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D37217
2019-07-10 11:15:25 +00:00
Victor Porof
bf2b98e8c1 Bug 1561435 - Fix linting errors for browser/, r=standard8
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D35950
2019-06-28 20:02:37 +02:00
Victor Porof
8eb72fd3fc Bug 1561435 - Format browser/components/, a=automatic-formatting
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D36042
2019-07-05 09:53:32 +02:00
Alexander Surkov
3e72225bf3 Bug 1519514 - convert tabbrowser-tab binding to a Custom Element, r=aswan
Differential Revision: https://phabricator.services.mozilla.com/D28662
2019-05-28 22:00:28 +00:00
Cosmin Sabou
61c6a5e4c5 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
fae3d434df Bug 1519514 - convert tabbrowser-tab binding to a Custom Element, r=aswan
Differential Revision: https://phabricator.services.mozilla.com/D28662
2019-05-28 22:00:28 +00:00
Andrew Swan
40b80dc372 Bug 1549192 Remove extension shutdownReason footgun r=kmag
Checking extension.shutdownReason for any purpose other than detecting
app shutdown is unreliable, since actions such as disabing, uninstalling,
etc. may happen ito an extension after it has shut down.  Remove the
temptation for api authors to write incorrect code by removing
extension.shutdownReason and replacing it with an isAppShutdown boolean
passed to shutdown handlers.

Differential Revision: https://phabricator.services.mozilla.com/D30605
2019-05-09 19:46:38 -07:00
Luca Greco
d4c9385f21 Bug 1536473 - ext-menu onWindowOpen handler should wait for SidebarUI to be fully initialized. r=mixedpuppy,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D24034
2019-03-25 20:47:27 +00:00
Shane Caraveo
4ff8365127 Bug 1516707 support incognito permission in menus api r=robwu,zombie
Differential Revision: https://phabricator.services.mozilla.com/D17293
2019-01-30 19:51:43 +00:00
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
Peter Simonyi
2c64c09be9 Bug 1419195: Show items from WebExtensions in Places Library context menu r=mixedpuppy
Depends on D16413

Differential Revision: https://phabricator.services.mozilla.com/D16414
2019-01-17 09:49:38 +00:00
Peter Simonyi
23fe08f5d6 Bug 1419195: Show items from WebExtensions in bookmarks sidebar context menu r=mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D16413
2019-01-17 09:49:36 +00:00
Gurzau Raul
5eba4bbdf4 Backed out 3 changesets (bug 1515810, bug 1419195) for failing at /browser/browser_ext_contextMenus.js on a CLOSED TREE
Backed out changeset 437003de9fff (bug 1515810)
Backed out changeset c04c2376a213 (bug 1419195)
Backed out changeset d9a81de35ac3 (bug 1419195)
2019-01-15 17:07:06 +02:00
Peter Simonyi
50669f34c3 Bug 1419195: Show items from WebExtensions in Places Library context menu r=mixedpuppy
Depends on D16413

Differential Revision: https://phabricator.services.mozilla.com/D16414
2019-01-15 14:05:44 +00:00
Peter Simonyi
9bc416544f Bug 1419195: Show items from WebExtensions in bookmarks sidebar context menu r=mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D16413
2019-01-15 14:06:03 +00:00
Noemi Erli
75a1557802 Backed out changeset ee53bdc5b1d4 (bug 1419195) for failing in browser_ext_contextMenus.js 2019-01-14 18:59:02 +02:00
Noemi Erli
bfb157f169 Backed out changeset 732184f122e3 (bug 1419195) for failing in browser_ext_contextMenus.js 2019-01-14 18:58:48 +02:00
Peter Simonyi
969563efc3 Bug 1419195: Show items from WebExtensions in Places Library context menu r=mixedpuppy
Depends on D16413

Differential Revision: https://phabricator.services.mozilla.com/D16414
2019-01-14 15:43:29 +00:00
Peter Simonyi
5b36f866d3 Bug 1419195: Show items from WebExtensions in bookmarks sidebar context menu r=mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D16413
2019-01-14 15:41:27 +00:00
Luca Greco
62d0d158a0 Bug 1512421 - contextMenus documentUrlPatterns should allow unrestricted schemes on privileged mozilla addons. r=mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D13907
2018-12-07 16:46:32 +00:00
Rob Wu
32a29a5dc1 Bug 1508144 - Ignore clicks on non-clickable menu items r=mixedpuppy
Bug 1469148 added support for detecting which mouse button was used,
by synthetizing "command" events when a "click" event was captured.
The implementation did not account for unclickable menu items, such
as items that act as the parent of a submenu (see bug report),
separators and disabled menu items.

This patch adds the necessary checks and regression tests for these
scenarios to make sure that such clicks are ignored, as expected.

Differential Revision: https://phabricator.services.mozilla.com/D13084
2018-11-28 15:09:26 +00:00
Rob Wu
2e34a4522e Bug 1498896 - Apply documentUrlPatterns to original target document when viewTypes is set r=mixedpuppy
Usually, documentUrlPatterns applies to the URL of the document where
the context menu is opened. In some cases, there is no document, such
as menus on browser UI (extension action buttons, tools menu, tabs).
In these cases, `documentUrlPatterns` matches the (active) tab's URL.

This causes ambiguity when `browser.menus.overrideContext` is used to
change the context to the "tab" context.
Before this patch, `documentUrlPatterns` applied to the tab's URL.
After this patch, `documentUrlPatterns` applies to the URL of the
document where the menu was opened, *if* `viewTypes` is also set.
Using this property is a strong signal from the extension that the menu
is meant to be shown in a document rather than browser UI, so extensions
can reasonably expect `documentUrlPatterns` to match the original
document's URL instead of the URL of the spoofed tab context.

There was no existing test coverage for documentUrlPatterns on tab
contexts, so this does not only add tests for documentUrlPatterns on
overridden contexts (browser_ext_menus_replace_menu_context.js), but
also documentUrlPatterns in normal tab contexts (browser_ext_menus.js).

Differential Revision: https://phabricator.services.mozilla.com/D9249
2018-10-22 14:17:29 +00:00
Rob Wu
3a839b492e Bug 1416839 - Add viewType/viewTypes to menus API r=mixedpuppy
- Support viewTypes property in menus.create / menus.update.
- Add info.viewType to menus.onShown / menus.onClicked event.
- This "viewType" reuses the existing extension.ViewType enum,
  which is a "tab", "popup" (pageAction/browserAction) or "sidebar".

Differential Revision: https://phabricator.services.mozilla.com/D6205
2018-10-01 16:56:53 +00:00
Rob Wu
836fd50f9c Bug 1280347 - Remove <all_urls> requirement for the "tab" context r=mixedpuppy
See https://bugzilla.mozilla.org/show_bug.cgi?id=1280347#c28

Differential Revision: https://phabricator.services.mozilla.com/D6831
2018-09-27 15:32:14 +00:00
Rob Wu
124ccb5eab Bug 1280347 - Support changing context type to tab and bookmark r=mixedpuppy
This allows extensions to include tab/bookmark menu items from other
extensions. Built-in menu items from the browser are *not* added.

Depends on D6623

Differential Revision: https://phabricator.services.mozilla.com/D6624
2018-09-27 08:21:05 +00:00
Rob Wu
f05b3204a5 Bug 1367160 - Allow extensions to hide default menu items r=mixedpuppy
The new method allows extensions to modify menu items in their own
moz-extension:-pages, with the following features:

- All matching extension items are shown in the root menu (instead of
  being moved into a submenu), above other menu items, if any.
- The icons for these menu items are customizable.
- Optionally, the default menu items (including those from other
  extensions) can be hidden.

Depends on D6621

Differential Revision: https://phabricator.services.mozilla.com/D6622
2018-09-25 16:41:47 +00:00