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

Side by Side Diff: chrome/browser/ui/browser_navigator.cc

Issue 10920084: don't display platform app resources in normal browser windows (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 3 months 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 | Annotate | Revision Log
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/ui/browser_navigator.h" 5 #include "chrome/browser/ui/browser_navigator.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/stringprintf.h" 10 #include "base/stringprintf.h"
(...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after
319 // with it. 319 // with it.
320 bool SwapInPrerender(TabContents* target_contents, const GURL& url) { 320 bool SwapInPrerender(TabContents* target_contents, const GURL& url) {
321 prerender::PrerenderManager* prerender_manager = 321 prerender::PrerenderManager* prerender_manager =
322 prerender::PrerenderManagerFactory::GetForProfile( 322 prerender::PrerenderManagerFactory::GetForProfile(
323 target_contents->profile()); 323 target_contents->profile());
324 WebContents* web_contents = target_contents->web_contents(); 324 WebContents* web_contents = target_contents->web_contents();
325 return prerender_manager && 325 return prerender_manager &&
326 prerender_manager->MaybeUsePrerenderedPage(web_contents, url); 326 prerender_manager->MaybeUsePrerenderedPage(web_contents, url);
327 } 327 }
328 328
329 // Returns true if |url| is something we should try to avoid showing as a main
330 // frame in a normal browser window.
331 bool ShouldNotDisplayUrlInBrowser(Profile* profile, const GURL& url) {
332 ExtensionService* service = profile->GetExtensionService();
333 return service && service->ShouldNotDisplayUrlInBrowserTab(url);
334 }
335
329 } // namespace 336 } // namespace
330 337
331 namespace chrome { 338 namespace chrome {
332 339
333 NavigateParams::NavigateParams(Browser* a_browser, 340 NavigateParams::NavigateParams(Browser* a_browser,
334 const GURL& a_url, 341 const GURL& a_url,
335 content::PageTransition a_transition) 342 content::PageTransition a_transition)
336 : url(a_url), 343 : url(a_url),
337 target_contents(NULL), 344 target_contents(NULL),
338 source_contents(NULL), 345 source_contents(NULL),
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
386 393
387 void Navigate(NavigateParams* params) { 394 void Navigate(NavigateParams* params) {
388 Browser* source_browser = params->browser; 395 Browser* source_browser = params->browser;
389 if (source_browser) 396 if (source_browser)
390 params->initiating_profile = source_browser->profile(); 397 params->initiating_profile = source_browser->profile();
391 DCHECK(params->initiating_profile); 398 DCHECK(params->initiating_profile);
392 399
393 if (!AdjustNavigateParamsForURL(params)) 400 if (!AdjustNavigateParamsForURL(params))
394 return; 401 return;
395 402
403 if (ShouldNotDisplayUrlInBrowser(params->initiating_profile, params->url))
404 return;
405
396 // The browser window may want to adjust the disposition. 406 // The browser window may want to adjust the disposition.
397 if (params->disposition == NEW_POPUP && 407 if (params->disposition == NEW_POPUP &&
398 source_browser && 408 source_browser &&
399 source_browser->window()) { 409 source_browser->window()) {
400 params->disposition = 410 params->disposition =
401 source_browser->window()->GetDispositionForPopupBounds( 411 source_browser->window()->GetDispositionForPopupBounds(
402 params->window_bounds); 412 params->window_bounds);
403 } 413 }
404 414
405 // Adjust disposition for the navigation happending in the sad page of the 415 // Adjust disposition for the navigation happending in the sad page of the
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after
601 return !(url.scheme() == chrome::kChromeUIScheme && 611 return !(url.scheme() == chrome::kChromeUIScheme &&
602 (url.host() == chrome::kChromeUISettingsHost || 612 (url.host() == chrome::kChromeUISettingsHost ||
603 url.host() == chrome::kChromeUISettingsFrameHost || 613 url.host() == chrome::kChromeUISettingsFrameHost ||
604 url.host() == chrome::kChromeUIExtensionsHost || 614 url.host() == chrome::kChromeUIExtensionsHost ||
605 url.host() == chrome::kChromeUIBookmarksHost || 615 url.host() == chrome::kChromeUIBookmarksHost ||
606 url.host() == chrome::kChromeUISyncPromoHost || 616 url.host() == chrome::kChromeUISyncPromoHost ||
607 url.host() == chrome::kChromeUIUberHost)); 617 url.host() == chrome::kChromeUIUberHost));
608 } 618 }
609 619
610 } // namespace chrome 620 } // namespace chrome
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698