Home | History | Annotate | Download | only in config
      1 # Copyright 2014 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 
      5 # This file contains UI-related build flags. It should theoretically be in the
      6 # src/ui directory and only things that depend on the ui module should get the
      7 # definitions.
      8 #
      9 # However, today we have many "bad" dependencies on some of these flags from,
     10 # e.g. base, so they need to be global.
     11 #
     12 # See also build/config/features.gni
     13 
     14 declare_args() {
     15   # Indicates if Ash is enabled. Ash is the Aura Shell which provides a
     16   # desktop-like environment for Aura. Requires use_aura = true
     17   use_ash = is_win || is_linux
     18 
     19   # Indicates if Ozone is enabled. Ozone is a low-level library layer for Linux
     20   # that does not require X11.
     21   use_ozone = false
     22 
     23   # Support ChromeOS touchpad gestures with ozone.
     24   use_evdev_gestures = false
     25 
     26   # Indicates if Aura is enabled. Aura is a low-level windowing library, sort
     27   # of a replacement for GDI or GTK.
     28   use_aura = is_win || is_linux
     29 
     30   # XInput2 multitouch support. Zero means disabled, nonzero indicates the
     31   # minimum XI2 version. For example, use_xi2_mt=2 means XI2.2 or above.
     32   use_xi2_mt = 2
     33 
     34   # True means the UI is built using the "views" framework.
     35   toolkit_views = is_win || is_chromeos || use_aura
     36 }
     37 
     38 # Additional dependent variables -----------------------------------------------
     39 #
     40 # These variables depend on other variables and can't be set externally.
     41 
     42 if (is_linux) {
     43   use_cairo = true
     44   use_pango = true
     45 } else {
     46   use_cairo = false
     47   use_pango = false
     48 }
     49 
     50 # Use GPU accelerated cross process image transport by default on linux builds
     51 # with the Aura window manager.
     52 ui_compositor_image_transport = use_aura && is_linux
     53 
     54 use_default_render_theme = use_aura || is_linux
     55 
     56 # Indicates if the UI toolkit depends on X11.
     57 use_x11 = is_linux && !use_ozone
     58 
     59 use_ozone_evdev = use_ozone
     60 
     61 use_glib = is_linux
     62 
     63 use_clipboard_aurax11 = is_linux && use_aura && use_x11
     64 
     65 use_athena = false
     66 
     67 enable_hidpi = is_mac || is_chromeos || is_win
     68