Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(23)

Side by Side Diff: extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc

Issue 706823004: OOP PDF: Change the save toolbar button to match the save menu behavior. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@embedded-pdfs
Patch Set: rebase Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "content/public/browser/browser_thread.h" 8 #include "content/public/browser/browser_thread.h"
9 #include "content/public/browser/render_process_host.h" 9 #include "content/public/browser/render_process_host.h"
10 #include "content/public/common/url_constants.h" 10 #include "content/public/common/url_constants.h"
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
71 const GURL& embedder_site_url, 71 const GURL& embedder_site_url,
72 const base::DictionaryValue& create_params, 72 const base::DictionaryValue& create_params,
73 const WebContentsCreatedCallback& callback) { 73 const WebContentsCreatedCallback& callback) {
74 std::string orig_mime_type; 74 std::string orig_mime_type;
75 create_params.GetString(mime_handler_view::kMimeType, &orig_mime_type); 75 create_params.GetString(mime_handler_view::kMimeType, &orig_mime_type);
76 DCHECK(!orig_mime_type.empty()); 76 DCHECK(!orig_mime_type.empty());
77 77
78 std::string extension_src; 78 std::string extension_src;
79 create_params.GetString(mime_handler_view::kSrc, &extension_src); 79 create_params.GetString(mime_handler_view::kSrc, &extension_src);
80 DCHECK(!extension_src.empty()); 80 DCHECK(!extension_src.empty());
81 std::string content_url_str;
82 create_params.GetString(mime_handler_view::kContentUrl, &content_url_str);
83 content_url_ = GURL(content_url_str);
84 if (!content_url_.is_valid()) {
85 content_url_ = GURL();
86 callback.Run(nullptr);
87 return;
88 }
81 89
82 GURL mime_handler_extension_url(extension_src); 90 GURL mime_handler_extension_url(extension_src);
83 if (!mime_handler_extension_url.is_valid()) { 91 if (!mime_handler_extension_url.is_valid()) {
84 callback.Run(NULL); 92 callback.Run(NULL);
85 return; 93 return;
86 } 94 }
87 95
88 const Extension* mime_handler_extension = 96 const Extension* mime_handler_extension =
89 // TODO(lazyboy): Do we need handle the case where the extension is 97 // TODO(lazyboy): Do we need handle the case where the extension is
90 // terminated (ExtensionRegistry::TERMINATED)? 98 // terminated (ExtensionRegistry::TERMINATED)?
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
177 return; 185 return;
178 186
179 embedder_web_contents()->GetDelegate()->FindReply(embedder_web_contents(), 187 embedder_web_contents()->GetDelegate()->FindReply(embedder_web_contents(),
180 request_id, 188 request_id,
181 number_of_matches, 189 number_of_matches,
182 selection_rect, 190 selection_rect,
183 active_match_ordinal, 191 active_match_ordinal,
184 final_update); 192 final_update);
185 } 193 }
186 194
195 bool MimeHandlerViewGuest::SaveFrame(const GURL& url,
196 const content::Referrer& referrer) {
197 if (!attached())
198 return false;
199
200 embedder_web_contents()->SaveFrame(content_url_, referrer);
201 return true;
202 }
203
187 bool MimeHandlerViewGuest::OnMessageReceived(const IPC::Message& message) { 204 bool MimeHandlerViewGuest::OnMessageReceived(const IPC::Message& message) {
188 bool handled = true; 205 bool handled = true;
189 IPC_BEGIN_MESSAGE_MAP(MimeHandlerViewGuest, message) 206 IPC_BEGIN_MESSAGE_MAP(MimeHandlerViewGuest, message)
190 IPC_MESSAGE_HANDLER(ExtensionHostMsg_Request, OnRequest) 207 IPC_MESSAGE_HANDLER(ExtensionHostMsg_Request, OnRequest)
191 IPC_MESSAGE_UNHANDLED(handled = false) 208 IPC_MESSAGE_UNHANDLED(handled = false)
192 IPC_END_MESSAGE_MAP() 209 IPC_END_MESSAGE_MAP()
193 return handled; 210 return handled;
194 } 211 }
195 212
196 void MimeHandlerViewGuest::OnRequest( 213 void MimeHandlerViewGuest::OnRequest(
197 const ExtensionHostMsg_Request_Params& params) { 214 const ExtensionHostMsg_Request_Params& params) {
198 if (extension_function_dispatcher_) { 215 if (extension_function_dispatcher_) {
199 extension_function_dispatcher_->Dispatch( 216 extension_function_dispatcher_->Dispatch(
200 params, web_contents()->GetRenderViewHost()); 217 params, web_contents()->GetRenderViewHost());
201 } 218 }
202 } 219 }
203 220
204 } // namespace extensions 221 } // namespace extensions
OLDNEW
« no previous file with comments | « extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h ('k') | extensions/common/extension_messages.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698