devtools/client/netmonitor/netmonitor.xul
author Wes Kocher <wkocher@mozilla.com>
Fri, 03 Jun 2016 14:01:27 -0700
changeset 339376 ab5e81678aaae8da42e11e8daf118e2a9c90baac
parent 339366 572ebec612e811adc0333a3b486bc25b680957bb
child 339399 a58743e540f5894ce8d802784bbd16737f5ae2c3
permissions -rw-r--r--
Backed out 3 changesets (bug 1134073) because maybe it broke the clipboard tests Backed out changeset a43d99734390 (bug 1134073) Backed out changeset 572ebec612e8 (bug 1134073) Backed out changeset f12a69ba9122 (bug 1134073)

<?xml version="1.0" encoding="utf-8"?>
<!-- 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://global/skin/" type="text/css"?>
<?xml-stylesheet href="chrome://devtools/content/shared/widgets/widgets.css" type="text/css"?>
<?xml-stylesheet href="chrome://devtools/content/netmonitor/netmonitor.css" type="text/css"?>
<?xml-stylesheet href="chrome://devtools/skin/widgets.css" type="text/css"?>
<?xml-stylesheet href="chrome://devtools/skin/netmonitor.css" type="text/css"?>
<!DOCTYPE window [
  <!ENTITY % netmonitorDTD SYSTEM "chrome://devtools/locale/netmonitor.dtd">
  %netmonitorDTD;
  <!ENTITY % certManagerDTD SYSTEM "chrome://pippki/locale/certManager.dtd">
  %certManagerDTD;
]>

<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
        xmlns:html="http://www.w3.org/1999/xhtml">

  <script type="application/javascript;version=1.8"
          src="chrome://devtools/content/shared/theme-switching.js"/>
  <script type="text/javascript" src="netmonitor-controller.js"/>
  <script type="text/javascript" src="netmonitor-view.js"/>

  <popupset id="networkPopupSet">
    <menupopup id="network-request-popup">
      <menuitem id="request-menu-context-copy-url"
                label="&netmonitorUI.context.copyUrl;"
                accesskey="&netmonitorUI.context.copyUrl.accesskey;"/>
      <menuitem id="request-menu-context-copy-url-params"
                label="&netmonitorUI.context.copyUrlParams;"
                accesskey="&netmonitorUI.context.copyUrlParams.accesskey;"
                oncommand="NetMonitorView.RequestsMenu.copyUrlParams();"/>
      <menuitem id="request-menu-context-copy-post-data"
                label="&netmonitorUI.context.copyPostData;"
                accesskey="&netmonitorUI.context.copyPostData.accesskey;"
                oncommand="NetMonitorView.RequestsMenu.copyPostData();"/>
      <menuitem id="request-menu-context-copy-as-curl"
                label="&netmonitorUI.context.copyAsCurl;"
                accesskey="&netmonitorUI.context.copyAsCurl.accesskey;"
                oncommand="NetMonitorView.RequestsMenu.copyAsCurl();"/>
      <menuseparator class="request-menu-context-separator"/>
      <menuitem id="request-menu-context-copy-request-headers"
                label="&netmonitorUI.context.copyRequestHeaders;"
                accesskey="&netmonitorUI.context.copyRequestHeaders.accesskey;"
                oncommand="NetMonitorView.RequestsMenu.copyRequestHeaders();"/>
      <menuitem id="response-menu-context-copy-response-headers"
                label="&netmonitorUI.context.copyResponseHeaders;"
                accesskey="&netmonitorUI.context.copyResponseHeaders.accesskey;"
                oncommand="NetMonitorView.RequestsMenu.copyResponseHeaders();"/>
      <menuitem id="request-menu-context-copy-response"
                label="&netmonitorUI.context.copyResponse;"
                accesskey="&netmonitorUI.context.copyResponse.accesskey;"/>
      <menuitem id="request-menu-context-copy-image-as-data-uri"
                label="&netmonitorUI.context.copyImageAsDataUri;"
                accesskey="&netmonitorUI.context.copyImageAsDataUri.accesskey;"/>
      <menuseparator class="request-menu-context-separator"/>
      <menuitem id="request-menu-context-copy-all-as-har"
                label="&netmonitorUI.context.copyAllAsHar;"
                accesskey="&netmonitorUI.context.copyAllAsHar.accesskey;"
                oncommand="NetMonitorView.RequestsMenu.copyAllAsHar();"/>
      <menuitem id="request-menu-context-save-all-as-har"
                label="&netmonitorUI.context.saveAllAsHar;"
                accesskey="&netmonitorUI.context.saveAllAsHar.accesskey;"
                oncommand="NetMonitorView.RequestsMenu.saveAllAsHar();"/>
      <menuseparator class="request-menu-context-separator"/>
      <menuitem id="request-menu-context-resend"
                label="&netmonitorUI.summary.editAndResend;"
                accesskey="&netmonitorUI.summary.editAndResend.accesskey;"/>
      <menuseparator class="request-menu-context-separator"/>
      <menuitem id="request-menu-context-newtab"
                label="&netmonitorUI.context.newTab;"
                accesskey="&netmonitorUI.context.newTab.accesskey;"/>
      <menuitem id="request-menu-context-perf"
                label="&netmonitorUI.context.perfTools;"
                accesskey="&netmonitorUI.context.perfTools.accesskey;"/>
    </menupopup>
  </popupset>

  <commandset>
    <command id="freeTextFilterCommand"
             oncommand="NetMonitorView.RequestsMenu.freetextFilterBox.focus()"/>
  </commandset>

  <keyset>
    <key id="freeTextFilterKey"
         key="&netmonitorUI.footer.filterFreetext.key;"
         modifiers="accel"
         command="freeTextFilterCommand"/>
  </keyset>

  <deck id="body" class="theme-sidebar" flex="1">

    <vbox id="network-inspector-view" flex="1">
      <hbox id="netmonitor-toolbar" class="devtools-toolbar">
        <toolbarbutton id="requests-menu-clear-button"
                       class="devtools-toolbarbutton devtools-clear-icon"
                       tooltiptext="&netmonitorUI.footer.clear;"/>
        <hbox id="requests-menu-filter-buttons">
          <button id="requests-menu-filter-all-button"
                  class="requests-menu-filter-button"
                  checked="true"
                  data-key="all"
                  label="&netmonitorUI.footer.filterAll;">
          </button>
          <button id="requests-menu-filter-html-button"
                  class="requests-menu-filter-button"
                  data-key="html"
                  label="&netmonitorUI.footer.filterHTML;">
          </button>
          <button id="requests-menu-filter-css-button"
                  class="requests-menu-filter-button"
                  data-key="css"
                  label="&netmonitorUI.footer.filterCSS;">
          </button>
          <button id="requests-menu-filter-js-button"
                  class="requests-menu-filter-button"
                  data-key="js"
                  label="&netmonitorUI.footer.filterJS;">
          </button>
          <button id="requests-menu-filter-xhr-button"
                  class="requests-menu-filter-button"
                  data-key="xhr"
                  label="&netmonitorUI.footer.filterXHR;">
          </button>
          <button id="requests-menu-filter-fonts-button"
                  class="requests-menu-filter-button"
                  data-key="fonts"
                  label="&netmonitorUI.footer.filterFonts;">
          </button>
          <button id="requests-menu-filter-images-button"
                  class="requests-menu-filter-button"
                  data-key="images"
                  label="&netmonitorUI.footer.filterImages;">
          </button>
          <button id="requests-menu-filter-media-button"
                  class="requests-menu-filter-button"
                  data-key="media"
                  label="&netmonitorUI.footer.filterMedia;">
          </button>
          <button id="requests-menu-filter-flash-button"
                  class="requests-menu-filter-button"
                  data-key="flash"
                  label="&netmonitorUI.footer.filterFlash;">
          </button>
          <button id="requests-menu-filter-ws-button"
                  class="requests-menu-filter-button"
                  data-key="ws"
                  label="&netmonitorUI.footer.filterWS;">
          </button>
          <button id="requests-menu-filter-other-button"
                  class="requests-menu-filter-button"
                  data-key="other"
                  label="&netmonitorUI.footer.filterOther;">
          </button>
        </hbox>
        <spacer id="requests-menu-spacer"
                flex="1"/>
        <toolbarbutton id="requests-menu-network-summary-button"
                       class="devtools-toolbarbutton icon-and-text"
                       tooltiptext="&netmonitorUI.footer.perf;"/>
        <textbox id="requests-menu-filter-freetext-text"
                 class="devtools-searchinput"
                 type="search"
                 required="true"
                 placeholder="&netmonitorUI.footer.filterFreetext.label;"/>
        <toolbarbutton id="details-pane-toggle"
                       class="devtools-toolbarbutton"
                       tooltiptext="&netmonitorUI.panesButton.tooltip;"
                       disabled="true"
                       tabindex="0"/>
      </hbox>
      <hbox id="network-table-and-sidebar"
            class="devtools-responsive-container"
            flex="1">
        <vbox id="network-table" flex="1" class="devtools-main-content">
          <toolbar id="requests-menu-toolbar"
                   class="devtools-toolbar"
                   align="center">
            <hbox id="toolbar-labels" flex="1">
              <hbox id="requests-menu-status-header-box"
                    class="requests-menu-header requests-menu-status"
                    align="center">
                <button id="requests-menu-status-button"
                        class="requests-menu-header-button requests-menu-status"
                        data-key="status"
                        label="&netmonitorUI.toolbar.status3;"
                        flex="1">
                </button>
              </hbox>
              <hbox id="requests-menu-method-header-box"
                    class="requests-menu-header requests-menu-method"
                    align="center">
                <button id="requests-menu-method-button"
                        class="requests-menu-header-button requests-menu-method"
                        data-key="method"
                        label="&netmonitorUI.toolbar.method;"
                        crop="end"
                        flex="1">
                </button>
              </hbox>
              <hbox id="requests-menu-icon-and-file-header-box"
                    class="requests-menu-header requests-menu-icon-and-file"
                    align="center">
                <button id="requests-menu-file-button"
                        class="requests-menu-header-button requests-menu-file"
                        data-key="file"
                        label="&netmonitorUI.toolbar.file;"
                        crop="end"
                        flex="1">
                </button>
              </hbox>
              <hbox id="requests-menu-domain-header-box"
                    class="requests-menu-header requests-menu-security-and-domain"
                    align="center">
                <button id="requests-menu-domain-button"
                        class="requests-menu-header-button requests-menu-security-and-domain"
                        data-key="domain"
                        label="&netmonitorUI.toolbar.domain;"
                        crop="end"
                        flex="1">
                </button>
              </hbox>
              <hbox id="requests-menu-type-header-box"
                    class="requests-menu-header requests-menu-type"
                    align="center">
                <button id="requests-menu-type-button"
                        class="requests-menu-header-button requests-menu-type"
                        data-key="type"
                        label="&netmonitorUI.toolbar.type;"
                        crop="end"
                        flex="1">
                </button>
              </hbox>
              <hbox id="requests-menu-transferred-header-box"
                    class="requests-menu-header requests-menu-transferred"
                    align="center">
                <button id="requests-menu-transferred-button"
                        class="requests-menu-header-button requests-menu-transferred"
                        data-key="transferred"
                        label="&netmonitorUI.toolbar.transferred;"
                        crop="end"
                        flex="1">
                </button>
              </hbox>
              <hbox id="requests-menu-size-header-box"
                    class="requests-menu-header requests-menu-size"
                    align="center">
                <button id="requests-menu-size-button"
                        class="requests-menu-header-button requests-menu-size"
                        data-key="size"
                        label="&netmonitorUI.toolbar.size;"
                        crop="end"
                        flex="1">
                </button>
              </hbox>
              <hbox id="requests-menu-waterfall-header-box"
                    class="requests-menu-header requests-menu-waterfall"
                    align="center"
                    flex="1">
                <button id="requests-menu-waterfall-button"
                        class="requests-menu-header-button requests-menu-waterfall"
                        data-key="waterfall"
                        pack="start"
                        label="&netmonitorUI.toolbar.waterfall;"
                        flex="1">
                  <image id="requests-menu-waterfall-image"/>
                  <box id="requests-menu-waterfall-label-wrapper">
                    <label id="requests-menu-waterfall-label"
                           class="plain requests-menu-waterfall"
                           value="&netmonitorUI.toolbar.waterfall;"/>
                  </box>
                </button>
              </hbox>
            </hbox>
          </toolbar>

          <vbox id="requests-menu-empty-notice"
                class="side-menu-widget-empty-text">
            <hbox id="notice-reload-message" align="center">
              <label value="&netmonitorUI.reloadNotice1;"/>
              <button id="requests-menu-reload-notice-button"
                      class="devtools-toolbarbutton"
                      standalone="true"
                      label="&netmonitorUI.reloadNotice2;"/>
              <label value="&netmonitorUI.reloadNotice3;"/>
            </hbox>
            <hbox id="notice-perf-message" align="center">
              <label value="&netmonitorUI.perfNotice1;"/>
              <button id="requests-menu-perf-notice-button"
                      standalone="true"
                      label="&netmonitorUI.perfNotice3;"
                      class="devtools-toolbarbutton"/>
              <label value="&netmonitorUI.perfNotice2;"/>
            </hbox>
          </vbox>

          <vbox id="requests-menu-contents" flex="1" context="network-request-popup">
            <hbox id="requests-menu-item-template" hidden="true">
              <hbox class="requests-menu-subitem requests-menu-status"
                    align="center">
                <box class="requests-menu-status-icon"/>
                <label class="plain requests-menu-status-code"
                       crop="end"/>
              </hbox>
              <hbox class="requests-menu-subitem requests-menu-method-box"
                    align="center">
                <label class="plain requests-menu-method"
                       crop="end"
                       flex="1"/>
              </hbox>
              <hbox class="requests-menu-subitem requests-menu-icon-and-file"
                    align="center">
                <image class="requests-menu-icon" hidden="true"/>
                <label class="plain requests-menu-file"
                       crop="end"
                       flex="1"/>
              </hbox>
              <hbox class="requests-menu-subitem requests-menu-security-and-domain"
                    align="center">
                <image class="requests-security-state-icon" />
                <label class="plain requests-menu-domain"
                       crop="end"
                       flex="1"/>
              </hbox>
              <label class="plain requests-menu-subitem requests-menu-type"
                     crop="end"/>
              <label class="plain requests-menu-subitem requests-menu-transferred"
                     crop="end"/>
              <label class="plain requests-menu-subitem requests-menu-size"
                     crop="end"/>
              <hbox class="requests-menu-subitem requests-menu-waterfall"
                    align="center"
                    flex="1">
                <hbox class="requests-menu-timings"
                      align="center">
                  <label class="plain requests-menu-timings-total"/>
                </hbox>
              </hbox>
            </hbox>
          </vbox>
        </vbox>

        <splitter id="network-inspector-view-splitter"
                  class="devtools-side-splitter"/>

        <deck id="details-pane"
              hidden="true">
          <vbox id="custom-pane"
                class="tabpanel-content">
            <hbox align="baseline">
              <label value="&netmonitorUI.custom.newRequest;"
                     class="plain tabpanel-summary-label
                            custom-header"/>
              <hbox flex="1" pack="end"
                    class="devtools-toolbarbutton-group">
                <button id="custom-request-send-button"
                        class="devtools-toolbarbutton"
                        label="&netmonitorUI.custom.send;"/>
                <button id="custom-request-close-button"
                        class="devtools-toolbarbutton"
                        label="&netmonitorUI.custom.cancel;"/>
              </hbox>
            </hbox>
            <hbox id="custom-method-and-url"
                  class="tabpanel-summary-container"
                  align="center">
              <textbox id="custom-method-value"
                       data-key="method"/>
              <textbox id="custom-url-value"
                       flex="1"
                       data-key="url"/>
            </hbox>
            <vbox id="custom-query"
                  class="tabpanel-summary-container custom-section">
              <label class="plain tabpanel-summary-label"
                     value="&netmonitorUI.custom.query;"/>
              <textbox id="custom-query-value"
                       class="tabpanel-summary-input"
                       multiline="true"
                       rows="4"
                       wrap="off"
                       data-key="query"/>
            </vbox>
            <vbox id="custom-headers"
                  class="tabpanel-summary-container custom-section">
              <label class="plain tabpanel-summary-label"
                     value="&netmonitorUI.custom.headers;"/>
              <textbox id="custom-headers-value"
                       class="tabpanel-summary-input"
                       multiline="true"
                       rows="8"
                       wrap="off"
                       data-key="headers"/>
            </vbox>
            <vbox id="custom-postdata"
                  class="tabpanel-summary-container custom-section">
              <label class="plain tabpanel-summary-label"
                     value="&netmonitorUI.custom.postData;"/>
              <textbox id="custom-postdata-value"
                       class="tabpanel-summary-input"
                       multiline="true"
                       rows="6"
                       wrap="off"
                       data-key="body"/>
            </vbox>
          </vbox>
          <tabbox id="event-details-pane"
                  class="devtools-sidebar-tabs"
                  handleCtrlTab="false">
            <tabs>
              <tab id="headers-tab"
                   crop="end"
                   label="&netmonitorUI.tab.headers;"/>
              <tab id="cookies-tab"
                   crop="end"
                   label="&netmonitorUI.tab.cookies;"/>
              <tab id="params-tab"
                   crop="end"
                   label="&netmonitorUI.tab.params;"/>
              <tab id="response-tab"
                   crop="end"
                   label="&netmonitorUI.tab.response;"/>
              <tab id="timings-tab"
                   crop="end"
                   label="&netmonitorUI.tab.timings;"/>
              <tab id="security-tab"
                   crop="end"
                   label="&netmonitorUI.tab.security;"/>
              <tab id="preview-tab"
                   crop="end"
                   label="&netmonitorUI.tab.preview;"/>
            </tabs>
            <tabpanels flex="1">
              <tabpanel id="headers-tabpanel"
                        class="tabpanel-content">
                <vbox flex="1">
                  <hbox id="headers-summary-url"
                        class="tabpanel-summary-container"
                        align="center">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.summary.url;"/>
                    <textbox id="headers-summary-url-value"
                             class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                             flex="1"
                             readonly="true"/>
                  </hbox>
                  <hbox id="headers-summary-method"
                        class="tabpanel-summary-container"
                        align="center">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.summary.method;"/>
                    <label id="headers-summary-method-value"
                           class="plain tabpanel-summary-value devtools-monospace"
                           crop="end"
                           flex="1"/>
                  </hbox>
                  <hbox id="headers-summary-address"
                        class="tabpanel-summary-container"
                        align="center">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.summary.address;"/>
                    <textbox id="headers-summary-address-value"
                             class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                             flex="1"
                             readonly="true"/>
                  </hbox>
                  <hbox id="headers-summary-status"
                        class="tabpanel-summary-container"
                        align="center">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.summary.status;"/>
                    <box id="headers-summary-status-circle"
                         class="requests-menu-status-icon"/>
                    <label id="headers-summary-status-value"
                           class="plain tabpanel-summary-value devtools-monospace"
                           crop="end"
                           flex="1"/>
                    <button id="headers-summary-resend"
                            class="devtools-toolbarbutton"
                            label="&netmonitorUI.summary.editAndResend;"/>
                    <button id="toggle-raw-headers"
                            class="devtools-toolbarbutton"
                            label="&netmonitorUI.summary.rawHeaders;"/>
                  </hbox>
                  <hbox id="headers-summary-version"
                        class="tabpanel-summary-container"
                        align="center">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.summary.version;"/>
                    <label id="headers-summary-version-value"
                           class="plain tabpanel-summary-value devtools-monospace"
                           crop="end"
                           flex="1"/>
                  </hbox>
                  <hbox id="raw-headers"
                        class="tabpanel-summary-container"
                        align="center"
                        hidden="true">
                    <vbox id="raw-request-headers-textarea-box" flex="1" hidden="false">
                      <label class="plain tabpanel-summary-label"
                        value="&netmonitorUI.summary.rawHeaders.requestHeaders;"/>
                      <textbox id="raw-request-headers-textarea"
                        class="raw-response-textarea"
                        flex="1" multiline="true" readonly="true"/>
                    </vbox>
                    <vbox id="raw-response-headers-textarea-box" flex="1" hidden="false">
                      <label class="plain tabpanel-summary-label"
                        value="&netmonitorUI.summary.rawHeaders.responseHeaders;"/>
                      <textbox id="raw-response-headers-textarea"
                        class="raw-response-textarea"
                        flex="1" multiline="true" readonly="true"/>
                    </vbox>
                  </hbox>
                  <vbox id="all-headers" flex="1"/>
                </vbox>
              </tabpanel>
              <tabpanel id="cookies-tabpanel"
                        class="tabpanel-content">
                <vbox flex="1">
                  <vbox id="all-cookies" flex="1"/>
                </vbox>
              </tabpanel>
              <tabpanel id="params-tabpanel"
                        class="tabpanel-content">
                <vbox flex="1">
                  <vbox id="request-params-box" flex="1" hidden="true">
                    <vbox id="request-params" flex="1"/>
                  </vbox>
                  <vbox id="request-post-data-textarea-box" flex="1" hidden="true">
                    <vbox id="request-post-data-textarea" flex="1"/>
                  </vbox>
                </vbox>
              </tabpanel>
              <tabpanel id="response-tabpanel"
                        class="tabpanel-content">
                <vbox flex="1">
                  <label id="response-content-info-header"/>
                  <vbox id="response-content-json-box" flex="1" hidden="true">
                    <vbox id="response-content-json" flex="1" context="network-response-popup" />
                  </vbox>
                  <vbox id="response-content-textarea-box" flex="1" hidden="true">
                    <vbox id="response-content-textarea" flex="1"/>
                  </vbox>
                  <vbox id="response-content-image-box" flex="1" hidden="true">
                    <image id="response-content-image"/>
                    <hbox>
                      <label class="plain tabpanel-summary-label"
                             value="&netmonitorUI.response.name;"/>
                      <label id="response-content-image-name-value"
                             class="plain tabpanel-summary-value devtools-monospace"
                             crop="end"
                             flex="1"/>
                    </hbox>
                    <hbox>
                      <label class="plain tabpanel-summary-label"
                             value="&netmonitorUI.response.dimensions;"/>
                      <label id="response-content-image-dimensions-value"
                             class="plain tabpanel-summary-value devtools-monospace"
                             crop="end"
                             flex="1"/>
                    </hbox>
                    <hbox>
                      <label class="plain tabpanel-summary-label"
                             value="&netmonitorUI.response.mime;"/>
                      <label id="response-content-image-mime-value"
                             class="plain tabpanel-summary-value devtools-monospace"
                             crop="end"
                             flex="1"/>
                    </hbox>
                  </vbox>
                </vbox>
              </tabpanel>
              <tabpanel id="timings-tabpanel"
                        class="tabpanel-content">
                <vbox flex="1">
                  <hbox id="timings-summary-blocked"
                        class="tabpanel-summary-container"
                        align="center">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.timings.blocked;"/>
                    <hbox class="requests-menu-timings-box blocked"/>
                    <label class="plain requests-menu-timings-total"/>
                  </hbox>
                  <hbox id="timings-summary-dns"
                        class="tabpanel-summary-container"
                        align="center">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.timings.dns;"/>
                    <hbox class="requests-menu-timings-box dns"/>
                    <label class="plain requests-menu-timings-total"/>
                  </hbox>
                  <hbox id="timings-summary-connect"
                        class="tabpanel-summary-container"
                        align="center">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.timings.connect;"/>
                    <hbox class="requests-menu-timings-box connect"/>
                    <label class="plain requests-menu-timings-total"/>
                  </hbox>
                  <hbox id="timings-summary-send"
                        class="tabpanel-summary-container"
                        align="center">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.timings.send;"/>
                    <hbox class="requests-menu-timings-box send"/>
                    <label class="plain requests-menu-timings-total"/>
                  </hbox>
                  <hbox id="timings-summary-wait"
                        class="tabpanel-summary-container"
                        align="center">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.timings.wait;"/>
                    <hbox class="requests-menu-timings-box wait"/>
                    <label class="plain requests-menu-timings-total"/>
                  </hbox>
                  <hbox id="timings-summary-receive"
                        class="tabpanel-summary-container"
                        align="center">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.timings.receive;"/>
                    <hbox class="requests-menu-timings-box receive"/>
                    <label class="plain requests-menu-timings-total"/>
                  </hbox>
                </vbox>
              </tabpanel>
              <tabpanel id="security-tabpanel"
                        class="tabpanel-content">
                  <vbox id="security-error"
                        class="tabpanel-summary-container"
                        flex="1">
                    <label class="plain tabpanel-summary-label"
                           value="&netmonitorUI.security.error;"/>
                    <hbox class="security-info-section"
                          flex="1">
                      <textbox id="security-error-message"
                               class="plain"
                               flex="1"
                               multiline="true"
                               readonly="true"/>
                    </hbox>
                  </vbox>
                  <vbox id="security-information"
                        flex="1">
                    <vbox id="security-info-connection"
                          class="tabpanel-summary-container">
                      <label class="plain tabpanel-summary-label"
                             value="&netmonitorUI.security.connection;"/>
                      <vbox class="security-info-section">
                        <hbox id="security-protocol-version"
                              class="tabpanel-summary-container"
                              align="baseline">
                          <label class="plain tabpanel-summary-label"
                                 value="&netmonitorUI.security.protocolVersion;"/>
                          <textbox id="security-protocol-version-value"
                                   class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                   flex="1"
                                   readonly="true"/>
                        </hbox>
                        <hbox id="security-ciphersuite"
                              class="tabpanel-summary-container"
                              align="baseline">
                          <label class="plain tabpanel-summary-label"
                                 value="&netmonitorUI.security.cipherSuite;"/>
                          <textbox id="security-ciphersuite-value"
                                   class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                   flex="1"
                                   readonly="true"/>
                          <image class="security-warning-icon"
                                 id="security-warning-cipher"
                                 tooltiptext="&netmonitorUI.security.warning.cipher;" />
                        </hbox>
                      </vbox>
                    </vbox>
                    <vbox id="security-info-domain"
                          class="tabpanel-summary-container">
                      <label class="plain tabpanel-summary-label"
                             id="security-info-host-header"/>
                      <vbox class="security-info-section">
                        <hbox id="security-http-strict-transport-security"
                              class="tabpanel-summary-container"
                              align="baseline">
                          <label class="plain tabpanel-summary-label"
                                 value="&netmonitorUI.security.hsts;"/>
                          <textbox id="security-http-strict-transport-security-value"
                                   class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                   flex="1"
                                   readonly="true"/>
                        </hbox>
                        <hbox id="security-public-key-pinning"
                              class="tabpanel-summary-container"
                              align="baseline">
                          <label class="plain tabpanel-summary-label"
                                 value="&netmonitorUI.security.hpkp;"/>
                          <textbox id="security-public-key-pinning-value"
                                   class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                   flex="1"
                                   readonly="true"/>
                        </hbox>
                      </vbox>
                    </vbox>
                    <vbox id="security-info-certificate"
                          class="tabpanel-summary-container">
                        <label class="plain tabpanel-summary-label"
                               value="&netmonitorUI.security.certificate;"/>
                      <vbox class="security-info-section">
                        <vbox class="tabpanel-summary-container">
                          <label class="plain tabpanel-summary-label"
                                 value="&certmgr.subjectinfo.label;" flex="1"/>
                        </vbox>
                        <vbox class="security-info-section">
                          <hbox class="tabpanel-summary-container"
                                align="baseline">
                            <label class="plain tabpanel-summary-label"
                                   value="&certmgr.certdetail.cn;:"/>
                            <textbox id="security-cert-subject-cn"
                                     class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                     flex="1"
                                     readonly="true"/>
                          </hbox>
                          <hbox class="tabpanel-summary-container"
                                align="baseline">
                            <label class="plain tabpanel-summary-label"
                                   value="&certmgr.certdetail.o;:"/>
                            <textbox id="security-cert-subject-o"
                                     class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                     flex="1"
                                     readonly="true"/>
                          </hbox>
                          <hbox class="tabpanel-summary-container"
                                align="baseline">
                            <label class="plain tabpanel-summary-label"
                                   value="&certmgr.certdetail.ou;:"/>
                            <textbox id="security-cert-subject-ou"
                                     class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                     flex="1"
                                     readonly="true"/>
                          </hbox>
                        </vbox>
                        <vbox class="tabpanel-summary-container">
                          <label class="plain tabpanel-summary-label"
                                 value="&certmgr.issuerinfo.label;" flex="1"/>
                        </vbox>
                        <vbox class="security-info-section">
                          <hbox class="tabpanel-summary-container"
                                align="baseline">
                            <label class="plain tabpanel-summary-label"
                                   value="&certmgr.certdetail.cn;:"/>
                            <textbox id="security-cert-issuer-cn"
                                     class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                     flex="1"
                                     readonly="true"/>
                          </hbox>
                          <hbox class="tabpanel-summary-container"
                                align="baseline">
                            <label class="plain tabpanel-summary-label"
                                   value="&certmgr.certdetail.o;:"/>
                            <textbox id="security-cert-issuer-o"
                                     class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                     flex="1"
                                     readonly="true"/>
                          </hbox>
                          <hbox class="tabpanel-summary-container"
                                align="baseline">
                            <label class="plain tabpanel-summary-label"
                                   value="&certmgr.certdetail.ou;:"/>
                            <textbox id="security-cert-issuer-ou"
                                     class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                     flex="1"
                                     readonly="true"/>
                          </hbox>
                        </vbox>
                        <vbox class="tabpanel-summary-container">
                          <label class="plain tabpanel-summary-label"
                                 value="&certmgr.periodofvalidity.label;" flex="1"/>
                        </vbox>
                        <vbox class="security-info-section">
                          <hbox class="tabpanel-summary-container"
                                align="baseline">
                            <label class="plain tabpanel-summary-label"
                                   value="&certmgr.begins;:"/>
                            <textbox id="security-cert-validity-begins"
                                     class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                     flex="1"
                                     readonly="true"/>
                          </hbox>
                          <hbox class="tabpanel-summary-container"
                                align="baseline">
                            <label class="plain tabpanel-summary-label"
                                   value="&certmgr.expires;:"/>
                            <textbox id="security-cert-validity-expires"
                                     class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                     flex="1"
                                     readonly="true"/>
                          </hbox>
                        </vbox>
                        <vbox class="tabpanel-summary-container">
                          <label class="plain tabpanel-summary-label"
                                 value="&certmgr.fingerprints.label;" flex="1"/>
                        </vbox>
                        <vbox class="security-info-section">
                          <hbox class="tabpanel-summary-container"
                                align="baseline">
                            <label class="plain tabpanel-summary-label"
                                   value="&certmgr.certdetail.sha256fingerprint;:"/>
                            <textbox id="security-cert-sha256-fingerprint"
                                     class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                     flex="1"
                                     readonly="true"/>
                          </hbox>
                          <hbox class="tabpanel-summary-container"
                                align="baseline">
                            <label class="plain tabpanel-summary-label"
                                   value="&certmgr.certdetail.sha1fingerprint;:"/>
                            <textbox id="security-cert-sha1-fingerprint"
                                     class="plain tabpanel-summary-value devtools-monospace cropped-textbox"
                                     flex="1"
                                     readonly="true"/>
                          </hbox>
                        </vbox>
                      </vbox>
                    </vbox>
                  </vbox>
              </tabpanel>
              <tabpanel id="preview-tabpanel"
                        class="tabpanel-content">
                <html:iframe id="response-preview"
                             frameborder="0"
                             sandbox=""/>
              </tabpanel>
            </tabpanels>
          </tabbox>
        </deck>
      </hbox>

    </vbox>

    <box id="network-statistics-view">
      <toolbar id="network-statistics-toolbar"
               class="devtools-toolbar">
        <button id="network-statistics-back-button"
                class="devtools-toolbarbutton"
                label="&netmonitorUI.backButton;"/>
      </toolbar>
      <box id="network-statistics-charts"
           class="devtools-responsive-container"
           flex="1">
        <vbox id="primed-cache-chart" pack="center" flex="1"/>
        <splitter id="network-statistics-view-splitter"
                  class="devtools-side-splitter"/>
        <vbox id="empty-cache-chart" pack="center" flex="1"/>
      </box>
    </box>

  </deck>

</window>