Index: chrome/browser/browser.cc |
=================================================================== |
--- chrome/browser/browser.cc (revision 54564) |
+++ chrome/browser/browser.cc (working copy) |
@@ -531,10 +531,10 @@ |
case Extension::LAUNCH_WINDOW: |
case Extension::LAUNCH_PANEL: |
tab = Browser::OpenApplicationWindow(profile, extension, container, |
- GURL(), &browser); |
+ GURL()); |
break; |
case Extension::LAUNCH_TAB: { |
- tab = Browser::OpenApplicationTab(profile, extension, &browser); |
+ tab = Browser::OpenApplicationTab(profile, extension); |
break; |
} |
default: |
@@ -542,6 +542,7 @@ |
break; |
} |
if (tab) { |
+ Browser* browser = tab->delegate()->GetBrowser(); |
if (browser && extension && extension->launch_fullscreen()) |
browser->window()->SetFullscreen(true); |
} |
@@ -553,8 +554,7 @@ |
Profile* profile, |
Extension* extension, |
Extension::LaunchContainer container, |
- const GURL& url_input, |
- Browser** browser) { |
+ const GURL& url_input) { |
GURL url; |
if (!url_input.is_empty()) { |
if (extension) |
@@ -570,15 +570,15 @@ |
RegisterAppPrefs(app_name); |
bool as_panel = extension && (container == Extension::LAUNCH_PANEL); |
- Browser* local_browser = Browser::CreateForApp(app_name, extension, profile, |
- as_panel); |
- TabContents* tab_contents = local_browser->AddTabWithURL( |
+ Browser* browser = Browser::CreateForApp(app_name, extension, profile, |
+ as_panel); |
+ TabContents* tab_contents = browser->AddTabWithURL( |
url, GURL(), PageTransition::START_PAGE, -1, TabStripModel::ADD_SELECTED, |
NULL, std::string()); |
tab_contents->GetMutableRendererPrefs()->can_accept_load_drops = false; |
tab_contents->render_view_host()->SyncRendererPrefs(); |
- local_browser->window()->Show(); |
+ browser->window()->Show(); |
// TODO(jcampan): http://crbug.com/8123 we should not need to set the initial |
// focus explicitly. |
@@ -591,42 +591,33 @@ |
// OnDidGetApplicationInfo, which calls |
// web_app::UpdateShortcutForTabContents when it sees UPDATE_SHORTCUT as |
// pending web app action. |
- local_browser->pending_web_app_action_ = UPDATE_SHORTCUT; |
+ browser->pending_web_app_action_ = UPDATE_SHORTCUT; |
} |
- if (browser) |
- *browser = local_browser; |
- |
return tab_contents; |
} |
// static |
TabContents* Browser::OpenApplicationWindow(Profile* profile, |
- GURL& url, Browser** browser) { |
- return OpenApplicationWindow(profile, NULL, Extension::LAUNCH_WINDOW, url, |
- browser); |
+ GURL& url) { |
+ return OpenApplicationWindow(profile, NULL, Extension::LAUNCH_WINDOW, url); |
} |
// static |
TabContents* Browser::OpenApplicationTab(Profile* profile, |
- Extension* extension, |
- Browser** browser) { |
- Browser* local_browser = BrowserList::GetLastActiveWithProfile(profile); |
- if (!local_browser || local_browser->type() != Browser::TYPE_NORMAL) |
+ Extension* extension) { |
+ Browser* browser = BrowserList::GetLastActiveWithProfile(profile); |
+ if (!browser || browser->type() != Browser::TYPE_NORMAL) |
return NULL; |
// TODO(erikkay): This doesn't seem like the right transition in all cases. |
PageTransition::Type transition = PageTransition::START_PAGE; |
GURL url = extension->GetFullLaunchURL(); |
TabContents* tab_contents = |
- local_browser->CreateTabContentsForURL(url, GURL(), profile, |
- transition, false, NULL); |
+ browser->CreateTabContentsForURL(url, GURL(), profile, |
+ transition, false, NULL); |
tab_contents->SetExtensionApp(extension); |
- local_browser->AddTab(tab_contents, transition); |
- |
- if (browser) |
- *browser = local_browser; |
- |
+ browser->AddTab(tab_contents, transition); |
return tab_contents; |
} |
@@ -2383,13 +2374,6 @@ |
UseVerticalTabsChanged(); |
} |
-bool Browser::LargeIconsPermitted() const { |
- // We don't show the big icons in tabs for TYPE_EXTENSION_APP windows because |
- // for those windows, we already have a big icon in the top-left outside any |
- // tab. Having big tab icons too looks kinda redonk. |
- return TYPE_EXTENSION_APP != type(); |
-} |
- |
/////////////////////////////////////////////////////////////////////////////// |
// Browser, TabStripModelObserver implementation: |
@@ -2941,6 +2925,10 @@ |
pending_web_app_action_ = NONE; |
} |
+Browser* Browser::GetBrowser() { |
+ return this; |
+} |
+ |
void Browser::ContentTypeChanged(TabContents* source) { |
if (source == GetSelectedTabContents()) |
UpdateZoomCommandsForTabState(); |
@@ -3741,7 +3729,7 @@ |
if (destination_extension->launch_container() == |
Extension::LAUNCH_WINDOW) { |
Browser::OpenApplicationWindow(profile_, destination_extension, |
- Extension::LAUNCH_WINDOW, url, NULL); |
+ Extension::LAUNCH_WINDOW, url); |
return true; |
} |
} |