# Copyright 2015 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/buildflag_header.gni")
import("//build/config/android/rules.gni")
import("//build/config/locales.gni")
import("//testing/test.gni")
import("//ui/android/features.gni")

assert(is_android)

# Generate a buildflag header for compile-time checking of android night mode support.
buildflag_header("buildflags") {
  header = "buildflags.h"
  flags = [ "ENABLE_ANDROID_NIGHT_MODE=$enable_android_night_mode" ]
}

component("android") {
  output_name = "ui_android"
  sources = [
    "animation_utils.h",
    "delegated_frame_host_android.cc",
    "delegated_frame_host_android.h",
    "display_android_manager.cc",
    "display_android_manager.h",
    "edge_effect.cc",
    "edge_effect.h",
    "edge_effect_base.cc",
    "edge_effect_base.h",
    "edge_effect_l.cc",
    "edge_effect_l.h",
    "event_forwarder.cc",
    "event_forwarder.h",
    "handle_view_resources.cc",
    "handle_view_resources.h",
    "overscroll_glow.cc",
    "overscroll_glow.h",
    "overscroll_refresh.cc",
    "overscroll_refresh.h",
    "overscroll_refresh_handler.cc",
    "overscroll_refresh_handler.h",
    "resources/nine_patch_resource.cc",
    "resources/nine_patch_resource.h",
    "resources/resource.cc",
    "resources/resource.h",
    "resources/resource_factory.cc",
    "resources/resource_manager.h",
    "resources/resource_manager_impl.cc",
    "resources/resource_manager_impl.h",
    "resources/ui_resource_provider.h",
    "screen_android.h",
    "ui_android_export.h",
    "view_android.cc",
    "view_android.h",
    "view_android_observer.h",
    "window_android.cc",
    "window_android.h",
    "window_android_compositor.h",
    "window_android_observer.h",
  ]

  defines = [ "UI_ANDROID_IMPLEMENTATION" ]

  deps = [
    ":buildflags",
    ":java_enums_srcjar",
    ":ui_android_jni_headers",
    "//base",
    "//cc",
    "//components/viz/client",
    "//components/viz/common",
    "//components/viz/host",
    "//components/viz/service",
    "//services/viz/public/interfaces",
    "//skia",
    "//third_party/blink/public:blink_headers",
    "//ui/base",
    "//ui/compositor",
    "//ui/display",
    "//ui/events",
    "//ui/events/devices",
    "//ui/gfx",
    "//ui/gfx/geometry",
    "//ui/touch_selection",
    "//url",
  ]
}

static_library("test_support") {
  testonly = true
  sources = [
    "dummy_screen_android.cc",
    "dummy_screen_android.h",
  ]

  deps = [
    "//ui/android",
    "//ui/display",
  ]
}

generate_jni("ui_android_jni_headers") {
  sources = [
    "java/src/org/chromium/ui/OverscrollRefreshHandler.java",
    "java/src/org/chromium/ui/base/EventForwarder.java",
    "java/src/org/chromium/ui/base/ViewAndroidDelegate.java",
    "java/src/org/chromium/ui/base/WindowAndroid.java",
    "java/src/org/chromium/ui/display/DisplayAndroidManager.java",
    "java/src/org/chromium/ui/resources/HandleViewResources.java",
    "java/src/org/chromium/ui/resources/ResourceFactory.java",
    "java/src/org/chromium/ui/resources/ResourceManager.java",
  ]
  jni_package = "ui_android"
}

java_cpp_enum("java_enums_srcjar") {
  sources = [
    "../base/ime/text_input_action.h",
    "../base/ime/text_input_type.h",
    "../base/page_transition_types.h",
    "../base/pointer/pointer_device.h",
    "../base/ui_base_types.h",
    "../events/android/gesture_event_type.h",
    "../gfx/android/java_bitmap.h",
    "overscroll_refresh.h",
    "resources/resource_manager.h",
    "resources/system_ui_resource_type.h",
  ]
}

java_strings_grd("ui_strings_grd") {
  grd_file = "java/strings/android_ui_strings.grd"
  outputs = [
    "values/android_ui_strings.xml",
    "values-am/android_ui_strings.xml",
    "values-ar/android_ui_strings.xml",
    "values-bg/android_ui_strings.xml",
    "values-bn/android_ui_strings.xml",
    "values-ca/android_ui_strings.xml",
    "values-cs/android_ui_strings.xml",
    "values-da/android_ui_strings.xml",
    "values-de/android_ui_strings.xml",
    "values-el/android_ui_strings.xml",
    "values-en-rGB/android_ui_strings.xml",
    "values-es/android_ui_strings.xml",
    "values-es-rUS/android_ui_strings.xml",
    "values-et/android_ui_strings.xml",
    "values-fa/android_ui_strings.xml",
    "values-fi/android_ui_strings.xml",
    "values-fr/android_ui_strings.xml",
    "values-gu/android_ui_strings.xml",
    "values-hi/android_ui_strings.xml",
    "values-hr/android_ui_strings.xml",
    "values-hu/android_ui_strings.xml",
    "values-in/android_ui_strings.xml",
    "values-it/android_ui_strings.xml",
    "values-iw/android_ui_strings.xml",
    "values-ja/android_ui_strings.xml",
    "values-kn/android_ui_strings.xml",
    "values-ko/android_ui_strings.xml",
    "values-lt/android_ui_strings.xml",
    "values-lv/android_ui_strings.xml",
    "values-ml/android_ui_strings.xml",
    "values-mr/android_ui_strings.xml",
    "values-ms/android_ui_strings.xml",
    "values-nb/android_ui_strings.xml",
    "values-nl/android_ui_strings.xml",
    "values-pl/android_ui_strings.xml",
    "values-pt-rBR/android_ui_strings.xml",
    "values-pt-rPT/android_ui_strings.xml",
    "values-ro/android_ui_strings.xml",
    "values-ru/android_ui_strings.xml",
    "values-sk/android_ui_strings.xml",
    "values-sl/android_ui_strings.xml",
    "values-sr/android_ui_strings.xml",
    "values-sv/android_ui_strings.xml",
    "values-sw/android_ui_strings.xml",
    "values-ta/android_ui_strings.xml",
    "values-te/android_ui_strings.xml",
    "values-th/android_ui_strings.xml",
    "values-tl/android_ui_strings.xml",
    "values-tr/android_ui_strings.xml",
    "values-uk/android_ui_strings.xml",
    "values-vi/android_ui_strings.xml",
    "values-zh-rCN/android_ui_strings.xml",
    "values-zh-rTW/android_ui_strings.xml",
  ]
}

android_resources("ui_java_resources") {
  custom_package = "org.chromium.ui"
  resource_dirs = [ "java/res" ]

  if (enable_android_night_mode) {
    resource_dirs += [ "//ui/android/java/res_night" ]
  }

  deps = [
    ":ui_strings_grd",
  ]
}

java_group("ui_java") {
  deps = [
    ":ui_full_java",
    ":ui_utils_java",
  ]
}

# This is created explicitly for remoting_apk to avoid including
# unused JNI functions.
android_library("ui_utils_java") {
  java_files = [
    "java/src/org/chromium/ui/ContactsPickerListener.java",
    "java/src/org/chromium/ui/KeyboardVisibilityDelegate.java",
    "java/src/org/chromium/ui/PhotoPickerListener.java",
    "java/src/org/chromium/ui/UiUtils.java",
  ]
  deps = [
    "//base:base_java",
    "//third_party/android_deps:android_support_v7_appcompat_java",
  ]
}

android_library("ui_full_java") {
  java_files = [
    "java/src/org/chromium/ui/AsyncViewStub.java",
    "java/src/org/chromium/ui/AsyncViewProvider.java",
    "java/src/org/chromium/ui/DeferredViewStubInflationProvider.java",
    "java/src/org/chromium/ui/DropdownAdapter.java",
    "java/src/org/chromium/ui/DropdownDividerDrawable.java",
    "java/src/org/chromium/ui/DropdownItem.java",
    "java/src/org/chromium/ui/DropdownItemBase.java",
    "java/src/org/chromium/ui/DropdownPopupWindowImpl.java",
    "java/src/org/chromium/ui/DropdownPopupWindow.java",
    "java/src/org/chromium/ui/DropdownPopupWindowJellyBean.java",
    "java/src/org/chromium/ui/DropdownPopupWindowInterface.java",
    "java/src/org/chromium/ui/HorizontalListDividerDrawable.java",
    "java/src/org/chromium/ui/OverscrollRefreshHandler.java",
    "java/src/org/chromium/ui/ViewProvider.java",
    "java/src/org/chromium/ui/VSyncMonitor.java",
    "java/src/org/chromium/ui/base/ActivityAndroidPermissionDelegate.java",
    "java/src/org/chromium/ui/base/ActivityKeyboardVisibilityDelegate.java",
    "java/src/org/chromium/ui/base/ActivityWindowAndroid.java",
    "java/src/org/chromium/ui/base/AndroidPermissionDelegate.java",
    "java/src/org/chromium/ui/base/Clipboard.java",
    "java/src/org/chromium/ui/base/DeviceFormFactor.java",
    "java/src/org/chromium/ui/base/EventForwarder.java",
    "java/src/org/chromium/ui/base/IdleDetector.java",
    "java/src/org/chromium/ui/base/LocalizationUtils.java",
    "java/src/org/chromium/ui/base/PermissionCallback.java",
    "java/src/org/chromium/ui/base/ResourceBundle.java",
    "java/src/org/chromium/ui/base/SelectFileDialog.java",
    "java/src/org/chromium/ui/base/SPenSupport.java",
    "java/src/org/chromium/ui/base/TouchDevice.java",
    "java/src/org/chromium/ui/base/ViewAndroidDelegate.java",
    "java/src/org/chromium/ui/base/ViewUtils.java",
    "java/src/org/chromium/ui/base/WindowAndroid.java",
    "java/src/org/chromium/ui/display/DisplayAndroid.java",
    "java/src/org/chromium/ui/display/DisplayAndroidManager.java",
    "java/src/org/chromium/ui/display/DisplaySwitches.java",
    "java/src/org/chromium/ui/display/DisplayUtil.java",
    "java/src/org/chromium/ui/display/PhysicalDisplayAndroid.java",
    "java/src/org/chromium/ui/display/VirtualDisplayAndroid.java",
    "java/src/org/chromium/ui/drawable/AnimationLooper.java",
    "java/src/org/chromium/ui/drawable/StateListDrawableBuilder.java",
    "java/src/org/chromium/ui/events/devices/InputDeviceObserver.java",
    "java/src/org/chromium/ui/gfx/Animation.java",
    "java/src/org/chromium/ui/gfx/BitmapHelper.java",
    "java/src/org/chromium/ui/gfx/ViewConfigurationHelper.java",
    "java/src/org/chromium/ui/gl/SurfaceTextureListener.java",
    "java/src/org/chromium/ui/gl/SurfaceTexturePlatformWrapper.java",
    "java/src/org/chromium/ui/interpolators/BakedBezierInterpolator.java",
    "java/src/org/chromium/ui/modaldialog/DialogDismissalCause.java",
    "java/src/org/chromium/ui/modaldialog/ModalDialogManager.java",
    "java/src/org/chromium/ui/modaldialog/ModalDialogProperties.java",
    "java/src/org/chromium/ui/modelutil/ForwardingListObservable.java",
    "java/src/org/chromium/ui/modelutil/LazyConstructionPropertyMcp.java",
    "java/src/org/chromium/ui/modelutil/ListModel.java",
    "java/src/org/chromium/ui/modelutil/ListModelBase.java",
    "java/src/org/chromium/ui/modelutil/ListModelChangeProcessor.java",
    "java/src/org/chromium/ui/modelutil/ListObservable.java",
    "java/src/org/chromium/ui/modelutil/ListObservableImpl.java",
    "java/src/org/chromium/ui/modelutil/ModelListAdapter.java",
    "java/src/org/chromium/ui/modelutil/PropertyKey.java",
    "java/src/org/chromium/ui/modelutil/PropertyListModel.java",
    "java/src/org/chromium/ui/modelutil/PropertyModel.java",
    "java/src/org/chromium/ui/modelutil/PropertyModelChangeProcessor.java",
    "java/src/org/chromium/ui/modelutil/PropertyObservable.java",
    "java/src/org/chromium/ui/modelutil/RecyclerViewAdapter.java",
    "java/src/org/chromium/ui/modelutil/SimpleList.java",
    "java/src/org/chromium/ui/modelutil/SimpleRecyclerViewMcp.java",
    "java/src/org/chromium/ui/modelutil/SimpleRecyclerViewMcpBase.java",
    "java/src/org/chromium/ui/resources/HandleViewResources.java",
    "java/src/org/chromium/ui/resources/LayoutResource.java",
    "java/src/org/chromium/ui/resources/Resource.java",
    "java/src/org/chromium/ui/resources/ResourceExtractor.java",
    "java/src/org/chromium/ui/resources/ResourceFactory.java",
    "java/src/org/chromium/ui/resources/ResourceLoader.java",
    "java/src/org/chromium/ui/resources/ResourceManager.java",
    "java/src/org/chromium/ui/resources/async/AsyncPreloadResourceLoader.java",
    "java/src/org/chromium/ui/resources/dynamics/BitmapDynamicResource.java",
    "java/src/org/chromium/ui/resources/dynamics/DynamicResource.java",
    "java/src/org/chromium/ui/resources/dynamics/DynamicResourceLoader.java",
    "java/src/org/chromium/ui/resources/dynamics/ViewResourceAdapter.java",
    "java/src/org/chromium/ui/resources/dynamics/ViewResourceInflater.java",
    "java/src/org/chromium/ui/resources/statics/NinePatchData.java",
    "java/src/org/chromium/ui/resources/statics/StaticResource.java",
    "java/src/org/chromium/ui/resources/statics/StaticResourceLoader.java",
    "java/src/org/chromium/ui/resources/system/SystemResourceLoader.java",
    "java/src/org/chromium/ui/text/NoUnderlineClickableSpan.java",
    "java/src/org/chromium/ui/text/SpanApplier.java",
    "java/src/org/chromium/ui/touchless/CursorObserver.java",
    "java/src/org/chromium/ui/touchless/TouchlessEventHandler.java",
    "java/src/org/chromium/ui/widget/AnchoredPopupWindow.java",
    "java/src/org/chromium/ui/widget/ButtonCompat.java",
    "java/src/org/chromium/ui/widget/CheckableImageView.java",
    "java/src/org/chromium/ui/widget/ChipView.java",
    "java/src/org/chromium/ui/widget/ChromeBulletSpan.java",
    "java/src/org/chromium/ui/widget/ChromeImageView.java",
    "java/src/org/chromium/ui/widget/ChromeImageButton.java",
    "java/src/org/chromium/ui/widget/OptimizedFrameLayout.java",
    "java/src/org/chromium/ui/widget/RectProvider.java",
    "java/src/org/chromium/ui/widget/RippleBackgroundHelper.java",
    "java/src/org/chromium/ui/widget/RoundedCornerImageView.java",
    "java/src/org/chromium/ui/widget/TextViewWithClickableSpans.java",
    "java/src/org/chromium/ui/widget/TextViewWithLeading.java",
    "java/src/org/chromium/ui/widget/Toast.java",
    "java/src/org/chromium/ui/widget/UiWidgetFactory.java",
    "java/src/org/chromium/ui/widget/ViewRectProvider.java",
  ]
  deps = [
    ":ui_java_resources",
    ":ui_utils_java",
    "//base:base_java",
    "//third_party/android_deps:android_support_v7_appcompat_java",
    "//third_party/android_deps:com_android_support_recyclerview_v7_java",
    "//third_party/android_deps:com_android_support_support_annotations_java",
  ]
  srcjar_deps = [
    ":java_enums_srcjar",
    "//third_party/blink/public:blink_cursor_type_java_enums_srcjar",
  ]
}

android_library("ui_java_test_support") {
  testonly = true
  java_files = [
    "javatests/src/org/chromium/ui/test/util/UiDisableIf.java",
    "javatests/src/org/chromium/ui/test/util/UiDisableIfSkipCheck.java",
    "javatests/src/org/chromium/ui/test/util/UiRestriction.java",
    "javatests/src/org/chromium/ui/test/util/UiRestrictionSkipCheck.java",
    "javatests/src/org/chromium/ui/test/util/modelutil/FakeViewProvider.java",
  ]
  deps = [
    ":ui_java",
    "//base:base_java",
    "//base:base_java_test_support",
    "//third_party/junit",
  ]
}

android_resources("ui_javatest_resources") {
  custom_package = "org.chromium.test.ui"
  resource_dirs = [ "junit/res" ]
}

junit_binary("ui_junit_tests") {
  package_name = "org.chromium.test.ui"
  java_files = [
    "junit/src/org/chromium/ui/AsyncViewStubTest.java",
    "junit/src/org/chromium/ui/AsyncViewProviderTest.java",
    "junit/src/org/chromium/ui/base/ClipboardTest.java",
    "junit/src/org/chromium/ui/base/LocalizationUtilsTest.java",
    "junit/src/org/chromium/ui/base/SelectFileDialogTest.java",
    "junit/src/org/chromium/ui/drawable/StateListDrawableBuilderTest.java",
    "junit/src/org/chromium/ui/modaldialog/ModalDialogManagerTest.java",
    "junit/src/org/chromium/ui/modelutil/LazyConstructionPropertyMcpTest.java",
    "junit/src/org/chromium/ui/modelutil/ListModelBaseTest.java",
    "junit/src/org/chromium/ui/modelutil/PropertyListModelTest.java",
    "junit/src/org/chromium/ui/modelutil/PropertyModelTest.java",
    "junit/src/org/chromium/ui/modelutil/SimpleListObservableTest.java",
    "junit/src/org/chromium/ui/resources/dynamics/ViewResourceAdapterTest.java",
    "junit/src/org/chromium/ui/shadows/ShadowAsyncLayoutInflater.java",
    "junit/src/org/chromium/ui/shadows/ShadowAppCompatResources.java",
    "junit/src/org/chromium/ui/shadows/ShadowAppCompatResourcesTest.java",
    "junit/src/org/chromium/ui/shadows/ShadowAnimatedStateListDrawable.java",
    "junit/src/org/chromium/ui/text/SpanApplierTest.java",
    "junit/src/org/chromium/ui/widget/AnchoredPopupWindowTest.java",
  ]
  deps = [
    ":ui_java",
    ":ui_java_test_support",
    ":ui_javatest_resources",
    "//base:base_java",
    "//base:base_java_test_support",
    "//base:base_junit_test_support",
  ]
}

test("ui_android_unittests") {
  sources = [
    "delegated_frame_host_android_unittest.cc",
    "overscroll_refresh_unittest.cc",
    "resources/resource_manager_impl_unittest.cc",
    "run_all_unittests.cc",
    "view_android_unittests.cc",
  ]
  deps = [
    ":android",
    ":java_enums_srcjar",
    ":ui_java",
    "//base",
    "//base/test:test_support",
    "//cc",
    "//cc:test_support",
    "//components/viz/host:host",
    "//components/viz/service:service",
    "//components/viz/test:test_support",
    "//skia",
    "//testing/gmock",
    "//testing/gtest",
    "//ui/base",
    "//ui/compositor",
    "//ui/events",
    "//ui/gfx",
    "//ui/resources:ui_test_pak",
  ]
}
