# Copyright 2016 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//components/spellcheck/spellcheck_build_features.gni")
import("//mojo/public/tools/bindings/mojom.gni")
source_set("common") {
sources = [
"spellcheck_common.cc",
"spellcheck_common.h",
"spellcheck_features.cc",
"spellcheck_features.h",
]
public_deps = [
":interfaces",
":spellcheck_result",
"//components/spellcheck:buildflags",
]
deps = [
"//base:i18n",
"//ipc",
"//third_party/icu",
]
}
# This is separated out because it is used by both the mojo interfaces below
# (see spellcheck.typemap) and by "common" above.
source_set("spellcheck_result") {
sources = [
"spellcheck_result.cc",
"spellcheck_result.h",
]
deps = [ "//base" ]
}
mojom("interfaces") {
sources = [ "spellcheck.mojom" ]
if (has_spellcheck_panel) {
sources += [ "spellcheck_panel.mojom" ]
}
public_deps = [ "//mojo/public/mojom/base" ]
enabled_features = []
if (use_browser_spellchecker) {
enabled_features += [ "USE_BROWSER_SPELLCHECKER" ]
}
if (use_renderer_spellchecker) {
enabled_features += [ "USE_RENDERER_SPELLCHECKER" ]
}
cpp_typemaps = [
{
types = [
{
mojom = "spellcheck.mojom.Decoration"
cpp = "::SpellCheckResult::Decoration"
},
{
mojom = "spellcheck.mojom.SpellCheckResult"
cpp = "::SpellCheckResult"
},
]
traits_headers = [ "spellcheck_mojom_traits.h" ]
traits_sources = [ "spellcheck_mojom_traits.cc" ]
traits_public_deps = [ "//components/spellcheck:buildflags" ]
},
]
}