File: aboutPrivateBrowsing.xhtml

package info (click to toggle)
icedove 31.6.0-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie-kfreebsd
  • size: 1,007,612 kB
  • sloc: cpp: 3,959,977; ansic: 1,866,528; java: 219,720; python: 200,664; xml: 142,383; asm: 133,557; sh: 75,814; makefile: 27,028; perl: 26,849; objc: 4,014; yacc: 1,995; pascal: 1,024; lex: 950; exp: 449; lisp: 228; awk: 211; php: 113; sed: 43; csh: 31; ada: 16; ruby: 3
file content (135 lines) | stat: -rw-r--r-- 5,232 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
<?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/.
-->
<!DOCTYPE html [
  <!ENTITY % htmlDTD PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
  %htmlDTD;
  <!ENTITY % globalDTD SYSTEM "chrome://global/locale/global.dtd">
  %globalDTD;
  <!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
  %brandDTD;
  <!ENTITY % browserDTD SYSTEM "chrome://browser/locale/browser.dtd">
  %browserDTD;
  <!ENTITY % privatebrowsingpageDTD SYSTEM "chrome://browser/locale/aboutPrivateBrowsing.dtd">
  %privatebrowsingpageDTD;
]>

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <link rel="stylesheet" href="chrome://global/skin/netError.css" type="text/css" media="all"/>
    <link rel="stylesheet" href="chrome://browser/skin/aboutPrivateBrowsing.css" type="text/css" media="all"/>
    <style type="text/css"><![CDATA[
      body.normal .showPrivate,
      body.private .showNormal {
        display: none;
      }
    ]]></style>
    <script type="application/javascript;version=1.7"><![CDATA[
      const Cc = Components.classes;
      const Ci = Components.interfaces;

      Components.utils.import("resource://gre/modules/PrivateBrowsingUtils.jsm");

      if (!PrivateBrowsingUtils.isWindowPrivate(window)) {
        document.title = "]]>&privatebrowsingpage.title.normal;<![CDATA[";
        setFavIcon("chrome://global/skin/icons/question-16.png");
      } else {
#ifndef XP_MACOSX
        document.title = "]]>&privatebrowsingpage.title;<![CDATA[";
#endif
        setFavIcon("chrome://browser/skin/Privacy-16.png");
      }

      var mainWindow = window.QueryInterface(Ci.nsIInterfaceRequestor)
                             .getInterface(Ci.nsIWebNavigation)
                             .QueryInterface(Ci.nsIDocShellTreeItem)
                             .rootTreeItem
                             .QueryInterface(Ci.nsIInterfaceRequestor)
                             .getInterface(Ci.nsIDOMWindow);

      function setFavIcon(url) {
        var icon = document.createElement("link");
        icon.setAttribute("rel", "icon");
        icon.setAttribute("type", "image/png");
        icon.setAttribute("href", url);
        var head = document.getElementsByTagName("head")[0];
        head.insertBefore(icon, head.firstChild);
      }

      document.addEventListener("DOMContentLoaded", function () {
        if (!PrivateBrowsingUtils.isWindowPrivate(window)) {
          document.body.setAttribute("class", "normal");
        }

        // Set up the help link
        let moreInfoURL = Cc["@mozilla.org/toolkit/URLFormatterService;1"].
                          getService(Ci.nsIURLFormatter).
                          formatURLPref("app.support.baseURL");
        let moreInfoLink = document.getElementById("moreInfoLink");
        if (moreInfoLink)
          moreInfoLink.setAttribute("href", moreInfoURL + "private-browsing");
      }, false);

      function openPrivateWindow() {
        mainWindow.OpenBrowserWindow({private: true});
      }
    ]]></script>
  </head>

  <body dir="&locale.dir;"
        class="private">

    <!-- PAGE CONTAINER (for styling purposes only) -->
    <div id="errorPageContainer">

      <!-- Error Title -->
      <div id="errorTitle">
        <h1 id="errorTitleText" class="showPrivate">&privatebrowsingpage.title;</h1>
        <h1 id="errorTitleTextNormal" class="showNormal">&privatebrowsingpage.title.normal;</h1>
      </div>

      <!-- LONG CONTENT (the section most likely to require scrolling) -->
      <div id="errorLongContent">

        <!-- Short Description -->
        <div id="errorShortDesc">
          <p id="errorShortDescText" class="showPrivate">&privatebrowsingpage.perwindow.issueDesc;</p>
          <p id="errorShortDescTextNormal" class="showNormal">&privatebrowsingpage.perwindow.issueDesc.normal;</p>
        </div>

        <!-- Long Description -->
        <div id="errorLongDesc">
          <p id="errorLongDescText">&privatebrowsingpage.perwindow.description;</p>
        </div>

        <!-- Start Private Browsing -->
        <div id="startPrivateBrowsingDesc" class="showNormal">
          <button xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
                  id="startPrivateBrowsing" label="&privatebrowsingpage.openPrivateWindow.label;"
                  accesskey="&privatebrowsingpage.openPrivateWindow.accesskey;"
                  oncommand="openPrivateWindow();"/>
        </div>

        <!-- Footer -->
        <div id="footerDesc">
          <p id="footerText" class="showPrivate">&privatebrowsingpage.howToStop3;</p>
          <p id="footerTextNormal" class="showNormal">&privatebrowsingpage.howToStart4;</p>
        </div>

        <!-- More Info -->
        <div id="moreInfo" class="showPrivate">
          <p id="moreInfoText">
            &privatebrowsingpage.moreInfo;
          </p>
          <p id="moreInfoLinkContainer">
            <a id="moreInfoLink" target="_blank">&privatebrowsingpage.learnMore;</a>
          </p>
        </div>
      </div>
    </div>

  </body>
</html>