baf7cc78589865fd81cb30c1850f05f201cea2af
[WebKit-https.git] / Source / WebCore / inspector / front-end / InspectorFrontendHostStub.js
1 /*
2  * Copyright (C) 2009 Google Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions are
6  * met:
7  *
8  *     * Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  *     * Redistributions in binary form must reproduce the above
11  * copyright notice, this list of conditions and the following disclaimer
12  * in the documentation and/or other materials provided with the
13  * distribution.
14  *     * Neither the name of Google Inc. nor the names of its
15  * contributors may be used to endorse or promote products derived from
16  * this software without specific prior written permission.
17  *
18  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29  */
30
31 if (!window.InspectorFrontendHost) {
32
33 WebInspector.InspectorFrontendHostStub = function()
34 {
35     this._attachedWindowHeight = 0;
36 }
37
38 WebInspector._platformFlavor = WebInspector.PlatformFlavor.MacLeopard;
39
40 WebInspector.InspectorFrontendHostStub.prototype = {
41     platform: function()
42     {
43         var match = navigator.userAgent.match(/Windows NT/);
44         if (match)
45             return "windows";
46         match = navigator.userAgent.match(/Mac OS X/);
47         if (match)
48             return "mac";
49         return "linux";
50     },
51
52     port: function()
53     {
54         return "unknown";
55     },
56
57     bringToFront: function()
58     {
59         this._windowVisible = true;
60     },
61
62     closeWindow: function()
63     {
64         this._windowVisible = false;
65     },
66
67     disconnectFromBackend: function()
68     {
69         this._windowVisible = false;
70     },
71
72     attach: function()
73     {
74     },
75
76     detach: function()
77     {
78     },
79
80     search: function(sourceRow, query)
81     {
82     },
83
84     setAttachedWindowHeight: function(height)
85     {
86     },
87
88     moveWindowBy: function(x, y)
89     {
90     },
91
92     setExtensionAPI: function(script)
93     {
94     },
95
96     loaded: function()
97     {
98     },
99
100     localizedStringsURL: function()
101     {
102         return undefined;
103     },
104
105     hiddenPanels: function()
106     {
107         return "";
108     },
109
110     inspectedURLChanged: function(url)
111     {
112     },
113
114     copyText: function()
115     {
116     },
117
118     saveAs: function(fileName, content)
119     {
120         var builder = new WebKitBlobBuilder();
121         builder.append(content);
122         var blob = builder.getBlob("application/octet-stream");
123     
124         var fr = new FileReader();
125         fr.onload = function(e) {
126             // Force download
127             window.location = this.result;
128         }
129         fr.readAsDataURL(blob);
130     },
131
132     canAttachWindow: function()
133     {
134         return false;
135     },
136
137     sendMessageToBackend: function(message)
138     {
139     },
140
141     saveSessionSetting: function(key, value)
142     {
143     },
144
145     loadSessionSetting: function(key)
146     {
147     },
148
149     recordActionTaken: function(actionCode)
150     {
151     },
152
153     recordPanelShown: function(panelCode)
154     {
155     },
156
157     recordSettingChanged: function(settingCode)
158     {
159     }
160 }
161
162 InspectorFrontendHost = new WebInspector.InspectorFrontendHostStub();
163
164 }