| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "extensions/browser/guest_view/mime_handler_view/mime_handler_view_gues
t.h" | 5 #include "extensions/browser/guest_view/mime_handler_view/mime_handler_view_gues
t.h" |
| 6 | 6 |
| 7 #include "base/strings/stringprintf.h" | 7 #include "base/strings/stringprintf.h" |
| 8 #include "components/guest_view/common/guest_view_constants.h" | 8 #include "components/guest_view/common/guest_view_constants.h" |
| 9 #include "content/public/browser/browser_thread.h" | 9 #include "content/public/browser/browser_thread.h" |
| 10 #include "content/public/browser/host_zoom_map.h" | 10 #include "content/public/browser/host_zoom_map.h" |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 72 } | 72 } |
| 73 | 73 |
| 74 MimeHandlerViewGuest::MimeHandlerViewGuest(WebContents* owner_web_contents) | 74 MimeHandlerViewGuest::MimeHandlerViewGuest(WebContents* owner_web_contents) |
| 75 : GuestView<MimeHandlerViewGuest>(owner_web_contents), | 75 : GuestView<MimeHandlerViewGuest>(owner_web_contents), |
| 76 delegate_(ExtensionsAPIClient::Get()->CreateMimeHandlerViewGuestDelegate( | 76 delegate_(ExtensionsAPIClient::Get()->CreateMimeHandlerViewGuestDelegate( |
| 77 this)) {} | 77 this)) {} |
| 78 | 78 |
| 79 MimeHandlerViewGuest::~MimeHandlerViewGuest() { | 79 MimeHandlerViewGuest::~MimeHandlerViewGuest() { |
| 80 } | 80 } |
| 81 | 81 |
| 82 const char* MimeHandlerViewGuest::GetAPINamespace() const { | 82 base::WeakPtr<StreamContainer> MimeHandlerViewGuest::GetStream() const { |
| 83 return "mimeHandlerViewGuestInternal"; | 83 if (!stream_) |
| 84 return base::WeakPtr<StreamContainer>(); |
| 85 return stream_->GetWeakPtr(); |
| 84 } | 86 } |
| 85 | 87 |
| 86 int MimeHandlerViewGuest::GetTaskPrefix() const { | |
| 87 return IDS_EXTENSION_TASK_MANAGER_MIMEHANDLERVIEW_TAG_PREFIX; | |
| 88 } | |
| 89 | 88 |
| 90 void MimeHandlerViewGuest::CreateWebContents( | 89 void MimeHandlerViewGuest::CreateWebContents( |
| 91 const base::DictionaryValue& create_params, | 90 const base::DictionaryValue& create_params, |
| 92 const WebContentsCreatedCallback& callback) { | 91 const WebContentsCreatedCallback& callback) { |
| 93 create_params.GetString(mime_handler_view::kViewId, &view_id_); | 92 create_params.GetString(mime_handler_view::kViewId, &view_id_); |
| 94 if (view_id_.empty()) { | 93 if (view_id_.empty()) { |
| 95 callback.Run(nullptr); | 94 callback.Run(nullptr); |
| 96 return; | 95 return; |
| 97 } | 96 } |
| 98 stream_ = | 97 stream_ = |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 135 } | 134 } |
| 136 | 135 |
| 137 void MimeHandlerViewGuest::DidAttachToEmbedder() { | 136 void MimeHandlerViewGuest::DidAttachToEmbedder() { |
| 138 web_contents()->GetController().LoadURL( | 137 web_contents()->GetController().LoadURL( |
| 139 stream_->handler_url(), content::Referrer(), | 138 stream_->handler_url(), content::Referrer(), |
| 140 ui::PAGE_TRANSITION_AUTO_TOPLEVEL, std::string()); | 139 ui::PAGE_TRANSITION_AUTO_TOPLEVEL, std::string()); |
| 141 web_contents()->GetMainFrame()->GetServiceRegistry()->AddService( | 140 web_contents()->GetMainFrame()->GetServiceRegistry()->AddService( |
| 142 base::Bind(&MimeHandlerServiceImpl::Create, stream_->GetWeakPtr())); | 141 base::Bind(&MimeHandlerServiceImpl::Create, stream_->GetWeakPtr())); |
| 143 } | 142 } |
| 144 | 143 |
| 144 const char* MimeHandlerViewGuest::GetAPINamespace() const { |
| 145 return "mimeHandlerViewGuestInternal"; |
| 146 } |
| 147 |
| 148 int MimeHandlerViewGuest::GetTaskPrefix() const { |
| 149 return IDS_EXTENSION_TASK_MANAGER_MIMEHANDLERVIEW_TAG_PREFIX; |
| 150 } |
| 151 |
| 145 void MimeHandlerViewGuest::DidInitialize( | 152 void MimeHandlerViewGuest::DidInitialize( |
| 146 const base::DictionaryValue& create_params) { | 153 const base::DictionaryValue& create_params) { |
| 147 ExtensionsAPIClient::Get()->AttachWebContentsHelpers(web_contents()); | 154 ExtensionsAPIClient::Get()->AttachWebContentsHelpers(web_contents()); |
| 148 } | 155 } |
| 149 | 156 |
| 150 bool MimeHandlerViewGuest::ShouldHandleFindRequestsForEmbedder() const { | 157 bool MimeHandlerViewGuest::ShouldHandleFindRequestsForEmbedder() const { |
| 151 return is_full_page_plugin(); | 158 return is_full_page_plugin(); |
| 152 } | 159 } |
| 153 | 160 |
| 154 bool MimeHandlerViewGuest::ZoomPropagatesFromEmbedderToGuest() const { | 161 bool MimeHandlerViewGuest::ZoomPropagatesFromEmbedderToGuest() const { |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 199 referrer); | 206 referrer); |
| 200 return true; | 207 return true; |
| 201 } | 208 } |
| 202 | 209 |
| 203 void MimeHandlerViewGuest::DocumentOnLoadCompletedInMainFrame() { | 210 void MimeHandlerViewGuest::DocumentOnLoadCompletedInMainFrame() { |
| 204 embedder_web_contents()->Send( | 211 embedder_web_contents()->Send( |
| 205 new ExtensionsGuestViewMsg_MimeHandlerViewGuestOnLoadCompleted( | 212 new ExtensionsGuestViewMsg_MimeHandlerViewGuestOnLoadCompleted( |
| 206 element_instance_id())); | 213 element_instance_id())); |
| 207 } | 214 } |
| 208 | 215 |
| 209 base::WeakPtr<StreamContainer> MimeHandlerViewGuest::GetStream() const { | |
| 210 if (!stream_) | |
| 211 return base::WeakPtr<StreamContainer>(); | |
| 212 return stream_->GetWeakPtr(); | |
| 213 } | |
| 214 | |
| 215 } // namespace extensions | 216 } // namespace extensions |
| OLD | NEW |