#include "chrome/browser/ui/singleton_tabs.h"
#include "chrome/browser/autocomplete/chrome_autocomplete_provider_client.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/search/search.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_list.h"
#include "chrome/browser/ui/browser_navigator.h"
#include "chrome/browser/ui/browser_navigator_params.h"
#include "chrome/browser/ui/scoped_tabbed_browser_displayer.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/common/url_constants.h"
#include "content/public/browser/browser_url_handler.h"
#include "content/public/browser/web_contents.h"
#if BUILDFLAG(IS_CHROMEOS_ASH)
#include "ash/constants/ash_switches.h"
#include "chrome/browser/ash/crosapi/browser_util.h"
#include "chrome/browser/ash/url_handler/url_handler.h"
#endif
namespace {
bool CompareURLsWithReplacements(const GURL& url,
const GURL& other,
const GURL::Replacements& replacements,
ChromeAutocompleteProviderClient* client) { … }
}
void ShowSingletonTab(Profile* profile, const GURL& url) { … }
void ShowSingletonTab(Browser* browser, const GURL& url) { … }
void ShowSingletonTabOverwritingNTP(
Profile* profile,
const GURL& url,
NavigateParams::PathBehavior path_behavior) { … }
void ShowSingletonTabOverwritingNTP(
Browser* browser,
const GURL& url,
NavigateParams::PathBehavior path_behavior) { … }
void ShowSingletonTabOverwritingNTP(NavigateParams* params) { … }
NavigateParams GetSingletonTabNavigateParams(Browser* browser,
const GURL& url) { … }
int GetIndexOfExistingTab(Browser* browser, const NavigateParams& params) { … }
std::pair<Browser*, int> GetIndexAndBrowserOfExistingTab(
Profile* profile,
const NavigateParams& params) { … }