| # Copyright 2021 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/config/ios/swift_source_set.gni") |
| |
| source_set("overflow_menu_constants") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| sources = [ |
| "overflow_menu_constants.cc", |
| "overflow_menu_constants.h", |
| ] |
| deps = [ "//base" ] |
| } |
| |
| source_set("overflow_menu") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| sources = [ |
| "overflow_menu_mediator.h", |
| "overflow_menu_mediator.mm", |
| "overflow_menu_orderer.h", |
| "overflow_menu_orderer.mm", |
| ] |
| deps = [ |
| ":feature_flags", |
| ":overflow_menu_constants", |
| ":overflow_menu_swift", |
| "resources:destination_highlight_color", |
| "resources:overflow_menu_footer_managed", |
| "//components/bookmarks/browser", |
| "//components/bookmarks/common", |
| "//components/feature_engagement/public", |
| "//components/language/ios/browser", |
| "//components/prefs", |
| "//components/prefs/ios", |
| "//components/profile_metrics", |
| "//components/sync/service", |
| "//components/translate/core/browser", |
| "//ios/chrome/app/strings", |
| "//ios/chrome/browser/bookmarks", |
| "//ios/chrome/browser/commerce/push_notification", |
| "//ios/chrome/browser/default_browser:utils", |
| "//ios/chrome/browser/find_in_page", |
| "//ios/chrome/browser/follow:browser_agent", |
| "//ios/chrome/browser/follow:enums", |
| "//ios/chrome/browser/follow:tab_helper", |
| "//ios/chrome/browser/follow:utils", |
| "//ios/chrome/browser/ntp:features", |
| "//ios/chrome/browser/overlays", |
| "//ios/chrome/browser/policy", |
| "//ios/chrome/browser/policy:policy_util", |
| "//ios/chrome/browser/reading_list", |
| "//ios/chrome/browser/settings/sync/utils:identity_error_util", |
| "//ios/chrome/browser/shared/model/browser_state", |
| "//ios/chrome/browser/shared/model/prefs:pref_names", |
| "//ios/chrome/browser/shared/model/url:constants", |
| "//ios/chrome/browser/shared/model/web_state_list", |
| "//ios/chrome/browser/shared/public/commands", |
| "//ios/chrome/browser/shared/public/features", |
| "//ios/chrome/browser/shared/public/features:system_flags", |
| "//ios/chrome/browser/shared/ui/symbols", |
| "//ios/chrome/browser/shared/ui/util", |
| "//ios/chrome/browser/tabs:features", |
| "//ios/chrome/browser/translate", |
| "//ios/chrome/browser/ui/bookmarks:core", |
| "//ios/chrome/browser/ui/bookmarks:utils", |
| "//ios/chrome/browser/ui/browser_container:ui", |
| "//ios/chrome/browser/ui/follow", |
| "//ios/chrome/browser/ui/ntp/metrics", |
| "//ios/chrome/browser/ui/popup_menu:constants", |
| "//ios/chrome/browser/ui/popup_menu:metrics_protocols", |
| "//ios/chrome/browser/ui/popup_menu/overflow_menu/destination_usage_history", |
| "//ios/chrome/browser/ui/reading_list", |
| "//ios/chrome/browser/ui/sharing", |
| "//ios/chrome/browser/ui/tab_switcher:tab_utils", |
| "//ios/chrome/browser/ui/whats_new:util", |
| "//ios/chrome/browser/web", |
| "//ios/chrome/browser/web/font_size", |
| "//ios/chrome/browser/window_activities", |
| "//ios/public/provider/chrome/browser/user_feedback:user_feedback_api", |
| "//ios/web/common:user_agent", |
| "//ios/web/public", |
| "//ui/base", |
| ] |
| } |
| |
| swift_source_set("overflow_menu_swift") { |
| bridge_header = "overflow_menu_swift_bridge.h" |
| sources = [ |
| "Color+overflow_menu.swift", |
| "overflow_menu_action.swift", |
| "overflow_menu_action_group.swift", |
| "overflow_menu_action_list.swift", |
| "overflow_menu_action_row.swift", |
| "overflow_menu_action_section.swift", |
| "overflow_menu_destination.swift", |
| "overflow_menu_destination_list.swift", |
| "overflow_menu_destination_view.swift", |
| "overflow_menu_footer.swift", |
| "overflow_menu_footer_row.swift", |
| "overflow_menu_hosting_controller.swift", |
| "overflow_menu_item.swift", |
| "overflow_menu_model.swift", |
| "overflow_menu_ui_configuration.swift", |
| "overflow_menu_view.swift", |
| "overflow_menu_view_provider.swift", |
| ] |
| |
| deps = [ |
| "//base", |
| "//ios/chrome/app/strings", |
| "//ios/chrome/browser/shared/ui/util:util_swiftui", |
| "//ios/chrome/browser/ui/popup_menu:constants", |
| "//ios/chrome/browser/ui/popup_menu:metrics_protocols", |
| "//ios/chrome/common:timing", |
| "//ios/chrome/common/ui/colors:swift", |
| "//ui/base", |
| ] |
| |
| frameworks = [ |
| "Foundation.framework", |
| "SwiftUI.framework", |
| ] |
| } |
| |
| source_set("feature_flags") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| sources = [ |
| "feature_flags.h", |
| "feature_flags.mm", |
| ] |
| deps = [ |
| "//base", |
| "//components/password_manager/core/common:features", |
| "//ios/chrome/browser/shared/public/features", |
| ] |
| } |
| |
| source_set("unit_tests") { |
| testonly = true |
| sources = [ |
| "overflow_menu_mediator_unittest.mm", |
| "overflow_menu_orderer_unittest.mm", |
| ] |
| deps = [ |
| ":overflow_menu", |
| ":overflow_menu_constants", |
| "//base", |
| "//base/test:test_support", |
| "//components/bookmarks/browser", |
| "//components/bookmarks/common", |
| "//components/bookmarks/test", |
| "//components/feature_engagement/test:test_support", |
| "//components/language/ios/browser", |
| "//components/password_manager/core/browser:test_support", |
| "//components/policy/core/common:test_support", |
| "//components/prefs", |
| "//components/prefs:test_support", |
| "//components/sync/service", |
| "//components/translate/core/browser", |
| "//components/translate/core/language_detection", |
| "//ios/chrome/browser/bookmarks", |
| "//ios/chrome/browser/overlays", |
| "//ios/chrome/browser/overlays/public/web_content_area", |
| "//ios/chrome/browser/overlays/test", |
| "//ios/chrome/browser/passwords:store_factory", |
| "//ios/chrome/browser/policy:test_support", |
| "//ios/chrome/browser/promos_manager:test_support", |
| "//ios/chrome/browser/shared/model/browser/test:test_support", |
| "//ios/chrome/browser/shared/model/browser_state:test_support", |
| "//ios/chrome/browser/shared/model/prefs:pref_names", |
| "//ios/chrome/browser/shared/model/web_state_list", |
| "//ios/chrome/browser/shared/public/features", |
| "//ios/chrome/browser/shared/ui/symbols", |
| "//ios/chrome/browser/shared/ui/util", |
| "//ios/chrome/browser/ui/popup_menu:constants", |
| "//ios/chrome/browser/ui/popup_menu/overflow_menu:feature_flags", |
| "//ios/chrome/browser/ui/popup_menu/overflow_menu/destination_usage_history", |
| "//ios/chrome/browser/ui/toolbar/test", |
| "//ios/chrome/browser/ui/whats_new:util", |
| "//ios/chrome/browser/web/font_size", |
| "//ios/public/provider/chrome/browser/text_zoom:text_zoom_api", |
| "//ios/public/provider/chrome/browser/user_feedback:user_feedback_api", |
| "//ios/web/public", |
| "//ios/web/public/navigation", |
| "//ios/web/public/test", |
| "//ios/web/public/test/fakes", |
| "//testing/gtest", |
| "//ui/base:base", |
| ] |
| configs += [ "//build/config/compiler:enable_arc" ] |
| } |
| |
| source_set("eg2_tests") { |
| configs += [ |
| "//build/config/compiler:enable_arc", |
| "//build/config/ios:xctest_config", |
| ] |
| testonly = true |
| sources = [ "overflow_menu_carousel_egtest.mm" ] |
| deps = [ |
| "//base", |
| "//components/sync/base", |
| "//ios/chrome/app/strings", |
| "//ios/chrome/browser/metrics:eg_test_support+eg2", |
| "//ios/chrome/browser/shared/model/prefs:pref_names", |
| "//ios/chrome/browser/shared/public/features", |
| "//ios/chrome/browser/signin:fake_system_identity", |
| "//ios/chrome/browser/ui/authentication:eg_test_support+eg2", |
| "//ios/chrome/browser/ui/popup_menu:constants", |
| "//ios/chrome/browser/ui/whats_new:constants", |
| "//ios/chrome/test/earl_grey:eg_test_support+eg2", |
| "//ios/chrome/test/earl_grey:switches", |
| "//ios/testing/earl_grey:eg_test_support+eg2", |
| "//ui/base", |
| ] |
| frameworks = [ "UIKit.framework" ] |
| } |