blob: bd8161476ba370f12d1d3089fbc9a1e0a0c0a93e [file] [log] [blame] [edit]
// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef COMPONENTS_OMNIBOX_BROWSER_PAGE_CLASSIFICATION_FUNCTIONS_H_
#define COMPONENTS_OMNIBOX_BROWSER_PAGE_CLASSIFICATION_FUNCTIONS_H_
#include "third_party/metrics_proto/omnibox_event.pb.h"
namespace omnibox {
// Return true, if supplied page classification is a new tab page.
bool IsNTPPage(::metrics::OmniboxEventProto::PageClassification classification);
// Return true, if supplied page classification is a search results page.
bool IsSearchResultsPage(
::metrics::OmniboxEventProto::PageClassification classification);
// Return true, if supplied page classification is neither a new tab page or
// search results page.
bool IsOtherWebPage(
::metrics::OmniboxEventProto::PageClassification classification);
// Return true, if supplied page classification is a Lens contextual searchbox.
bool IsLensContextualSearchbox(
::metrics::OmniboxEventProto::PageClassification classification);
// Return true, if supplied page classification is a Lens unimodal, multimodal,
// or contextual searchbox.
bool IsLensSearchbox(
::metrics::OmniboxEventProto::PageClassification classification);
// Return true, if supplied page classification is a Chrome Custom Tab.
bool IsCustomTab(
::metrics::OmniboxEventProto::PageClassification classification);
// Return true, if supplied page classification is the Android Hub searchbox.
bool IsAndroidHub(
::metrics::OmniboxEventProto::PageClassification classification);
// Return true, if page classification is a WebUI searchbox. This is specific
// to WebUI searchboxes that don't use the omnibox popup view (the WebUI
// Omnibox is not included in this).
bool IsWebUISearchbox(
::metrics::OmniboxEventProto::PageClassification classification);
// Checks (and asserts in development builds) if Page Classification is
// obsolete and should not be used.
void CheckObsoletePageClass(
::metrics::OmniboxEventProto::PageClassification classification);
// Return true, if supplied page classification supports most visited sites
// provider.
bool SupportsMostVisitedSites(
::metrics::OmniboxEventProto::PageClassification classification);
} // namespace omnibox
#endif // COMPONENTS_OMNIBOX_BROWSER_PAGE_CLASSIFICATION_FUNCTIONS_H_