blob: 9d1e4a5e0eadda6953e1c4e092f4f5a55c563b58 [file] [log] [blame]
Tom Anderson4ee83742022-07-14 20:58:411# Copyright 2022 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5import("//build/config/linux/gtk/gtk.gni")
Tom Anderson4ee83742022-07-14 20:58:416import("//ui/qt/qt.gni")
7
8component("linux_ui") {
9 defines = [ "IS_LINUX_UI_IMPL" ]
10 public = [
Tom Andersona49b45a2022-07-14 22:54:3011 "cursor_theme_manager_observer.h",
Tom Anderson4ee83742022-07-14 20:58:4112 "device_scale_factor_observer.h",
13 "linux_ui.h",
14 "nav_button_provider.h",
15 "status_icon_linux.h",
16 "window_button_order_observer.h",
17 "window_frame_provider.h",
18 ]
19 sources = [
20 "linux_ui.cc",
21 "status_icon_linux.cc",
22 ]
23 deps = [
Tom Andersone3f74fd2022-07-19 17:08:3024 "//base",
Tom Anderson4ee83742022-07-14 20:58:4125 "//build:chromecast_buildflags",
Tom Andersone3f74fd2022-07-19 17:08:3026 "//ui/gfx",
Tom Anderson4ee83742022-07-14 20:58:4127 "//ui/native_theme",
Tom Andersone3f74fd2022-07-19 17:08:3028
29 # TODO(thomasanderson): Move LinuxUiDelegate here and remove this dependency.
30 "//ui/base",
Tom Anderson4ee83742022-07-14 20:58:4131 ]
Tom Anderson4ee83742022-07-14 20:58:4132 public_deps = [
33 "//printing/buildflags",
34 "//skia",
Tom Anderson4ee83742022-07-14 20:58:4135 ]
36}
37
38source_set("linux_ui_factory") {
39 sources = [
40 "linux_ui_factory.cc",
41 "linux_ui_factory.h",
42 ]
43
44 public_deps = [ ":linux_ui" ]
45
Tom Andersona49b45a2022-07-14 22:54:3046 deps = [
47 "//base",
48 "//ui/base:buildflags",
49 ]
Tom Anderson4ee83742022-07-14 20:58:4150 if (use_gtk) {
51 # This is the only component that can interact with gtk.
52 deps += [ "//ui/gtk" ]
53 }
54 if (use_qt) {
55 deps += [ "//ui/qt" ]
56 }
57}