fune/browser/components/downloads/content/downloadsPanel.inc.xhtml
Gijs Kruitbosch 1e1ef247f3 Bug 1628255 - do not add a label/accesskey attribute to the button in the about:downloads and library downloads views, r=mconley,flod,fluent-reviewers
As noted by Jamie, accessible labels for richlistitem elements come from the
label elements that have value attributes within them.

In bug 1608202, we accidentally reused the same fluent message for the buttons
in about:downloads and the library download view (DownloadsViewUI.jsm) and
the context menuitems that do the same thing. This meant that
those menuitems gained a tooltip they shouldn't have, and the buttons gained
a label and accesskey they shouldn't have. The latter caused the
accessibility regression described in the bug.

This patch separates out the two usecases for the same string. I also checked
the other l10nIds used in DownloadsViewUI.jsm, and as far as I can tell this
is the only one that is reused in this way.

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

--HG--
extra : moz-landing-system : lando
2020-04-08 21:39:14 +00:00

194 lines
8.1 KiB
HTML

<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<commandset>
<command id="downloadsCmd_doDefault"
oncommand="goDoCommand('downloadsCmd_doDefault')"/>
<command id="downloadsCmd_pauseResume"
oncommand="goDoCommand('downloadsCmd_pauseResume')"/>
<command id="downloadsCmd_cancel"
oncommand="goDoCommand('downloadsCmd_cancel')"/>
<command id="downloadsCmd_unblock"
oncommand="goDoCommand('downloadsCmd_unblock')"/>
<command id="downloadsCmd_chooseUnblock"
oncommand="goDoCommand('downloadsCmd_chooseUnblock')"/>
<command id="downloadsCmd_unblockAndOpen"
oncommand="goDoCommand('downloadsCmd_unblockAndOpen')"/>
<command id="downloadsCmd_confirmBlock"
oncommand="goDoCommand('downloadsCmd_confirmBlock')"/>
<command id="downloadsCmd_open"
oncommand="goDoCommand('downloadsCmd_open')"/>
<command id="downloadsCmd_show"
oncommand="goDoCommand('downloadsCmd_show')"/>
<command id="downloadsCmd_retry"
oncommand="goDoCommand('downloadsCmd_retry')"/>
<command id="downloadsCmd_openReferrer"
oncommand="goDoCommand('downloadsCmd_openReferrer')"/>
<command id="downloadsCmd_copyLocation"
oncommand="goDoCommand('downloadsCmd_copyLocation')"/>
<command id="downloadsCmd_clearList"
oncommand="goDoCommand('downloadsCmd_clearList')"/>
</commandset>
<!-- The panel has level="top" to ensure that it is never hidden by the
taskbar on Windows. See bug 672365. For accessibility to screen
readers, we use a label on the panel instead of the anchor because the
panel can also be displayed without an anchor. -->
<panel id="downloadsPanel"
data-l10n-id="downloads-panel"
class="panel-no-padding"
role="group"
type="arrow"
orient="vertical"
level="top"
onpopupshown="DownloadsPanel.onPopupShown(event);"
onpopuphidden="DownloadsPanel.onPopupHidden(event);"
hidden="true">
<linkset>
<html:link rel="localization" href="browser/downloads.ftl" />
</linkset>
<!-- The following popup menu should be a child of the panel element,
otherwise flickering may occur when the cursor is moved over the area
of a disabled menu item that overlaps the panel. See bug 492960. -->
<menupopup id="downloadsContextMenu"
onpopupshown="DownloadsView.onContextPopupShown(event);"
onpopuphidden="DownloadsView.onContextPopupHidden(event);"
class="download-state">
<menuitem command="downloadsCmd_pauseResume"
class="downloadPauseMenuItem"
data-l10n-id="downloads-cmd-pause"/>
<menuitem command="downloadsCmd_pauseResume"
class="downloadResumeMenuItem"
data-l10n-id="downloads-cmd-resume"/>
<menuitem command="downloadsCmd_unblock"
class="downloadUnblockMenuItem"
data-l10n-id="downloads-cmd-unblock"/>
<menuitem command="downloadsCmd_show"
class="downloadShowMenuItem"
#ifdef XP_MACOSX
data-l10n-id="downloads-cmd-show-menuitem-mac"
#else
data-l10n-id="downloads-cmd-show-menuitem"
#endif
/>
<menuseparator class="downloadCommandsSeparator"/>
<menuitem command="downloadsCmd_openReferrer"
data-l10n-id="downloads-cmd-go-to-download-page"/>
<menuitem command="downloadsCmd_copyLocation"
data-l10n-id="downloads-cmd-copy-download-link"/>
<menuseparator/>
<menuitem command="cmd_delete"
class="downloadRemoveFromHistoryMenuItem"
data-l10n-id="downloads-cmd-remove-from-history"/>
<menuitem command="downloadsCmd_clearList"
data-l10n-id="downloads-cmd-clear-list"/>
<menuitem command="downloadsCmd_clearDownloads"
hidden="true"
data-l10n-id="downloads-cmd-clear-downloads"/>
</menupopup>
<panelmultiview id="downloadsPanel-multiView"
mainViewId="downloadsPanel-mainView">
<panelview id="downloadsPanel-mainView">
<vbox class="panel-view-body-unscrollable">
<richlistbox id="downloadsListBox"
data-l10n-id="downloads-panel-list"
data-l10n-attrs="style"
context="downloadsContextMenu"
onmouseover="DownloadsView.onDownloadMouseOver(event);"
onmouseout="DownloadsView.onDownloadMouseOut(event);"
oncontextmenu="DownloadsView.onDownloadContextMenu(event);"
ondragstart="DownloadsView.onDownloadDragStart(event);"/>
<description id="emptyDownloads"
data-l10n-id="downloads-panel-empty"/>
</vbox>
<vbox id="downloadsFooter">
<stack>
<hbox id="downloadsSummary"
align="center"
orient="horizontal"
onkeydown="DownloadsSummary.onKeyDown(event);"
onclick="DownloadsSummary.onClick(event);">
<image class="downloadTypeIcon" />
<vbox pack="center"
flex="1"
class="downloadContainer">
<description id="downloadsSummaryDescription"/>
<html:progress id="downloadsSummaryProgress"
class="downloadProgress"
max="100"/>
<description id="downloadsSummaryDetails"
crop="end"/>
</vbox>
</hbox>
<hbox id="downloadsFooterButtons"
class="panel-footer">
<button id="downloadsHistory"
data-l10n-id="downloads-history"
class="downloadsPanelFooterButton"
flex="1"
oncommand="DownloadsPanel.showDownloadsHistory();"
pack="start"/>
</hbox>
</stack>
</vbox>
</panelview>
<panelview id="downloadsPanel-blockedSubview"
data-l10n-id="downloads-details"
descriptionheightworkaround="true"
class="PanelUI-subView">
<vbox class="panel-view-body-unscrollable">
<description id="downloadsPanel-blockedSubview-title"/>
<description id="downloadsPanel-blockedSubview-details1"/>
<description id="downloadsPanel-blockedSubview-details2"/>
</vbox>
<hbox id="downloadsPanel-blockedSubview-buttons"
class="panel-footer"
align="stretch">
<button id="downloadsPanel-blockedSubview-openButton"
class="downloadsPanelFooterButton"
command="downloadsCmd_unblockAndOpen"
flex="1"/>
<button id="downloadsPanel-blockedSubview-deleteButton"
class="downloadsPanelFooterButton"
oncommand="DownloadsBlockedSubview.confirmBlock();"
default="true"
flex="1"/>
</hbox>
</panelview>
<panelview id="PanelUI-downloads" class="PanelUI-subView">
<vbox class="panel-subview-body">
<toolbarbutton id="appMenu-library-downloads-show-button"
data-l10n-id="downloads-cmd-show-downloads"
class="subviewbutton subviewbutton-iconic"
closemenu="none"
oncommand="DownloadsSubview.onShowDownloads(this);"/>
<toolbarseparator/>
<toolbaritem id="panelMenu_downloadsMenu"
orient="vertical"
smoothscroll="false"
flatList="true"
tooltip="bhTooltip">
<!-- downloads menu items will go here -->
</toolbaritem>
</vbox>
<toolbarbutton id="PanelUI-downloadsMore"
data-l10n-id="downloads-history"
class="panel-subview-footer subviewbutton"
oncommand="BrowserDownloadsUI(); CustomizableUI.hidePanelForNode(this);"/>
</panelview>
</panelmultiview>
</panel>