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

Side by Side Diff: chrome/browser/chrome_content_browser_client.cc

Issue 27408004: <webview>: Resolve relative paths as chrome-extension: URLs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed creis's comments Created 7 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/browser/chrome_content_browser_client.h" 5 #include "chrome/browser/chrome_content_browser_client.h"
6 6
7 #include <set> 7 #include <set>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 824 matching lines...) Expand 10 before | Expand all | Expand 10 after
835 scoped_ptr<base::DictionaryValue> extra_params) { 835 scoped_ptr<base::DictionaryValue> extra_params) {
836 if (opener_web_contents) { 836 if (opener_web_contents) {
837 GuestView* guest = GuestView::FromWebContents(opener_web_contents); 837 GuestView* guest = GuestView::FromWebContents(opener_web_contents);
838 if (!guest) { 838 if (!guest) {
839 NOTREACHED(); 839 NOTREACHED();
840 return; 840 return;
841 } 841 }
842 842
843 // Create a new GuestView of the same type as the opener. 843 // Create a new GuestView of the same type as the opener.
844 *guest_delegate = 844 *guest_delegate =
845 GuestView::Create(guest_web_contents, guest->GetViewType()); 845 GuestView::Create(guest_web_contents,
846 guest->extension_id(),
847 guest->GetViewType());
846 return; 848 return;
847 } 849 }
848 850
849 if (!extra_params) { 851 if (!extra_params) {
850 NOTREACHED(); 852 NOTREACHED();
851 return; 853 return;
852 } 854 }
853 std::string api_type; 855 std::string api_type;
854 extra_params->GetString(guestview::kParameterApi, &api_type); 856 extra_params->GetString(guestview::kParameterApi, &api_type);
855 857
858 if (api_type.empty())
859 return;
860
856 *guest_delegate = 861 *guest_delegate =
857 GuestView::Create(guest_web_contents, 862 GuestView::Create(guest_web_contents,
863 std::string() /* extension_id */,
858 GuestView::GetViewTypeFromString(api_type)); 864 GuestView::GetViewTypeFromString(api_type));
859 } 865 }
860 866
861 void ChromeContentBrowserClient::GuestWebContentsAttached( 867 void ChromeContentBrowserClient::GuestWebContentsAttached(
862 WebContents* guest_web_contents, 868 WebContents* guest_web_contents,
863 WebContents* embedder_web_contents, 869 WebContents* embedder_web_contents,
864 const GURL& embedder_frame_url, 870 const GURL& embedder_frame_url,
865 const base::DictionaryValue& extra_params) { 871 const base::DictionaryValue& extra_params) {
866 Profile* profile = Profile::FromBrowserContext( 872 Profile* profile = Profile::FromBrowserContext(
867 embedder_web_contents->GetBrowserContext()); 873 embedder_web_contents->GetBrowserContext());
(...skipping 1770 matching lines...) Expand 10 before | Expand all | Expand 10 after
2638 return IsExtensionOrSharedModuleWhitelisted(url, extension_set, 2644 return IsExtensionOrSharedModuleWhitelisted(url, extension_set,
2639 allowed_file_handle_origins_) || 2645 allowed_file_handle_origins_) ||
2640 IsHostAllowedByCommandLine(url, extension_set, 2646 IsHostAllowedByCommandLine(url, extension_set,
2641 switches::kAllowNaClFileHandleAPI); 2647 switches::kAllowNaClFileHandleAPI);
2642 #else 2648 #else
2643 return false; 2649 return false;
2644 #endif 2650 #endif
2645 } 2651 }
2646 2652
2647 } // namespace chrome 2653 } // namespace chrome
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698