<?xml version="1.0"?> <!-- -*- Mode: SGML; indent-tabs-mode: nil -*- -->
<!-- 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/. -->

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

<!DOCTYPE dialog [
<!ENTITY % managerDTD SYSTEM "chrome://communicator/locale/passwordManager.dtd">
%managerDTD;
<!ENTITY % mgrDTD SYSTEM "chrome://passwordmgr/locale/passwordManager.dtd">
%mgrDTD;
]>

<dialog id="SignonViewerDialog"
        windowtype="Toolkit:PasswordManager"
        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
        buttons="accept,help"
        buttonlabelaccept="&closebutton.label;"
        onload="Startup(); SignonsStartup(); RejectsStartup();"
        onunload="Shutdown();"
        ondialoghelp="openHelp('password_mgr', 'chrome://communicator/locale/help/suitehelp.rdf');"
        title="&windowtitle.label;"
        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"/>
  <script type="application/javascript"
          src="chrome://passwordmgr/content/passwordManagerExceptions.js"/>
  <script type="application/javascript"
          src="chrome://help/content/contextHelp.js"/>

  <stringbundle id="signonBundle"
                src="chrome://passwordmgr/locale/passwordmgr.properties"/>
  <keyset>
    <key key="&windowClose.key;" modifiers="accel" oncommand="window.close();"/>
    <key key="&focusSearch1.key;" modifiers="accel"
         oncommand="if (document.getElementById('signonsTab').selected) FocusFilterBox();"/>
  </keyset>

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

  <tabbox flex="1">
    <tabs>
      <tab id="signonsTab" label="&tab.signonsstored.label;"/>
      <tab id="signonsitesTab" label="&tab.signonsnotstored.label;"/>
    </tabs>
    <tabpanels flex="1">

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

        <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>

      <!-- rejected sites -->
      <vbox id="rejectedsites" flex="1">
        <description control="rejectsTree">&loginsSpielExceptions.label;</description>
        <separator class="thin"/>
        <tree id="rejectsTree" flex="1" style="height: 20em;" hidecolumnpicker="true"
              onkeypress="HandleRejectKeyPress(event)"
              onselect="RejectSelected();">
          <treecols>
            <treecol id="rejectCol" label="&treehead.site.label;" flex="5"
                     onclick="RejectColumnSort('host');" sortDirection="ascending"/>
          </treecols>
          <treechildren/>
        </tree>
        <separator class="thin"/>
        <hbox>
          <button id="removeReject" disabled="true" icon="remove"
                  accesskey="&remove.accesskey;"
                  label="&remove.label;" oncommand="DeleteReject();"/>
          <button id="removeAllRejects"
                  accesskey="&removeall.accesskey;"
                  icon="clear" label="&removeall.label;"
                  oncommand="DeleteAllRejects();"/>
        </hbox>
      </vbox>
    </tabpanels>
  </tabbox>
</dialog>
