# Copyright 2013 The Flutter 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/fuchsia/sdk.gni") import("$flutter_root/common/config.gni") import("$flutter_root/testing/testing.gni") source_set("ui") { sources = [ "compositing/scene.cc", "compositing/scene.h", "compositing/scene_builder.cc", "compositing/scene_builder.h", "dart_runtime_hooks.cc", "dart_runtime_hooks.h", "dart_ui.cc", "dart_ui.h", "dart_wrapper.h", "io_manager.h", "isolate_name_server/isolate_name_server.cc", "isolate_name_server/isolate_name_server.h", "isolate_name_server/isolate_name_server_natives.cc", "isolate_name_server/isolate_name_server_natives.h", "painting/canvas.cc", "painting/canvas.h", "painting/codec.cc", "painting/codec.h", "painting/color_filter.cc", "painting/color_filter.h", "painting/engine_layer.cc", "painting/engine_layer.h", "painting/frame_info.cc", "painting/frame_info.h", "painting/gradient.cc", "painting/gradient.h", "painting/image.cc", "painting/image.h", "painting/image_decoder.cc", "painting/image_decoder.h", "painting/image_encoding.cc", "painting/image_encoding.h", "painting/image_filter.cc", "painting/image_filter.h", "painting/image_shader.cc", "painting/image_shader.h", "painting/matrix.cc", "painting/matrix.h", "painting/multi_frame_codec.cc", "painting/multi_frame_codec.h", "painting/paint.cc", "painting/paint.h", "painting/path.cc", "painting/path.h", "painting/path_measure.cc", "painting/path_measure.h", "painting/picture.cc", "painting/picture.h", "painting/picture_recorder.cc", "painting/picture_recorder.h", "painting/rrect.cc", "painting/rrect.h", "painting/shader.cc", "painting/shader.h", "painting/single_frame_codec.cc", "painting/single_frame_codec.h", "painting/vertices.cc", "painting/vertices.h", "plugins/callback_cache.cc", "plugins/callback_cache.h", "semantics/custom_accessibility_action.cc", "semantics/custom_accessibility_action.h", "semantics/semantics_node.cc", "semantics/semantics_node.h", "semantics/semantics_update.cc", "semantics/semantics_update.h", "semantics/semantics_update_builder.cc", "semantics/semantics_update_builder.h", "text/asset_manager_font_provider.cc", "text/asset_manager_font_provider.h", "text/font_collection.cc", "text/font_collection.h", "text/paragraph.cc", "text/paragraph.h", "text/paragraph_builder.cc", "text/paragraph_builder.h", "text/text_box.cc", "text/text_box.h", "ui_dart_state.cc", "ui_dart_state.h", "window/platform_message.cc", "window/platform_message.h", "window/platform_message_response.cc", "window/platform_message_response.h", "window/platform_message_response_dart.cc", "window/platform_message_response_dart.h", "window/pointer_data.cc", "window/pointer_data.h", "window/pointer_data_packet.cc", "window/pointer_data_packet.h", "window/viewport_metrics.cc", "window/viewport_metrics.h", "window/window.cc", "window/window.h", ] public_configs = [ "$flutter_root:config" ] deps = [ "$flutter_root/assets", "$flutter_root/common", "$flutter_root/flow", "$flutter_root/fml", "$flutter_root/runtime:test_font", "//third_party/dart/runtime/bin:dart_io_api", "//third_party/rapidjson", "//third_party/skia", "//third_party/tonic", ] public_deps = [ "$flutter_root/third_party/txt" ] if (flutter_enable_skshaper) { defines = [ "FLUTTER_ENABLE_SKSHAPER" ] } if (is_fuchsia) { sources += [ "compositing/scene_host.cc", "compositing/scene_host.h", ] if (using_fuchsia_sdk) { deps += [ "$flutter_root/shell/platform/fuchsia/dart-pkg/fuchsia", "$flutter_root/shell/platform/fuchsia/dart-pkg/zircon", "$fuchsia_sdk_root/pkg:async-cpp", ] } else { deps += [ "//topaz/public/dart-pkg/zircon" ] } } } if (current_toolchain == host_toolchain) { test_fixtures("ui_unittests_fixtures") { dart_main = "fixtures/ui_test.dart" fixtures = [ "fixtures/DashInNooglerHat.jpg", "fixtures/Horizontal.jpg", ] } executable("ui_unittests") { testonly = true sources = [ "painting/image_decoder_unittests.cc" ] deps = [ ":ui", ":ui_unittests_fixtures", "$flutter_root/common", "$flutter_root/testing:dart", "$flutter_root/testing:opengl", ] } }