blob: 162e95f286c72c81721c7ef2b4b95813cc2eeb3a [file] [log] [blame]
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef COMPONENTS_SEARCH_ENGINES_DESKTOP_SEARCH_WIN_H_
#define COMPONENTS_SEARCH_ENGINES_DESKTOP_SEARCH_WIN_H_
#include "base/feature_list.h"
#include "base/strings/string16.h"
class GURL;
class PrefService;
class SearchTermsData;
namespace user_prefs {
class PrefRegistrySyncable;
}
namespace prefs {
// Name of the Windows desktop search redirection preference.
extern const char kWindowsDesktopSearchRedirectionPref[];
}
// Windows desktop search redirection feature. This is exposed in the header
// file so that it can be referenced from about_flags.cc.
extern const base::Feature kWindowsDesktopSearchRedirectionFeature;
// Registers the Windows desktop search redirection preference into |registry|.
void RegisterWindowsDesktopSearchRedirectionPref(
user_prefs::PrefRegistrySyncable* registry);
// Indicates whether Windows desktop searches should be redirected to the
// default search engine. This is only true when both the preference and the
// feature are enabled. The preference value is read from |pref_service|.
bool ShouldRedirectWindowsDesktopSearchToDefaultSearchEngine(
PrefService* pref_service);
// Detects whether a URL comes from a Windows Desktop search. If so, puts the
// search terms in |search_terms| and returns true.
bool DetectWindowsDesktopSearch(const GURL& url,
const SearchTermsData& search_terms_data,
base::string16* search_terms);
#endif // COMPONENTS_SEARCH_ENGINES_DESKTOP_SEARCH_WIN_H_