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 3 // found in the LICENSE file. 4 5 #include "chrome/browser/ui/tabs/tab_strip_model_utils.h" 6 7 #include "chrome/browser/history/top_sites.h" 8 #include "chrome/browser/ui/tabs/tab_strip_model.h" 9 #include "content/public/browser/web_contents.h" 10 11 namespace chrome { 12 13 int IndexOfFirstBlockedTab(const TabStripModel* model) { 14 DCHECK(model); 15 for (int i = 0; i < model->count(); ++i) { 16 if (model->IsTabBlocked(i)) 17 return i; 18 } 19 // No blocked tabs. 20 return model->count(); 21 } 22 23 void GetOpenUrls(const TabStripModel& tabs, 24 const history::TopSites& top_sites, 25 std::set<std::string>* urls) { 26 for (int i = 0; i < tabs.count(); ++i) { 27 content::WebContents* web_contents = tabs.GetWebContentsAt(i); 28 if (web_contents) 29 urls->insert(top_sites.GetCanonicalURLString(web_contents->GetURL())); 30 } 31 } 32 33 } // namespace chrome 34