blob: e3b623dae07ff5de6836eedd59d19b4e38d1a0b3 [file] [log] [blame]
# Copyright 2019 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/linux/pkg_config.gni")
import("//ui/base/ui_features.gni")
# Chromedriver uses this in X11 builds for StubKeyboardLayoutEngine.
assert(use_ozone || use_x11)
if (use_xkbcommon) {
pkg_config("xkbcommon") {
packages = [ "xkbcommon" ]
}
}
component("layout") {
output_name = "events_ozone_layout"
sources = [
"keyboard_layout_engine.h",
"keyboard_layout_engine_manager.cc",
"keyboard_layout_engine_manager.h",
"no/no_keyboard_layout_engine.cc",
"no/no_keyboard_layout_engine.h",
"scoped_keyboard_layout_engine.cc",
"scoped_keyboard_layout_engine.h",
"stub/stub_keyboard_layout_engine.cc",
"stub/stub_keyboard_layout_engine.h",
]
defines = [ "IS_EVENTS_OZONE_LAYOUT_IMPL" ]
deps = [
"//base",
"//ui/events:dom_keycode_converter",
"//ui/events:events_base",
]
if (use_xkbcommon) {
configs += [ ":xkbcommon" ]
sources += [
"xkb/xkb_evdev_codes.cc",
"xkb/xkb_evdev_codes.h",
"xkb/xkb_key_code_converter.h",
"xkb/xkb_keyboard_layout_engine.cc",
"xkb/xkb_keyboard_layout_engine.h",
]
deps += [ "//ui/events/keycodes:xkb" ]
}
}
source_set("unittests") {
testonly = true
sources = []
if (use_xkbcommon) {
sources += [
"keyboard_layout_engine_unittest.cc",
"xkb/xkb_keyboard_layout_engine_unittest.cc",
]
}
deps = [
":layout",
"//base",
"//testing/gtest",
"//ui/events",
"//ui/events:dom_keycode_converter",
]
}