OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/renderer/external_extension.h" | 5 #include "chrome/renderer/external_extension.h" |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "chrome/common/chrome_switches.h" | 8 #include "chrome/common/chrome_switches.h" |
9 #include "chrome/renderer/render_view.h" | 9 #include "chrome/renderer/render_view.h" |
10 #include "third_party/WebKit/WebKit/chromium/public/WebFrame.h" | 10 #include "third_party/WebKit/WebKit/chromium/public/WebFrame.h" |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
117 v8::Handle<v8::Value> ExternalExtensionWrapper::IsSearchProviderInstalled( | 117 v8::Handle<v8::Value> ExternalExtensionWrapper::IsSearchProviderInstalled( |
118 const v8::Arguments& args) { | 118 const v8::Arguments& args) { |
119 if (!args.Length()) return v8::Undefined(); | 119 if (!args.Length()) return v8::Undefined(); |
120 | 120 |
121 std::string name = std::string(*v8::String::Utf8Value(args[0])); | 121 std::string name = std::string(*v8::String::Utf8Value(args[0])); |
122 if (!name.length()) return v8::Undefined(); | 122 if (!name.length()) return v8::Undefined(); |
123 | 123 |
124 RenderView* render_view = GetRenderView(); | 124 RenderView* render_view = GetRenderView(); |
125 if (!render_view) return v8::Undefined(); | 125 if (!render_view) return v8::Undefined(); |
126 | 126 |
| 127 WebFrame* webframe = WebFrame::frameForEnteredContext(); |
| 128 if (!webframe) return v8::Undefined(); |
| 129 |
127 ViewHostMsg_GetSearchProviderInstallState_Params install | 130 ViewHostMsg_GetSearchProviderInstallState_Params install |
128 = render_view->GetSearchProviderInstallState(name); | 131 = render_view->GetSearchProviderInstallState(webframe, name); |
129 if (install.state == | 132 if (install.state == |
130 ViewHostMsg_GetSearchProviderInstallState_Params::DENIED) { | 133 ViewHostMsg_GetSearchProviderInstallState_Params::DENIED) { |
131 // FIXME: throw access denied exception. | 134 // FIXME: throw access denied exception. |
132 return v8::ThrowException(v8::Exception::Error(v8::String::Empty())); | 135 return v8::ThrowException(v8::Exception::Error(v8::String::Empty())); |
133 } | 136 } |
134 return v8::Integer::New(install.state); | 137 return v8::Integer::New(install.state); |
135 } | 138 } |
136 | 139 |
137 v8::Extension* ExternalExtension::Get() { | 140 v8::Extension* ExternalExtension::Get() { |
138 return new ExternalExtensionWrapper(); | 141 return new ExternalExtensionWrapper(); |
139 } | 142 } |
140 | 143 |
141 } // namespace extensions_v8 | 144 } // namespace extensions_v8 |
OLD | NEW |