| # Copyright 2015 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") |
| |
| # Normally typemap traits sources should be build directly into mojom targets |
| # via the typemap file. This target is for typemapped mojo_base types whose |
| # traits are shared between chromium and blink variants. |
| component("shared_typemap_traits") { |
| output_name = "skia_shared_typemap_traits" |
| |
| sources = [ |
| "bitmap_skbitmap_mojom_traits.cc", |
| "bitmap_skbitmap_mojom_traits.h", |
| "image_info_mojom_traits.cc", |
| "image_info_mojom_traits.h", |
| "surface_origin_mojom_traits.h", |
| ] |
| |
| defines = [ "IS_SKIA_SHARED_TRAITS_IMPL" ] |
| |
| public_deps = [ |
| "//base", |
| "//mojo/public/cpp/base:shared_typemap_traits", |
| "//skia", |
| "//skia:skcms", |
| "//skia/public/mojom:mojom_shared", |
| ] |
| } |
| |
| mojom("mojom") { |
| generate_java = true |
| sources = [ |
| "bitmap.mojom", |
| "image_info.mojom", |
| "skcolor.mojom", |
| "skcolor4f.mojom", |
| "skcolorspace.mojom", |
| "skcolorspace_primaries.mojom", |
| "surface_origin.mojom", |
| "tile_mode.mojom", |
| ] |
| |
| public_deps = [ "//mojo/public/mojom/base" ] |
| |
| shared_skia_cpp_typemaps = [ |
| { |
| types = [ |
| { |
| mojom = "skia.mojom.TileMode" |
| cpp = "::SkTileMode" |
| }, |
| ] |
| traits_headers = [ "tile_mode_mojom_traits.h" ] |
| traits_public_deps = [ "//skia" ] |
| }, |
| { |
| types = [ |
| { |
| mojom = "skia.mojom.BitmapN32" |
| cpp = "::SkBitmap" |
| nullable_is_same_type = true |
| }, |
| { |
| mojom = "skia.mojom.BitmapWithArbitraryBpp" |
| cpp = "::SkBitmap" |
| nullable_is_same_type = true |
| }, |
| { |
| mojom = "skia.mojom.BitmapWithArbitraryBpp" |
| cpp = "::SkBitmap" |
| nullable_is_same_type = true |
| }, |
| { |
| mojom = "skia.mojom.BitmapMappedFromTrustedProcess" |
| cpp = "::SkBitmap" |
| nullable_is_same_type = true |
| }, |
| { |
| mojom = "skia.mojom.InlineBitmap" |
| cpp = "::SkBitmap" |
| nullable_is_same_type = true |
| }, |
| ] |
| traits_headers = [ "bitmap_skbitmap_mojom_traits.h" ] |
| traits_public_deps = [ |
| ":shared_typemap_traits", |
| "//skia", |
| ] |
| }, |
| { |
| types = [ |
| { |
| mojom = "skia.mojom.SkcmsMatrix3x3" |
| cpp = "::skcms_Matrix3x3" |
| }, |
| ] |
| traits_headers = [ "skcolorspace_mojom_traits.h" ] |
| traits_public_deps = [ "//skia" ] |
| }, |
| { |
| types = [ |
| { |
| mojom = "skia.mojom.SkcmsTransferFunction" |
| cpp = "::skcms_TransferFunction" |
| }, |
| ] |
| traits_headers = [ "skcolorspace_mojom_traits.h" ] |
| traits_public_deps = [ "//skia" ] |
| }, |
| { |
| types = [ |
| { |
| mojom = "skia.mojom.SkColor" |
| cpp = "::SkColor" |
| copyable_pass_by_value = true |
| }, |
| ] |
| traits_headers = [ "skcolor_mojom_traits.h" ] |
| traits_public_deps = [ "//skia" ] |
| }, |
| { |
| types = [ |
| { |
| mojom = "skia.mojom.SkColor4f" |
| cpp = "::SkColor4f" |
| }, |
| ] |
| traits_headers = [ "skcolor4f_mojom_traits.h" ] |
| traits_public_deps = [ "//skia" ] |
| }, |
| { |
| types = [ |
| { |
| mojom = "skia.mojom.SkColorSpacePrimaries" |
| cpp = "::SkColorSpacePrimaries" |
| }, |
| ] |
| traits_headers = [ "skcolorspace_primaries_mojom_traits.h" ] |
| traits_public_deps = [ "//skia" ] |
| }, |
| { |
| types = [ |
| { |
| mojom = "skia.mojom.SkColorSpace" |
| cpp = "::sk_sp<SkColorSpace>" |
| }, |
| ] |
| traits_headers = [ "skcolorspace_mojom_traits.h" ] |
| traits_public_deps = [ "//skia" ] |
| }, |
| { |
| types = [ |
| { |
| mojom = "skia.mojom.AlphaType" |
| cpp = "::SkAlphaType" |
| }, |
| { |
| mojom = "skia.mojom.ColorType" |
| cpp = "::SkColorType" |
| }, |
| { |
| mojom = "skia.mojom.ImageInfo" |
| cpp = "::SkImageInfo" |
| }, |
| { |
| mojom = "skia.mojom.BitmapN32ImageInfo" |
| cpp = "::SkImageInfo" |
| }, |
| ] |
| traits_headers = [ "image_info_mojom_traits.h" ] |
| traits_public_deps = [ |
| ":shared_typemap_traits", |
| "//skia", |
| ] |
| }, |
| { |
| types = [ |
| { |
| mojom = "skia.mojom.SurfaceOrigin" |
| cpp = "::GrSurfaceOrigin" |
| }, |
| ] |
| traits_headers = [ "surface_origin_mojom_traits.h" ] |
| traits_public_deps = [ ":shared_typemap_traits" ] |
| }, |
| ] |
| |
| cpp_typemaps = shared_skia_cpp_typemaps |
| blink_cpp_typemaps = shared_skia_cpp_typemaps |
| |
| # Generate TypeScript bindings for WebUI and JavaScript legacy bindings for |
| # Blink. |
| webui_module_path = "chrome://resources/mojo/skia/public/mojom/" |
| generate_legacy_js_bindings = true |
| } |