| OLD | NEW |
| 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_tab_restore_service_delegate.h" | 5 #include "chrome/browser/ui/browser_tab_restore_service_delegate.h" |
| 6 | 6 |
| 7 #include "chrome/browser/ui/browser.h" | 7 #include "chrome/browser/ui/browser.h" |
| 8 #include "chrome/browser/ui/browser_commands.h" | 8 #include "chrome/browser/ui/browser_commands.h" |
| 9 #include "chrome/browser/ui/browser_finder.h" | 9 #include "chrome/browser/ui/browser_finder.h" |
| 10 #include "chrome/browser/ui/browser_tabrestore.h" | 10 #include "chrome/browser/ui/browser_tabrestore.h" |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 95 extension_app_id, storage_namespace, user_agent_override); | 95 extension_app_id, storage_namespace, user_agent_override); |
| 96 | 96 |
| 97 return sessions::ContentLiveTab::FromWebContents(web_contents); | 97 return sessions::ContentLiveTab::FromWebContents(web_contents); |
| 98 } | 98 } |
| 99 | 99 |
| 100 void BrowserTabRestoreServiceDelegate::CloseTab() { | 100 void BrowserTabRestoreServiceDelegate::CloseTab() { |
| 101 chrome::CloseTab(browser_); | 101 chrome::CloseTab(browser_); |
| 102 } | 102 } |
| 103 | 103 |
| 104 // static | 104 // static |
| 105 TabRestoreServiceDelegate* BrowserTabRestoreServiceDelegate::Create( | 105 sessions::TabRestoreServiceDelegate* BrowserTabRestoreServiceDelegate::Create( |
| 106 Profile* profile, | 106 Profile* profile, |
| 107 chrome::HostDesktopType host_desktop_type, | 107 chrome::HostDesktopType host_desktop_type, |
| 108 const std::string& app_name) { | 108 const std::string& app_name) { |
| 109 Browser* browser; | 109 Browser* browser; |
| 110 if (app_name.empty()) { | 110 if (app_name.empty()) { |
| 111 browser = new Browser(Browser::CreateParams(profile, host_desktop_type)); | 111 browser = new Browser(Browser::CreateParams(profile, host_desktop_type)); |
| 112 } else { | 112 } else { |
| 113 // Only trusted app popup windows should ever be restored. | 113 // Only trusted app popup windows should ever be restored. |
| 114 browser = new Browser( | 114 browser = new Browser( |
| 115 Browser::CreateParams::CreateForApp( | 115 Browser::CreateParams::CreateForApp( |
| 116 app_name, true /* trusted_source */, gfx::Rect(), profile, | 116 app_name, true /* trusted_source */, gfx::Rect(), profile, |
| 117 host_desktop_type)); | 117 host_desktop_type)); |
| 118 } | 118 } |
| 119 if (browser) | 119 if (browser) |
| 120 return browser->tab_restore_service_delegate(); | 120 return browser->tab_restore_service_delegate(); |
| 121 else | 121 else |
| 122 return NULL; | 122 return NULL; |
| 123 } | 123 } |
| 124 | 124 |
| 125 // static | 125 // static |
| 126 TabRestoreServiceDelegate* | 126 sessions::TabRestoreServiceDelegate* |
| 127 BrowserTabRestoreServiceDelegate::FindDelegateForWebContents( | 127 BrowserTabRestoreServiceDelegate::FindDelegateForWebContents( |
| 128 const WebContents* contents) { | 128 const WebContents* contents) { |
| 129 Browser* browser = chrome::FindBrowserWithWebContents(contents); | 129 Browser* browser = chrome::FindBrowserWithWebContents(contents); |
| 130 return browser ? browser->tab_restore_service_delegate() : nullptr; | 130 return browser ? browser->tab_restore_service_delegate() : nullptr; |
| 131 } | 131 } |
| 132 | 132 |
| 133 // static | 133 // static |
| 134 TabRestoreServiceDelegate* BrowserTabRestoreServiceDelegate::FindDelegateWithID( | 134 sessions::TabRestoreServiceDelegate* |
| 135 BrowserTabRestoreServiceDelegate::FindDelegateWithID( |
| 135 SessionID::id_type desired_id, | 136 SessionID::id_type desired_id, |
| 136 chrome::HostDesktopType host_desktop_type) { | 137 chrome::HostDesktopType host_desktop_type) { |
| 137 Browser* browser = chrome::FindBrowserWithID(desired_id); | 138 Browser* browser = chrome::FindBrowserWithID(desired_id); |
| 138 return (browser && browser->host_desktop_type() == host_desktop_type) ? | 139 return (browser && browser->host_desktop_type() == host_desktop_type) ? |
| 139 browser->tab_restore_service_delegate() : NULL; | 140 browser->tab_restore_service_delegate() : NULL; |
| 140 } | 141 } |
| OLD | NEW |