chromium/chrome/common/search/BUILD.gn

# Copyright 2019 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//mojo/public/tools/bindings/mojom.gni")

mojom("mojo_bindings") {
  sources = [ "search.mojom" ]

  public_deps = [
    "//mojo/public/mojom/base",
    "//url/mojom:url_mojom_gurl",
  ]

  cpp_typemaps = [
    {
      types = [
        # TODO(dbeam): NTP -> Ntp.
        {
          mojom = "search.mojom.NTPLoggingEventType"
          cpp = "::NTPLoggingEventType"
        },
        {
          mojom = "search.mojom.NTPTileImpression"
          cpp = "::ntp_tiles::NTPTileImpression"
        },
        {
          mojom = "search.mojom.OmniboxFocusState"
          cpp = "::OmniboxFocusState"
        },
        {
          mojom = "search.mojom.OmniboxFocusChangeReason"
          cpp = "::OmniboxFocusChangeReason"
        },
        {
          mojom = "search.mojom.InstantMostVisitedInfo"
          cpp = "::InstantMostVisitedInfo"
        },
        {
          mojom = "search.mojom.NtpTheme"
          cpp = "::NtpTheme"
        },
        {
          mojom = "search.mojom.SearchBoxTheme"
          cpp = "::SearchBoxTheme"
        },
      ]
      traits_headers = [
        "//chrome/common/search/instant_types.h",
        "//chrome/common/search/ntp_logging_events.h",
        "//components/ntp_tiles/ntp_tile_impression.h",
        "//components/omnibox/common/omnibox_focus_state.h",
      ]
      traits_private_headers =
          [ "//chrome/common/search/instant_mojom_traits.h" ]
      traits_deps = [
        "//ipc",
        "//skia",
      ]
    },
  ]
}