# Copyright 2014 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/config/jumbo.gni") import("//build/config/ui.gni") import("//testing/test.gni") if (is_android) { import("//build/config/android/config.gni") } if (is_mac) { import("//build/config/mac/rules.gni") } jumbo_component("shell_dialogs") { sources = [ "base_shell_dialog.cc", "base_shell_dialog.h", "base_shell_dialog_win.cc", "base_shell_dialog_win.h", "select_file_dialog.cc", "select_file_dialog.h", "select_file_dialog_factory.cc", "select_file_dialog_factory.h", "select_file_dialog_mac.h", "select_file_dialog_mac.mm", "select_file_dialog_win.cc", "select_file_dialog_win.h", "select_file_policy.cc", "select_file_policy.h", "selected_file_info.cc", "selected_file_info.h", "shell_dialog_linux.cc", "shell_dialog_linux.h", "shell_dialogs_export.h", ] defines = [ "SHELL_DIALOGS_IMPLEMENTATION" ] deps = [ "//base", "//base:i18n", "//skia", "//ui/base", "//ui/strings", ] if (use_aura) { if (is_mac) { # Will be automatically filtered out on non-Mac. sources -= [ "select_file_dialog_mac.mm" ] } deps += [ "//ui/aura" ] } if (is_android) { sources += [ "select_file_dialog_android.cc", "select_file_dialog_android.h", ] deps += [ "//ui/android", "//ui/base:ui_base_jni_headers", ] include_dirs = [ "$root_gen_dir/ui" ] libs = [ "jnigraphics" ] } if (is_mac) { libs = [ "CoreServices.framework", "Foundation.framework", "AppKit.framework", ] } if (is_fuchsia) { sources += [ "select_file_dialog_fuchsia.cc" ] } } if (is_mac) { mac_xib_bundle_data("shell_dialogs_unittests_xibs") { testonly = true sources = [ "//chrome/app/nibs/SaveAccessoryView.xib", ] } mac_framework_bundle("shell_dialogs_unittests_bundle") { testonly = true framework_version = "S" framework_contents = [ "Resources" ] info_plist = "//ui/base/test/framework-Info.plist" deps = [ ":shell_dialogs_unittests_xibs", "//ui/resources:ui_test_pak_bundle_data", ] extra_substitutions = [ "CHROMIUM_BUNDLE_ID=$target_name" ] } } test("shell_dialogs_unittests") { testonly = true sources = [ "run_all_unittests.cc", "select_file_dialog_mac_unittest.mm", "select_file_dialog_unittest.cc", "select_file_dialog_win_unittest.cc", ] deps = [ ":shell_dialogs", "//base", "//base/test:test_support", "//testing/gtest", "//ui/base:base", ] if (is_mac) { deps += [ ":shell_dialogs_unittests_bundle" ] } }