# Copyright 2017 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/config/chromeos/ui_mode.gni")
import("//mojo/public/tools/bindings/mojom.gni")
import("//printing/buildflags/buildflags.gni")
mojom("mojom") {
sources = [
"pdf_nup_converter.mojom",
"pdf_render_settings.mojom",
"pdf_to_pwg_raster_converter.mojom",
"printing_service.mojom",
]
public_deps = [
"//mojo/public/mojom/base",
"//printing/mojom",
"//sandbox/policy/mojom",
"//ui/gfx/geometry/mojom",
"//url/mojom:url_mojom_gurl",
]
enabled_features = []
if (is_chromeos) {
sources += [ "pdf_flattener.mojom" ]
}
if (is_win) {
sources += [ "pdf_to_emf_converter.mojom" ]
}
if (enable_print_preview) {
enabled_features += [ "enable_print_preview" ]
}
if (enable_oop_printing) {
sources += [ "print_backend_service.mojom" ]
public_deps += [
"//printing/backend/mojom",
"//printing/mojom:printing_context",
]
if (is_win) {
sources += [ "printer_xml_parser.mojom" ]
}
if (enable_oop_basic_print_dialog) {
enabled_features += [ "enable_oop_basic_print_dialog" ]
}
}
cpp_typemaps = [
{
types = [
{
mojom = "printing.mojom.PdfRenderSettings"
cpp = "::printing::PdfRenderSettings"
},
{
mojom = "printing.mojom.PdfRenderSettings::Mode"
cpp = "::printing::PdfRenderSettings::Mode"
},
]
traits_headers = [ "pdf_render_settings_mojom_traits.h" ]
traits_sources = [ "pdf_render_settings_mojom_traits.cc" ]
traits_public_deps = [ "//printing" ]
},
{
types = [
{
mojom = "printing.mojom.PwgRasterSettings::TransformType"
cpp = "::printing::PwgRasterTransformType"
},
{
mojom = "printing.mojom.PwgRasterSettings"
cpp = "::printing::PwgRasterSettings"
},
]
traits_headers = [ "pdf_to_pwg_raster_converter_mojom_traits.h" ]
traits_sources = [ "pdf_to_pwg_raster_converter_mojom_traits.cc" ]
traits_public_deps = [
"//printing",
"//printing/mojom",
]
},
]
}