<?xml version="1.0"?> <!-- -*- Mode: SGML; indent-tabs-mode: nil -*- -->

<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<?xml-stylesheet href="chrome://global/skin/passwordmgr.css" type="text/css"?>

<!DOCTYPE dialog SYSTEM "chrome://passwordmgr/locale/passwordManager.dtd" >

<window id="SignonViewerDialog"
        windowtype="Toolkit:PasswordManager"
        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
        onload="Startup(); SignonsStartup();"
        onunload="Shutdown();"
        title="&savedPasswords.title;"
        persist="width height screenX screenY">

  <script type="application/javascript" src="chrome://passwordmgr/content/passwordManagerCommon.js"/>
  <script type="application/javascript" src="chrome://passwordmgr/content/passwordManager.js"/>

  <stringbundle id="signonBundle"
                src="chrome://passwordmgr/locale/passwordmgr.properties"/>

  <keyset>
    <key keycode="VK_ESCAPE" oncommand="window.close();"/>
    <key key="&windowClose.key;" modifiers="accel" oncommand="window.close();"/>
    <key key="&focusSearch1.key;" modifiers="accel" oncommand="FocusFilterBox();"/>
    <key key="&focusSearch2.key;" modifiers="accel" oncommand="FocusFilterBox();"/>
  </keyset>

  <popupset id="signonsTreeContextSet">
    <menupopup id="signonsTreeContextMenu"
           onpopupshowing="UpdateCopyPassword()">
      <menuitem id="context-copyusername"
                label="&copyUsernameCmd.label;"
                oncommand="CopyUsername()"/>
      <menuitem id="context-copypassword"
                label="&copyPasswordCmd.label;"
                accesskey="&copyPasswordCmd.accesskey;"
                oncommand="CopyPassword()"/>
    </menupopup>
  </popupset>

  <!-- saved signons -->
  <vbox id="savedsignons" class="contentPane" flex="1">
    <!-- filter -->
    <hbox align="center">
      <label accesskey="&filter.accesskey;" control="filter">&filter.label;</label>
      <textbox id="filter" flex="1" type="search"
               aria-controls="signonsTree"
               oncommand="_filterPasswords();"/>
    </hbox>

    <label control="signonsTree" id="signonsIntro"/>
    <separator class="thin"/>
    <tree id="signonsTree" flex="1" style="height: 20em;" hidecolumnpicker="true"
          onkeypress="HandleSignonKeyPress(event)"
          onselect="SignonSelected();"
          context="signonsTreeContextMenu">
      <treecols>
        <treecol id="siteCol" label="&treehead.site.label;" flex="5"
                 onclick="SignonColumnSort('hostname');" persist="width"
                 sortDirection="ascending"/>
        <splitter class="tree-splitter"/>
        <treecol id="userCol" label="&treehead.username.label;" flex="2"
                 onclick="SignonColumnSort('username');" persist="width"/>
        <splitter class="tree-splitter"/>
        <treecol id="passwordCol" label="&treehead.password.label;" flex="2"
                 onclick="SignonColumnSort('password');" persist="width"
                 hidden="true"/>
      </treecols>
      <treechildren/>
    </tree>
    <separator class="thin"/>
    <hbox id="SignonViewerButtons">
      <button id="removeSignon" disabled="true" icon="remove"
              label="&remove.label;" accesskey="&remove.accesskey;"
              oncommand="DeleteSignon();"/>
      <button id="removeAllSignons" icon="clear"
              label="&removeall.label;" accesskey="&removeall.accesskey;"
              oncommand="DeleteAllSignons();"/>
      <spacer flex="1"/>
      <button id="togglePasswords"
              oncommand="TogglePasswordVisible();"/>
    </hbox>
  </vbox>
  <hbox align="end">
    <hbox class="actionButtons" flex="1">
      <spacer flex="1"/>
    </hbox>
    <resizer type="window" dir="bottomend"/>
  </hbox>
</window>
