ui_features.gni 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. # Copyright 2016 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. import("//build/config/ui.gni")
  5. declare_args() {
  6. # Optional system library.
  7. use_xkbcommon =
  8. use_ozone && (is_linux || is_chromeos) && !is_castos &&
  9. # Avoid needing the 32-bit version of this library when Android is
  10. # building things via secondary toolchains.
  11. target_os != "android"
  12. # Whether the platform provides a native accessibility toolkit, in other words
  13. # the platform has a C/C++ interface for accessibility that Chrome
  14. # implements/subclasses in some way - win, mac, linux.
  15. has_native_accessibility = use_atk || is_win || is_mac
  16. # Whether the platform provide platform-specific accessibility implementation,
  17. # i.e. there an accessibility API of some kind on this platform that's
  18. # implemented in Chrome's browser process, but not necessarily something that
  19. # looks like subclassing an interface - so that includes Android (the Java
  20. # AccessibilityNodeProvider API) and Fuchsia (uses fidl messaging, kind of
  21. # like mojo).
  22. has_platform_accessibility_support = false
  23. # Whether the message center should be included for displaying notifications.
  24. enable_message_center =
  25. is_win || is_mac || is_linux || is_chromeos || is_fuchsia
  26. enable_hidpi = !is_android
  27. }
  28. # Android does have platform accessibility support that's implemented using
  29. # BrowserAccessibilityManager. But unlike Windows, Mac and Linux it does not use
  30. # AXPlatformNode to implement a native C++ API, instead it bridges to a Java API.
  31. has_platform_accessibility_support =
  32. has_native_accessibility || is_android || is_fuchsia