Revision control
Copy as Markdown
Other Tools
<?xml version="1.0"?>
<!-- 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
<!DOCTYPE html>
<html
  id="SignonViewerDialog"
  scrolling="false"
>
  <head>
    <title data-l10n-id="saved-logins-title"></title>
    <meta
      http-equiv="Content-Security-Policy"
      content="default-src chrome:; script-src chrome: 'unsafe-inline' moz-src:; style-src chrome: 'unsafe-inline'"
    />
    <link rel="localization" href="branding/brand.ftl" />
    <link rel="localization" href="messenger/preferences/passwordManager.ftl" />
    <link
      rel="stylesheet"
    />
    <script
      defer="defer"
    ></script>
    <script
      defer="defer"
    ></script>
    <script
      defer="defer"
    ></script>
  </head>
  <html:body
  >
    <keyset>
      <key keycode="VK_ESCAPE" oncommand="escapeKeyHandler();" />
      <key
        data-l10n-id="focus-search-primary-shortcut"
        modifiers="accel"
        oncommand="FocusFilterBox();"
      />
      <key
        data-l10n-id="focus-search-alt-shortcut"
        modifiers="accel"
        oncommand="FocusFilterBox();"
      />
    </keyset>
    <popupset id="signonsTreeContextSet">
      <menupopup
        id="signonsTreeContextMenu"
        onpopupshowing="UpdateContextMenu()"
      >
        <menuitem
          id="context-copyproviderurl"
          data-l10n-id="copy-provider-url-cmd"
          oncommand="CopyProviderUrl()"
        />
        <menuseparator />
        <menuitem
          id="context-copyusername"
          data-l10n-id="copy-username-cmd"
          oncommand="CopyUsername()"
        />
        <menuitem
          id="context-editusername"
          data-l10n-id="edit-username-cmd"
          oncommand="EditCellInSelectedRow('username')"
        />
        <menuseparator />
        <menuitem
          id="context-copypassword"
          data-l10n-id="copy-password-cmd"
          oncommand="CopyPassword()"
        />
        <menuitem
          id="context-editpassword"
          data-l10n-id="edit-password-cmd"
          oncommand="EditCellInSelectedRow('password')"
        />
      </menupopup>
    </popupset>
    <!-- saved signons -->
    <vbox id="savedsignons" class="contentPane" flex="1">
      <!-- filter -->
      <hbox align="center">
        <html:input
          type="search"
          id="filter"
          aria-controls="signonsTree"
          oninput="FilterPasswords();"
          data-l10n-id="search-filter"
        />
      </hbox>
      <label control="signonsTree" id="signonsIntro" />
      <separator class="thin" />
      <tree
        id="signonsTree"
        flex="1"
        onkeypress="HandleSignonKeyPress(event)"
        onselect="SignonSelected();"
        editable="true"
        context="signonsTreeContextMenu"
      >
        <treecols>
          <treecol
            id="providerCol"
            data-l10n-id="column-heading-provider"
            data-field-name="origin"
            persist="width"
            ignoreincolumnpicker="true"
            sortDirection="ascending"
          />
          <splitter class="tree-splitter" />
          <treecol
            id="userCol"
            data-l10n-id="column-heading-username"
            ignoreincolumnpicker="true"
            data-field-name="username"
            persist="width"
          />
          <splitter class="tree-splitter" />
          <treecol
            id="passwordCol"
            data-l10n-id="column-heading-password"
            ignoreincolumnpicker="true"
            data-field-name="password"
            persist="width"
            hidden="hidden"
          />
          <splitter class="tree-splitter" />
          <treecol
            id="timeCreatedCol"
            data-l10n-id="column-heading-time-created"
            data-field-name="timeCreated"
            persist="width hidden"
            hidden="hidden"
          />
          <splitter class="tree-splitter" />
          <treecol
            id="timeLastUsedCol"
            data-l10n-id="column-heading-time-last-used"
            data-field-name="timeLastUsed"
            persist="width hidden"
            hidden="hidden"
          />
          <splitter class="tree-splitter" />
          <treecol
            id="timePasswordChangedCol"
            data-l10n-id="column-heading-time-password-changed"
            data-field-name="timePasswordChanged"
            persist="width hidden"
          />
          <splitter class="tree-splitter" />
          <treecol
            id="timesUsedCol"
            data-l10n-id="column-heading-times-used"
            data-field-name="timesUsed"
            persist="width hidden"
            hidden="hidden"
          />
          <splitter class="tree-splitter" />
        </treecols>
        <treechildren />
      </tree>
      <separator class="thin" />
      <hbox id="SignonViewerButtons">
        <button
          id="removeSignon"
          disabled="true"
          data-l10n-id="remove"
          oncommand="DeleteSignon();"
        />
        <button id="removeAllSignons" oncommand="DeleteAllSignons();" />
        <spacer flex="1" />
        <button id="togglePasswords" oncommand="TogglePasswordVisible();" />
      </hbox>
    </vbox>
    <hbox align="end">
      <hbox class="actionButtons" flex="1">
        <spacer flex="1" />
        <button
          id="closeButton"
          oncommand="window.close();"
          data-l10n-id="password-close-button"
        />
      </hbox>
    </hbox>
  </html:body>
</html>