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

import("//build/config/ui.gni")
import("//ui/ozone/ozone.gni")

source_set("xkb") {
  sources = [
    "keyboard_code_conversion_xkb.cc",
    "keyboard_code_conversion_xkb.h",
    "scoped_xkb.h",
    "xkb_keysym.h",
  ]

  deps = [
    "//base",
    "//ui/events:dom_keycode_converter",
  ]

  if (use_xkbcommon) {
    defines = [ "USE_XKBCOMMON" ]
  }
}

if (use_x11 || ozone_platform_x11) {
  component("x11") {
    output_name = "keycodes_x11"

    sources = [
      "keyboard_code_conversion_x.cc",
      "keyboard_code_conversion_x.h",
      "keycodes_x_export.h",
      "keysym_to_unicode.cc",
      "keysym_to_unicode.h",
    ]

    defines = [ "KEYCODES_X_IMPLEMENTATION" ]

    deps = [
      ":xkb",
      "//base",
      "//ui/events:dom_keycode_converter",
      "//ui/gfx/x",
    ]

    configs += [ "//build/config/linux:x11" ]
  }
}
