Commit ba8520bc authored by Sylvain Defresne's avatar Sylvain Defresne Committed by Commit Bot

Remove circular dependencies between gn targets.

Break the circular dependency between //ios/chrome/browser/tabs
and //ios/chrome/browser/snapshots by using TabIdTabHelper to
get the WebState unique identifier instead of using Tab.

Extract tab_id_tab_helper.{h,mm} to a separate target
//ios/chrome/browser/web:tab_id_tab_helper.

Bug: none
Change-Id: Ib8c194a8e80a58674e203aa7b48afb3a245709ef
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Reviewed-on: https://chromium-review.googlesource.com/839767Reviewed-by: default avatarJustin Cohen <justincohen@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#525969}
parent e202e0f9
...@@ -3,62 +3,51 @@ ...@@ -3,62 +3,51 @@
# found in the LICENSE file. # found in the LICENSE file.
source_set("snapshots") { source_set("snapshots") {
sources = [ public = [
"lru_cache.h", "lru_cache.h",
"lru_cache.mm",
"snapshot_cache.h", "snapshot_cache.h",
"snapshot_cache.mm",
"snapshot_cache_factory.h", "snapshot_cache_factory.h",
"snapshot_cache_factory.mm",
"snapshot_cache_internal.h", "snapshot_cache_internal.h",
"snapshot_cache_observer.h", "snapshot_cache_observer.h",
"snapshot_cache_web_state_list_observer.h", "snapshot_cache_web_state_list_observer.h",
"snapshot_cache_web_state_list_observer.mm",
"snapshot_constants.h", "snapshot_constants.h",
"snapshot_constants.mm",
"snapshot_generator_delegate.h", "snapshot_generator_delegate.h",
"snapshot_overlay.h", "snapshot_overlay.h",
"snapshot_overlay.mm", "snapshot_overlay_provider.h",
"snapshot_tab_helper.h", "snapshot_tab_helper.h",
"snapshots_util.h", "snapshots_util.h",
"snapshots_util.mm",
]
deps = [
"//base",
"//components/infobars/core",
"//components/keyed_service/core",
"//components/keyed_service/ios",
"//ios/chrome/browser",
"//ios/chrome/browser/browser_state",
"//ios/chrome/browser/ui",
"//ios/chrome/browser/web_state_list",
"//ios/web",
] ]
libs = [ "QuartzCore.framework" ]
configs += [ "//build/config/compiler:enable_arc" ]
}
source_set("snapshots_internal") {
configs += [ "//build/config/compiler:enable_arc" ]
sources = [ sources = [
"lru_cache.mm",
"snapshot_cache.mm",
"snapshot_cache_factory.mm",
"snapshot_cache_web_state_list_observer.mm",
"snapshot_constants.mm",
"snapshot_generator.h", "snapshot_generator.h",
"snapshot_generator.mm", "snapshot_generator.mm",
"snapshot_overlay_provider.h", "snapshot_overlay.mm",
"snapshot_tab_helper.mm", "snapshot_tab_helper.mm",
"snapshots_util.mm",
] ]
deps = [ deps = [
":snapshots",
"//base", "//base",
"//components/infobars/core",
"//components/keyed_service/core",
"//components/keyed_service/ios",
"//ios/chrome/browser",
"//ios/chrome/browser/browser_state", "//ios/chrome/browser/browser_state",
"//ios/chrome/browser/infobars", "//ios/chrome/browser/infobars",
"//ios/chrome/browser/ui", "//ios/chrome/browser/ui",
"//ios/chrome/browser/web", "//ios/chrome/browser/web:tab_id_tab_helper",
"//ios/chrome/browser/web_state_list",
"//ios/web/public", "//ios/web/public",
] ]
libs = [ libs = [
"QuartzCore.framework",
"UIKit.framework", "UIKit.framework",
"WebKit.framework", "WebKit.framework",
] ]
configs += [ "//build/config/compiler:enable_arc" ]
} }
source_set("test_utils") { source_set("test_utils") {
...@@ -84,7 +73,6 @@ source_set("unit_tests") { ...@@ -84,7 +73,6 @@ source_set("unit_tests") {
] ]
deps = [ deps = [
":snapshots", ":snapshots",
":snapshots_internal",
":test_utils", ":test_utils",
"//base", "//base",
"//ios/chrome/browser/browser_state:test_support", "//ios/chrome/browser/browser_state:test_support",
......
...@@ -6,8 +6,7 @@ ...@@ -6,8 +6,7 @@
#include "base/logging.h" #include "base/logging.h"
#import "ios/chrome/browser/snapshots/snapshot_cache.h" #import "ios/chrome/browser/snapshots/snapshot_cache.h"
#import "ios/chrome/browser/tabs/legacy_tab_helper.h" #import "ios/chrome/browser/web/tab_id_tab_helper.h"
#import "ios/chrome/browser/tabs/tab.h"
#import "ios/chrome/browser/web_state_list/web_state_list.h" #import "ios/chrome/browser/web_state_list/web_state_list.h"
#if !defined(__has_feature) || !__has_feature(objc_arc) #if !defined(__has_feature) || !__has_feature(objc_arc)
...@@ -35,12 +34,12 @@ void SnapshotCacheWebStateListObserver::WebStateActivatedAt( ...@@ -35,12 +34,12 @@ void SnapshotCacheWebStateListObserver::WebStateActivatedAt(
NSMutableSet<NSString*>* set = [NSMutableSet set]; NSMutableSet<NSString*>* set = [NSMutableSet set];
if (active_index > 0) { if (active_index > 0) {
web::WebState* web_state = web_state_list->GetWebStateAt(active_index - 1); web::WebState* web_state = web_state_list->GetWebStateAt(active_index - 1);
[set addObject:LegacyTabHelper::GetTabForWebState(web_state).tabId]; [set addObject:TabIdTabHelper::FromWebState(web_state)->tab_id()];
} }
if (active_index + 1 < web_state_list->count()) { if (active_index + 1 < web_state_list->count()) {
web::WebState* web_state = web_state_list->GetWebStateAt(active_index + 1); web::WebState* web_state = web_state_list->GetWebStateAt(active_index + 1);
[set addObject:LegacyTabHelper::GetTabForWebState(web_state).tabId]; [set addObject:TabIdTabHelper::FromWebState(web_state)->tab_id()];
} }
snapshot_cache_.pinnedIDs = [set copy]; snapshot_cache_.pinnedIDs = [set copy];
......
...@@ -34,7 +34,6 @@ source_set("tabs") { ...@@ -34,7 +34,6 @@ source_set("tabs") {
] ]
libs = [ "UIKit.framework" ] libs = [ "UIKit.framework" ]
configs += [ "//build/config/compiler:enable_arc" ] configs += [ "//build/config/compiler:enable_arc" ]
allow_circular_includes_from = [ "//ios/chrome/browser/snapshots" ]
} }
source_set("tabs_internal") { source_set("tabs_internal") {
...@@ -109,7 +108,6 @@ source_set("tabs_internal") { ...@@ -109,7 +108,6 @@ source_set("tabs_internal") {
"//ios/chrome/browser/sessions", "//ios/chrome/browser/sessions",
"//ios/chrome/browser/sessions:serialisation", "//ios/chrome/browser/sessions:serialisation",
"//ios/chrome/browser/snapshots", "//ios/chrome/browser/snapshots",
"//ios/chrome/browser/snapshots:snapshots_internal",
"//ios/chrome/browser/ssl", "//ios/chrome/browser/ssl",
"//ios/chrome/browser/store_kit", "//ios/chrome/browser/store_kit",
"//ios/chrome/browser/sync", "//ios/chrome/browser/sync",
......
...@@ -295,7 +295,6 @@ source_set("ui_internal") { ...@@ -295,7 +295,6 @@ source_set("ui_internal") {
"//ios/chrome/browser/sessions:serialisation", "//ios/chrome/browser/sessions:serialisation",
"//ios/chrome/browser/signin", "//ios/chrome/browser/signin",
"//ios/chrome/browser/snapshots", "//ios/chrome/browser/snapshots",
"//ios/chrome/browser/snapshots:snapshots_internal",
"//ios/chrome/browser/ssl", "//ios/chrome/browser/ssl",
"//ios/chrome/browser/store_kit", "//ios/chrome/browser/store_kit",
"//ios/chrome/browser/tabs", "//ios/chrome/browser/tabs",
...@@ -386,7 +385,6 @@ source_set("ui_internal") { ...@@ -386,7 +385,6 @@ source_set("ui_internal") {
"//ios/chrome/browser/ui/toolbar", "//ios/chrome/browser/ui/toolbar",
] ]
allow_circular_includes_from = [ allow_circular_includes_from = [
"//ios/chrome/browser/snapshots:snapshots_internal",
"//ios/chrome/browser/ui/ntp:ntp_internal", "//ios/chrome/browser/ui/ntp:ntp_internal",
"//ios/chrome/browser/ui/overscroll_actions", "//ios/chrome/browser/ui/overscroll_actions",
"//ios/chrome/browser/ui/stack_view", "//ios/chrome/browser/ui/stack_view",
......
...@@ -31,8 +31,6 @@ source_set("web") { ...@@ -31,8 +31,6 @@ source_set("web") {
"repost_form_tab_helper.mm", "repost_form_tab_helper.mm",
"sad_tab_tab_helper.h", "sad_tab_tab_helper.h",
"sad_tab_tab_helper.mm", "sad_tab_tab_helper.mm",
"tab_id_tab_helper.h",
"tab_id_tab_helper.mm",
] ]
deps = [ deps = [
":tab_helper_delegates", ":tab_helper_delegates",
...@@ -47,6 +45,21 @@ source_set("web") { ...@@ -47,6 +45,21 @@ source_set("web") {
"//ui/base", "//ui/base",
"//url", "//url",
] ]
public_deps = [
":tab_id_tab_helper",
]
}
source_set("tab_id_tab_helper") {
sources = [
"tab_id_tab_helper.h",
"tab_id_tab_helper.mm",
]
deps = [
"//base",
"//ios/web/public",
]
configs += [ "//build/config/compiler:enable_arc" ]
} }
source_set("tab_helper_delegates") { source_set("tab_helper_delegates") {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment