| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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/webplugin_delegate_proxy.h" | 5 #include "chrome/renderer/webplugin_delegate_proxy.h" |
| 6 | 6 |
| 7 #include "build/build_config.h" | 7 #include "build/build_config.h" |
| 8 | 8 |
| 9 #if defined(OS_WIN) | 9 #if defined(OS_WIN) |
| 10 #include <atlbase.h> | 10 #include <atlbase.h> |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 GURL url_; | 153 GURL url_; |
| 154 bool notify_needed_; | 154 bool notify_needed_; |
| 155 intptr_t notify_data_; | 155 intptr_t notify_data_; |
| 156 // Set to true if the response expected is a multibyte response. | 156 // Set to true if the response expected is a multibyte response. |
| 157 // For e.g. response for a HTTP byte range request. | 157 // For e.g. response for a HTTP byte range request. |
| 158 bool multibyte_response_expected_; | 158 bool multibyte_response_expected_; |
| 159 }; | 159 }; |
| 160 | 160 |
| 161 WebPluginDelegateProxy::WebPluginDelegateProxy( | 161 WebPluginDelegateProxy::WebPluginDelegateProxy( |
| 162 const std::string& mime_type, | 162 const std::string& mime_type, |
| 163 const std::string& clsid, | |
| 164 const base::WeakPtr<RenderView>& render_view) | 163 const base::WeakPtr<RenderView>& render_view) |
| 165 : render_view_(render_view), | 164 : render_view_(render_view), |
| 166 plugin_(NULL), | 165 plugin_(NULL), |
| 167 windowless_(false), | 166 windowless_(false), |
| 168 window_(NULL), | 167 window_(NULL), |
| 169 mime_type_(mime_type), | 168 mime_type_(mime_type), |
| 170 clsid_(clsid), | |
| 171 npobject_(NULL), | 169 npobject_(NULL), |
| 172 window_script_object_(NULL), | 170 window_script_object_(NULL), |
| 173 sad_plugin_(NULL), | 171 sad_plugin_(NULL), |
| 174 invalidate_pending_(false), | 172 invalidate_pending_(false), |
| 175 transparent_(false), | 173 transparent_(false), |
| 176 page_url_(render_view_->webview()->GetMainFrame()->url()) { | 174 page_url_(render_view_->webview()->GetMainFrame()->url()) { |
| 177 } | 175 } |
| 178 | 176 |
| 179 WebPluginDelegateProxy::~WebPluginDelegateProxy() { | 177 WebPluginDelegateProxy::~WebPluginDelegateProxy() { |
| 180 } | 178 } |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 218 } | 216 } |
| 219 | 217 |
| 220 bool WebPluginDelegateProxy::Initialize(const GURL& url, | 218 bool WebPluginDelegateProxy::Initialize(const GURL& url, |
| 221 const std::vector<std::string>& arg_name
s, | 219 const std::vector<std::string>& arg_name
s, |
| 222 const std::vector<std::string>& arg_valu
es, | 220 const std::vector<std::string>& arg_valu
es, |
| 223 webkit_glue::WebPlugin* plugin, | 221 webkit_glue::WebPlugin* plugin, |
| 224 bool load_manually) { | 222 bool load_manually) { |
| 225 IPC::ChannelHandle channel_handle; | 223 IPC::ChannelHandle channel_handle; |
| 226 WebPluginInfo info; | 224 WebPluginInfo info; |
| 227 if (!RenderThread::current()->Send(new ViewHostMsg_OpenChannelToPlugin( | 225 if (!RenderThread::current()->Send(new ViewHostMsg_OpenChannelToPlugin( |
| 228 url, mime_type_, clsid_, webkit_glue::GetWebKitLocale(), | 226 url, mime_type_, webkit_glue::GetWebKitLocale(), |
| 229 &channel_handle, &info))) { | 227 &channel_handle, &info))) { |
| 230 return false; | 228 return false; |
| 231 } | 229 } |
| 232 | 230 |
| 233 #if defined(OS_POSIX) | 231 #if defined(OS_POSIX) |
| 234 if (channel_handle.name.empty()) { | 232 if (channel_handle.name.empty()) { |
| 235 // We got an invalid handle. Possibly the plugin process is stale? In any | 233 // We got an invalid handle. Possibly the plugin process is stale? In any |
| 236 // case, don't try to connect to it, the empty name represents the host | 234 // case, don't try to connect to it, the empty name represents the host |
| 237 // channel, and connecting to it again does bad things. | 235 // channel, and connecting to it again does bad things. |
| 238 return false; | 236 return false; |
| (...skipping 830 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1069 intptr_t existing_stream, bool notify_needed, intptr_t notify_data) { | 1067 intptr_t existing_stream, bool notify_needed, intptr_t notify_data) { |
| 1070 plugin_->InitiateHTTPRangeRequest(url.c_str(), range_info.c_str(), | 1068 plugin_->InitiateHTTPRangeRequest(url.c_str(), range_info.c_str(), |
| 1071 existing_stream, notify_needed, | 1069 existing_stream, notify_needed, |
| 1072 notify_data); | 1070 notify_data); |
| 1073 } | 1071 } |
| 1074 | 1072 |
| 1075 void WebPluginDelegateProxy::OnDeferResourceLoading(int resource_id, | 1073 void WebPluginDelegateProxy::OnDeferResourceLoading(int resource_id, |
| 1076 bool defer) { | 1074 bool defer) { |
| 1077 plugin_->SetDeferResourceLoading(resource_id, defer); | 1075 plugin_->SetDeferResourceLoading(resource_id, defer); |
| 1078 } | 1076 } |
| OLD | NEW |