Commit graph

1860 commits

Author SHA1 Message Date
James Teh
3676e15738 Bug 1436086: Implement keyboard navigation for the main and Bookmarks toolbars. r=Gijs
Having separate tab stops for every toolbar control results in an unmanageable number of tab stops.
Therefore, we group several buttons under a single tab stop and allow movement between them using left/right arrows.
However, text inputs use the arrow keys for their own purposes, so they need their own tab stop.
There are also groups of buttons before and after the URL bar input which should get their own tab stop.
The subsequent buttons on the toolbar are then another tab stop after that.

Tab stops for groups of buttons are set using the <toolbartabstop/> element.
This element is invisible, but gets included in the tab order.
When one of these gets focus, it redirects focus to the appropriate button.
This avoids the need to continually manage the tabindex of toolbar buttons in response to toolbarchanges.

Navigation to for the View site information button and notification anchors is now managed by this new framework.
As such, they no longer need their own position in the tab order and the CSS has been tweaked accordingly.

For now, this new functionality is behind a pref (browser.toolbars.keyboard_navigation) which is currently disabled by default.

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

--HG--
extra : moz-landing-system : lando
2019-02-13 22:51:06 +00:00
Cosmin Sabou
ea11387364 Backed out changeset a14a11bf2d6f (bug 1436086) for eslint failure on browser_toolbarButtonKeyPress.js. CLOSED TREE 2019-02-13 15:35:34 +02:00
James Teh
356adc5d97 Bug 1436086: Implement keyboard navigation for the main and Bookmarks toolbars. r=Gijs
Having separate tab stops for every toolbar control results in an unmanageable number of tab stops.
Therefore, we group several buttons under a single tab stop and allow movement between them using left/right arrows.
However, text inputs use the arrow keys for their own purposes, so they need their own tab stop.
There are also groups of buttons before and after the URL bar input which should get their own tab stop.
The subsequent buttons on the toolbar are then another tab stop after that.

Tab stops for groups of buttons are set using the <toolbartabstop/> element.
This element is invisible, but gets included in the tab order.
When one of these gets focus, it redirects focus to the appropriate button.
This avoids the need to continually manage the tabindex of toolbar buttons in response to toolbarchanges.

Navigation to for the View site information button and notification anchors is now managed by this new framework.
As such, they no longer need their own position in the tab order and the CSS has been tweaked accordingly.

For now, this new functionality is behind a pref (browser.toolbars.keyboard_navigation) which is currently disabled by default.

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

--HG--
extra : moz-landing-system : lando
2019-02-13 11:18:45 +00:00
Gijs Kruitbosch
8a184432c1 Bug 1498295 - move pocket strings into browser strings, r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D15526

--HG--
extra : moz-landing-system : lando
2019-01-08 12:36:37 +00:00
Gijs Kruitbosch
8cd5081ad9 Bug 1514724 - actually insert pocket in the 'right' place in browser.xul to avoid migration issues in browser_pageActions.js , rs=bustage on a CLOSED TREE
--HG--
extra : amend_source : 49f9c04ae6e944104c44a84df3c0a539d0642c88
2018-12-28 13:16:51 +00:00
Gijs Kruitbosch
b5785ef772 Bug 1514724 - move pocket page action into markup, r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D14803

--HG--
extra : rebase_source : bc5d116af660342b069f39a1b3ccbd04dedcd6f9
2018-12-28 11:27:00 +00:00
James Teh
3efa5efdbd Bug 1506504: Add/fix keyboard behaviour for browser toolbar buttons which open popups. r=Gijs
1. Fix the Firefox menu button so that it only handles space and enter, rather than incorrectly activating for *all* key presses.
2. Add keyboard support (space and enter) for the Library and page Actions buttons.
3. Add keyboard support (space and enter) for customizable widgets of type "view"; e.g. the Developer button.
4. Add keyboard support (space and enter) for page action buttons pinned to the URL bar; e.g. the Send Tab to Device button.

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

--HG--
extra : moz-landing-system : lando
2018-12-20 11:33:32 +00:00
Dão Gottwald
efd44eae02 Bug 1515902 - Introduce panel-footer class to fix common color problem with footer buttons. r=ntim
Differential Revision: https://phabricator.services.mozilla.com/D15188

--HG--
rename : toolkit/themes/shared/close-icon.inc.css => toolkit/themes/shared/global.inc.css
extra : moz-landing-system : lando
2018-12-21 15:44:44 +00:00
Dão Gottwald
99a2ee62ea Bug 1515284 - Quantumbar: Make clicking the history dropmarker work. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D14955

--HG--
extra : moz-landing-system : lando
2018-12-19 17:05:37 +00:00
Dão Gottwald
e36aa33a99 Bug 1513468 - Remove spacer above tab toolbar items. r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D14234

--HG--
extra : moz-landing-system : lando
2018-12-17 18:03:40 +00:00
Dão Gottwald
31f5825ca3 Bug 1514139 - Quantumbar: Allow moving the cursor by clicking in the address bar while the results popup is open. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D14530

--HG--
extra : moz-landing-system : lando
2018-12-14 09:53:43 +00:00
Dão Gottwald
d776888886 Bug 1513200 - Move pre-tabs and post-tabs spacers outside of TabsToolbar-customization-target and revert bug 1445728. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D14142

--HG--
extra : moz-landing-system : lando
2018-12-11 12:35:03 +00:00
Mike Conley
c590cc3dc5 Bug 1510631 - Allow items to be placed on the left of the toolbar menubar spacer. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D13290

--HG--
extra : moz-landing-system : lando
2018-11-28 20:43:26 +00:00
Mike Conley
a8e69172a4 Bug 1507536 - Set skipintoolbarset="true" on some titlebar items to avoid redundant context menu items. r=dao
This adds a skipintoolbarset to the toolbar-menubar spacer and the titlebar-buttonbox-container
hbox to avoid a case where an exception can be thrown from CustomizableUI.isWidgetRemovable,
which expects all direct descendants of toolbars to either have an ID, be one of a special
set of node types, or have skipintoolbarset="true" set on it.

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

--HG--
extra : moz-landing-system : lando
2018-11-27 22:33:33 +00:00
Dão Gottwald
0f23fd4558 Bug 1509309 - Move most browser-*.js scripts from global-scripts.inc to browser.xul. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D13064

--HG--
extra : moz-landing-system : lando
2018-11-27 21:55:21 +00:00
Cosmin Sabou
a9287012c1 Backed out changeset fd00df2e0aba (bug 1507536) for causing bug 1509711 as mconley requested. a=backout 2018-11-27 23:56:47 +02:00
Ehsan Akhgari
cc714b7adc Bug 1490811 - Part 1: Add a permission doorhanger for the storage access API r=baku,johannh
Differential Revision: https://phabricator.services.mozilla.com/D12467

--HG--
extra : moz-landing-system : lando
2018-11-26 21:23:16 +00:00
Mike Conley
ae73252072 Bug 1507536 - Remove spacer in toolbar-menubar, and just make the menubar items flex instead. r=dao
This also adds a skipintoolbarset to the titlebar-buttonbox-container hbox to avoid a case
where an exception can be thrown from CustomizableUI.isWidgetRemovable, which expects all
direct descendants of toolbars to either have an ID, be one of a special set of node types,
or have skipintoolbarset="true" set on it.

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

--HG--
extra : moz-landing-system : lando
2018-11-23 05:35:48 +00:00
Mike Conley
619e4b963b Bug 1507382 - Show titlebar items when menubar enabled. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D12236

--HG--
extra : moz-landing-system : lando
2018-11-21 15:09:31 +00:00
Dão Gottwald
1b9bb473b9 Bug 1508590 - Load searchbar.js from browser.xul rather than global-scripts.inc. r=adw
Differential Revision: https://phabricator.services.mozilla.com/D12406

--HG--
extra : moz-landing-system : lando
2018-11-21 02:18:32 +00:00
Dão Gottwald
0b29cb4320 Bug 1508585 - Load search-one-offs.js lazily. r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D12405

--HG--
extra : moz-landing-system : lando
2018-11-20 17:04:43 +00:00
Dão Gottwald
5b9912f43e Bug 1506261 - Convert search-one-offs from a custom element to a plain JS class and initialize it lazily. r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D11889

--HG--
extra : moz-landing-system : lando
2018-11-17 08:46:35 +00:00
Mike Conley
87e56a69cb Bug 1506457 - Only show titlebar indicators in the titlebar-secondary-buttonbox on macOS. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D12153

--HG--
extra : moz-landing-system : lando
2018-11-16 20:45:36 +00:00
Cosmin Sabou
55394c287c Backed out changeset 10a5af6d30df (bug 1506261) for causing window leaks on OSX debug. CLOSED TREE 2018-11-15 10:53:29 +02:00
Dão Gottwald
6c78bc8bfd Bug 1506261 - Convert search-one-offs from a custom element to a plain JS class and initialize it lazily. r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D11889

--HG--
extra : moz-landing-system : lando
2018-11-15 00:55:31 +00:00
Cosmin Sabou
00f29cfcf6 Merge mozilla-central to mozilla-inbound. 2018-11-10 13:51:14 +02:00
Razvan Maries
f502ea6ce1 Merge mozilla-central to mozilla-inbound. a=merge 2018-11-10 02:24:04 +02:00
Jared Wein
0aa2d95695 Bug 1497980 - Add a 'Duplicate Tabs' menuitem when multiple tabs are selected. r=Felipe,dao
Differential Revision: https://phabricator.services.mozilla.com/D11281

--HG--
extra : moz-landing-system : lando
2018-11-09 21:51:40 +00:00
Andreea Pavel
f5408b7aeb Backed out changeset 4ff11c25342d (bug 1497980) for failing bc at browser/base/content/test/tabs/browser_multiselect_tabs_duplicate.js on a CLOSED TREE 2018-11-09 22:08:56 +02:00
Dão Gottwald
f0a27c658c Bug 1506114 - Move library-animatable-box into the navigation toolbar so it inherits the right color, and clean up related CSS. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D11495

--HG--
extra : moz-landing-system : lando
2018-11-09 20:03:32 +00:00
Dão Gottwald
824da429cb Bug 1506123 - Remove unused toolbaritem-tabsmenu class. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D11473

--HG--
extra : moz-landing-system : lando
2018-11-09 16:25:37 +00:00
Jared Wein
b357a678c4 Bug 1497980 - Add a 'Duplicate Tabs' menuitem when multiple tabs are selected. r=Felipe
Differential Revision: https://phabricator.services.mozilla.com/D11281

--HG--
extra : moz-landing-system : lando
2018-11-09 17:19:03 +00:00
Dão Gottwald
8d6b57d979 Bug 1506112 - Replace customize-context-autoHide class with meaningful id. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D11469

--HG--
extra : moz-landing-system : lando
2018-11-09 16:23:52 +00:00
Jared Wein
dde3450d5d Bug 1502083 - Move the 'Close Other Tabs' and 'Close Tabs to the Right' back to the main tab context menu and out of a submenu. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D11223

--HG--
extra : moz-landing-system : lando
2018-11-08 09:11:42 +00:00
Mike Conley
1b50b597e6 Bug 1498400 - Rename titlebar-placeholder to titlebar-spacer. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D11133

--HG--
extra : moz-landing-system : lando
2018-11-07 09:54:26 +00:00
Daniel Varga
3d9ab59490 Merge mozilla-central to autoland. a=merge
--HG--
extra : rebase_source : 423e41eec91a44f6e3862da7972a40e4806d79e8
2018-11-07 00:03:28 +02:00
Brendan Dahl
9058324771 Bug 1490464 - Fix XUL attribute persistence for browser.xhtml. r=smaug
Move XUL persistence handling into it's own class and make it a separate
nsIDocumentObserver so it can also be used in non-XUL documents.
To avoid adding persistence to all non-XUL documents, a document must add
the "mozpersist" attribute to the root element if it wants enable the
feature.

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

--HG--
extra : moz-landing-system : lando
2018-11-06 21:45:20 +00:00
Mike Conley
b457d05277 Bug 1356920 - Don't calculate and flush layout inside browser-tabsintitlebar.js. r=dao
Folded together the following revisions:

Bug 1356920 - Remove all toolbar layout code from browser-tabsintitlebar. r=dao

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

***

Bug 1356920 - Move TabsToolbar and toolbar-menubar into the titlebar, and put the titlebar into the navigator-toolbox. r=dao

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

***

Bug 1356920 - Put a spacer in the menubar to push titlebar items to the end, and stop the menu from stretching vertically. r=dao

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

***

Bug 1356920 - Adjust CSS rules for new XUL document structure. r=dao

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

***

Bug 1356920 - Fix placement of tracking protection icon. r=dao

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

***

Bug 1356920 - Get rid of the spacer before the window caption buttons now in the TabsToolbar. r=dao

The spacer isn't necessary, since the tabbrowser-tabs node will flex to fill the available
space anyways.

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

***

Bug 1356920 - Move movingtab attribute to navigator-toolbox to account for TabsToolbar not being a sibling of nav-bar anymore. r=dao

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

***

Bug 1356920 - Hide the window caption buttons hbox if the native titlebar is being drawn. r=dao

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

***

Bug 1356920 - Keep the macOS window caption buttons vertically centered when drag space is enabled. r=dao

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

***

Bug 1356920 - Switch window caption XUL nodes from IDs to classes so that more than one can exist per doc. r=dao

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

***

Bug 1356920 - Move titlebar items out into a preprocessed file to be included at build-time. r=dao

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

***

Bug 1356920 - Reorganize TabsToolbar contents to force most items to the bottom of it. r=dao

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

***

Bug 1356920 - Update CSS to account for new DOM structure under TabsToolbar. r=dao

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

***

Bug 1356920 - Fix titlebar button rendering when using a lwtheme without the Windows compositor. r=dao

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

***

Bug 1356920 - Put an ordinal rule on the window caption buttons to help ensure they stay at the end of the toolbar. r=dao

This is to ensure that the buttons are placed after the post-tabs titlebar placeholder.

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

***

Bug 1356920 - Stretch window caption buttons to fill vertical space on Windows 8+ when using extra drag space. r=dao

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

***

Bug 1356920 - Update onViewToolbarsPopupShowing to search for toolbars that are grandchildren of the toolbox. r?jaws

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

***

Bug 1356920 - Hide the titlebar items in the TabsToolbar if the menubar is being displayed. r=dao

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

***

Bug 1356920 - Fix selector for titlebar. r=dao

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

***

Bug 1356920 - Fix titlebar themeing on Linux. r=dao

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

***

Bug 1356920 - Remove browser-tabsintitlebar layout flushes from performance test whitelist. r?florian

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

***

Bug 1356920 - Fix bottom border of tabbar to account for new DOM structure. r=dao

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

***

Bug 1356920 - Hide the titlebar-buttonbox-container when in fullscreen mode. r=dao

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

--HG--
extra : rebase_source : fe4acce0443df2fad8e15bf54733b7d810cdd2ca
2018-10-25 12:03:14 -04:00
Paolo Amadini
ce13039af3 Bug 1471403 - Part 2 - Lazify the creation of "notificationbox" elements. r=dao,bgrins
Differential Revision: https://phabricator.services.mozilla.com/D10892

--HG--
extra : rebase_source : f66fe90d780c3d446f4a065c0397cbb37f43cb0c
2018-11-09 14:38:49 +00:00
Oriol Brufau
d57ad11213 Bug 1503600 - Reorder "Manage Extension" and "Remove Extension" in browserAction context menu. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D10382

--HG--
extra : moz-landing-system : lando
2018-10-31 16:55:06 +00:00
Dão Gottwald
7f86685eb5 Bug 1502455 - UrlbarView: add one-off search buttons stub. r=adw
Differential Revision: https://phabricator.services.mozilla.com/D9929

--HG--
extra : moz-landing-system : lando
2018-10-26 22:07:31 +00:00
Brian Grinstead
e1e432ca29 Bug 1497601 - Use a xul:description instead of a xul:label for tooltips;r=smaug
We'd like to be able to implement label features with a Custom Element, and we
don't want to run CE reactions inside of NAC.

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

--HG--
extra : moz-landing-system : lando
2018-10-16 13:54:07 +00:00
Jared Wein
d38a852ff0 Bug 1480532 - Remove 'Reload All Tabs' from tab context menu. r=Felipe
I left off the part about adding Reload Tabs to the All Tabs menu since the specs don't mention how this would appear with the New Container Tab menuitem and the Tab Manager project has been split off from the multiselect tabs project.

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

--HG--
extra : moz-landing-system : lando
2018-10-12 21:16:44 +00:00
Jared Wein
db73173d1f Bug 1496338 - Tab bar context menu should read 'Bookmark Selected Tab...' if only one tab is selected. r=Felipe
Differential Revision: https://phabricator.services.mozilla.com/D8267

--HG--
extra : moz-landing-system : lando
2018-10-12 21:15:34 +00:00
Brian Grinstead
46155f7ed2 Bug 1497975 - Prevent layouts during parse of browser.xhtml;r=Gijs,emilio
By hiding the documentElement with display:none and then waiting to
show it until readystatechange, we can avoid inadvertently constructing
XBL bindings as a result scripts running during parse like connectedCallback.

This more closely matches XUL document behavior, where the initial
layout doesn't happen until everything is parsed and loaded. It also
lets us call gBrowserInit.onBeforeInitialXULLayout actually before
layout happens.

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

--HG--
extra : moz-landing-system : lando
2018-10-11 18:10:33 +00:00
Jared Wein
7fe44d3527 Bug 1496309 - Fix arguments to populateSendTabToDevicesMenu and add automated test for coverage. r=Felipe
Differential Revision: https://phabricator.services.mozilla.com/D7684

--HG--
extra : moz-landing-system : lando
2018-10-04 18:37:50 +00:00
Noemi Erli
8bb8254a13 Merge inbound to mozilla-central. a=merge 2018-10-04 07:03:25 +03:00
Jared Wein
7535dd6f3a Bug 1496091 - Remove 'Selected' from a couple tab context menuitems for consistency and disable instead of hide the 'Close Tab Options' item for consistency. r=Felipe
Differential Revision: https://phabricator.services.mozilla.com/D7612

--HG--
extra : moz-landing-system : lando
2018-10-03 20:06:26 +00:00
Jared Wein
033bc37608 Bug 1495286 - Arrange the tab context menuitems to maintain muscle memory as best as possible while also keeping the Select All Tabs menuitem high in the order. r=Felipe
This patch also removes the menuseparator before the Send Tabs to Device menuitem since there shouldn't be a logical separation between that menuitem and the others.

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

--HG--
extra : moz-landing-system : lando
2018-10-03 20:06:54 +00:00
Drew Willcoxon
a9f52240ca Bug 1489834 - Fix the Send Tab to Device page action title and tooltip r=jaws
Bug 1470555 moved the title from a dtd to a properties file, so we can and should now set the action's title directly when the action is created in PageActions.jsm.  But it's a PluralForm string, so we need to jump through that hoop.

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

--HG--
extra : moz-landing-system : lando
2018-10-02 14:25:37 +00:00