Commit e79f2742 authored by Eugene But's avatar Eugene But Committed by Commit Bot

Moved user_agent* files to ios/web/common.

ios/web/common directory contains common code shared between //ios/web
and the rest of the layers (//components, //ios/chrome, //ios/web_view).
This directory does not contain the public API to create and manage web
contents (//ios/web/public is public API directory).

The proposal to move the files was discussed on this doc:
https://docs.google.com/document/d/1C2YIU0rDbH5wz2VI6nk0COrktwY3DbF-e7QbMIAKEJc/edit

TBR=zhongyi@chromium.org

Bug: 942244
Change-Id: Icc2f7c3a6deb004e703c4c3e163d8974a0dd8378
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1715630Reviewed-by: default avatarZhongyi Shi <zhongyi@chromium.org>
Reviewed-by: default avatarMark Cogan <marq@chromium.org>
Commit-Queue: Eugene But <eugenebut@chromium.org>
Cr-Commit-Position: refs/heads/master@{#681345}
parent 0ed72da7
......@@ -48,7 +48,7 @@ _cronet_deps = [
"//components/prefs:prefs",
"//ios/net",
"//ios/net:network_protocol",
"//ios/web/public:user_agent",
"//ios/web/common:user_agent",
"//ios/web/public/init:global_state",
"//ios/web/init:global_state",
"//net",
......
include_rules = [
"+ios/net",
"+ios/web/common",
"+ios/web/public",
]
......@@ -27,9 +27,9 @@
#include "components/prefs/pref_filter.h"
#include "ios/net/cookies/cookie_store_ios.h"
#include "ios/net/cookies/cookie_store_ios_client.h"
#include "ios/web/common/user_agent.h"
#include "ios/web/public/init/ios_global_state.h"
#include "ios/web/public/init/ios_global_state_configuration.h"
#include "ios/web/public/user_agent.h"
#include "net/base/http_user_agent_settings.h"
#include "net/base/network_change_notifier.h"
#include "net/base/url_util.h"
......
......@@ -9,9 +9,9 @@
#include <utility>
#include "base/callback.h"
#include "ios/web/common/user_agent.h"
#include "ios/web/public/init/ios_global_state.h"
#include "ios/web/public/init/ios_global_state_configuration.h"
#include "ios/web/public/user_agent.h"
#include "net/proxy_resolution/proxy_config_service.h"
#include "net/proxy_resolution/proxy_resolution_service.h"
#include "url/url_util.h"
......
......@@ -57,8 +57,8 @@ source_set("flags") {
"//ios/chrome/browser/web:feature_flags",
"//ios/public/provider/chrome/browser",
"//ios/web/common",
"//ios/web/common:user_agent",
"//ios/web/common:web_view_creation_util",
"//ios/web/public",
"//ios/web/public:user_agent",
]
}
......@@ -70,8 +70,8 @@
#include "ios/chrome/grit/ios_strings.h"
#include "ios/public/provider/chrome/browser/chrome_browser_provider.h"
#include "ios/web/common/features.h"
#include "ios/web/common/user_agent.h"
#include "ios/web/common/web_view_creation_util.h"
#include "ios/web/public/user_agent.h"
#if !defined(OFFICIAL_BUILD)
#include "components/variations/variations_switches.h"
......
......@@ -43,6 +43,7 @@ source_set("activity_services") {
"//ios/chrome/browser/ui/commands",
"//ios/chrome/browser/ui/util",
"//ios/web",
"//ios/web/common:user_agent",
"//net",
"//ui/base",
"//url",
......
......@@ -37,6 +37,7 @@ source_set("activities") {
"//ios/chrome/browser/ui/commands",
"//ios/chrome/browser/ui/context_menu",
"//ios/chrome/browser/ui/util",
"//ios/web/common:user_agent",
"//ios/web/public",
"//ui/base",
"//url",
......
......@@ -7,7 +7,7 @@
#import <UIKit/UIKit.h>
#include "ios/web/public/user_agent.h"
#include "ios/web/common/user_agent.h"
@protocol BrowserCommands;
......
......@@ -8,7 +8,7 @@
#import <UIKit/UIKit.h>
#include "ios/chrome/browser/ui/activity_services/chrome_activity_item_thumbnail_generator.h"
#include "ios/web/public/user_agent.h"
#include "ios/web/common/user_agent.h"
#include "url/gurl.h"
@interface ShareToData : NSObject
......
......@@ -73,6 +73,7 @@ source_set("popup_menu") {
"//ios/public/provider/chrome/browser",
"//ios/public/provider/chrome/browser/user_feedback",
"//ios/web",
"//ios/web/common:user_agent",
"//ui/base",
]
libs = [ "UIKit.framework" ]
......
......@@ -42,11 +42,11 @@
#include "ios/chrome/grit/ios_strings.h"
#include "ios/public/provider/chrome/browser/chrome_browser_provider.h"
#import "ios/public/provider/chrome/browser/user_feedback/user_feedback_provider.h"
#include "ios/web/common/user_agent.h"
#include "ios/web/public/favicon/favicon_status.h"
#import "ios/web/public/navigation/navigation_item.h"
#import "ios/web/public/navigation/navigation_manager.h"
#include "ios/web/public/navigation/navigation_manager.h"
#include "ios/web/public/user_agent.h"
#include "ios/web/public/web_client.h"
#import "ios/web/public/web_state/web_state.h"
#import "ios/web/public/web_state/web_state_observer_bridge.h"
......
......@@ -254,6 +254,7 @@ source_set("web_internal") {
"//ios/public/provider/chrome/browser",
"//ios/public/provider/chrome/browser/voice",
"//ios/web",
"//ios/web/common:user_agent",
"//ios/web/public",
"//ios/web/public/js_messaging",
"//net",
......
......@@ -33,9 +33,9 @@
#include "ios/public/provider/chrome/browser/chrome_browser_provider.h"
#include "ios/public/provider/chrome/browser/voice/audio_session_controller.h"
#include "ios/public/provider/chrome/browser/voice/voice_search_provider.h"
#include "ios/web/common/user_agent.h"
#include "ios/web/public/navigation/browser_url_rewriter.h"
#include "ios/web/public/service/service_names.mojom.h"
#include "ios/web/public/user_agent.h"
#include "net/http/http_util.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/resource/resource_bundle.h"
......
......@@ -15,6 +15,7 @@ component("io_thread") {
"//components/variations",
"//components/version_info",
"//ios/web",
"//ios/web/common:user_agent",
"//ios/web/public",
"//net",
]
......
......@@ -5,6 +5,7 @@ include_rules = [
"+components/proxy_config",
"+components/variations",
"+components/version_info",
"+ios/web/common",
"+ios/web/public",
"+net",
......
......@@ -33,9 +33,9 @@
#include "components/proxy_config/pref_proxy_config_tracker.h"
#include "components/variations/variations_associated_data.h"
#include "components/version_info/version_info.h"
#include "ios/web/common/user_agent.h"
#include "ios/web/public/thread/web_task_traits.h"
#include "ios/web/public/thread/web_thread.h"
#include "ios/web/public/user_agent.h"
#include "ios/web/public/web_client.h"
#include "net/base/logging_network_change_observer.h"
#include "net/cert/cert_verifier.h"
......
......@@ -389,7 +389,6 @@ source_set("ios_web_public_unittests") {
]
sources = [
"public/user_agent_unittest.mm",
"public/web_state/page_viewport_state_unittest.mm",
]
}
......
......@@ -40,8 +40,8 @@ source_set("web_view_creation_util") {
]
deps = [
":user_agent",
"//base",
"//ios/web/public:user_agent",
"//ios/web/web_state:web_view_internal_creation_util",
"//ios/web/web_state/ui:wk_web_view_configuration_provider",
]
......@@ -51,11 +51,26 @@ source_set("web_view_creation_util") {
configs += [ "//build/config/compiler:enable_arc" ]
}
# This is a separate target as it is used by Cronet.
source_set("user_agent") {
deps = [
"//base",
]
sources = [
"user_agent.h",
"user_agent.mm",
]
configs += [ "//build/config/compiler:enable_arc" ]
}
source_set("unittests") {
configs += [ "//build/config/compiler:enable_arc" ]
testonly = true
deps = [
":common",
":user_agent",
"//base",
"//ios/web/public/navigation",
"//net",
......@@ -68,5 +83,6 @@ source_set("unittests") {
"referrer_util_unittest.cc",
"url_scheme_util_unittest.mm",
"url_util_unittest.cc",
"user_agent_unittest.mm",
]
}
......@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef IOS_WEB_PUBLIC_USER_AGENT_H_
#define IOS_WEB_PUBLIC_USER_AGENT_H_
#ifndef IOS_WEB_COMMON_USER_AGENT_H_
#define IOS_WEB_COMMON_USER_AGENT_H_
#include <string>
......@@ -38,4 +38,4 @@ std::string BuildUserAgentFromProduct(const std::string& product);
} // namespace web
#endif // IOS_WEB_PUBLIC_USER_AGENT_H_
#endif // IOS_WEB_COMMON_USER_AGENT_H_
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "ios/web/public/user_agent.h"
#include "ios/web/common/user_agent.h"
#import <UIKit/UIKit.h>
......@@ -44,19 +44,16 @@ const UAVersions& GetUAVersionsForCurrentOS() {
// Safari version can't be, so a lookup table is used instead (for both, since
// the reported versions should stay in sync).
static const OSVersionMap version_map[] = {
{12, 0, {"605.1", "605.1.15"}},
{11, 0, {"604.1", "604.1.34"}},
{10, 3, {"602.1", "603.1.30"}},
{10, 0, {"602.1", "602.1.50"}},
{12, 0, {"605.1", "605.1.15"}}, {11, 0, {"604.1", "604.1.34"}},
{10, 3, {"602.1", "603.1.30"}}, {10, 0, {"602.1", "602.1.50"}},
{9, 0, {"601.1.46", "601.1"}},
};
int32_t os_major_version = 0;
int32_t os_minor_version = 0;
int32_t os_bugfix_version = 0;
base::SysInfo::OperatingSystemVersionNumbers(&os_major_version,
&os_minor_version,
&os_bugfix_version);
base::SysInfo::OperatingSystemVersionNumbers(
&os_major_version, &os_minor_version, &os_bugfix_version);
// Return the versions corresponding to the first (and thus highest) OS
// version less than or equal to the given OS version.
......@@ -106,9 +103,8 @@ std::string BuildOSCpuInfo() {
int32_t os_major_version = 0;
int32_t os_minor_version = 0;
int32_t os_bugfix_version = 0;
base::SysInfo::OperatingSystemVersionNumbers(&os_major_version,
&os_minor_version,
&os_bugfix_version);
base::SysInfo::OperatingSystemVersionNumbers(
&os_major_version, &os_minor_version, &os_bugfix_version);
// Drop bugfix version for iOS 11.3 and later (as Safari does).
if (@available(iOS 11.3, *))
......@@ -116,33 +112,25 @@ std::string BuildOSCpuInfo() {
std::string os_version;
if (os_bugfix_version == 0) {
base::StringAppendF(&os_version,
"%d_%d",
os_major_version,
base::StringAppendF(&os_version, "%d_%d", os_major_version,
os_minor_version);
} else {
base::StringAppendF(&os_version,
"%d_%d_%d",
os_major_version,
os_minor_version,
os_bugfix_version);
base::StringAppendF(&os_version, "%d_%d_%d", os_major_version,
os_minor_version, os_bugfix_version);
}
// Remove the end of the platform name. For example "iPod touch" becomes
// "iPod".
std::string platform = base::SysNSStringToUTF8(
[[UIDevice currentDevice] model]);
std::string platform =
base::SysNSStringToUTF8([[UIDevice currentDevice] model]);
size_t position = platform.find_first_of(" ");
if (position != std::string::npos)
platform = platform.substr(0, position);
std::string os_cpu;
base::StringAppendF(
&os_cpu,
"%s; CPU %s %s like Mac OS X",
platform.c_str(),
(platform == "iPad") ? "OS" : "iPhone OS",
os_version.c_str());
base::StringAppendF(&os_cpu, "%s; CPU %s %s like Mac OS X", platform.c_str(),
(platform == "iPad") ? "OS" : "iPhone OS",
os_version.c_str());
return os_cpu;
}
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#import "ios/web/public/user_agent.h"
#import "ios/web/common/user_agent.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "testing/platform_test.h"
......
......@@ -5,7 +5,7 @@
#import "ios/web/common/web_view_creation_util.h"
#include "base/logging.h"
#include "ios/web/public/user_agent.h"
#include "ios/web/common/user_agent.h"
#import "ios/web/web_state/ui/wk_web_view_configuration_provider.h"
#import "ios/web/web_state/web_view_internal_creation_util.h"
......
......@@ -7,7 +7,6 @@ import("//ios/build/config.gni")
source_set("public") {
public_deps = [
":ui",
":user_agent",
":web_state_types",
"//ios/web/public/favicon",
"//ios/web/public/navigation",
......@@ -20,6 +19,7 @@ source_set("public") {
deps = [
"//ios/web/common",
"//ios/web/common:user_agent",
"//ios/web/public/deprecated",
"//services/service_manager/public/cpp",
"//ui/base",
......@@ -63,20 +63,6 @@ source_set("web_state_types") {
configs += [ "//build/config/compiler:enable_arc" ]
}
# This is a separate target as it is used by Cronet.
source_set("user_agent") {
deps = [
"//base",
]
sources = [
"user_agent.h",
"user_agent.mm",
]
configs += [ "//build/config/compiler:enable_arc" ]
}
source_set("ui") {
sources = [
"web_state/page_display_state.h",
......
......@@ -4,8 +4,8 @@
source_set("navigation") {
deps = [
"//ios/web/common:user_agent",
"//ios/web/public:ui",
"//ios/web/public:user_agent",
"//ios/web/public/deprecated:deprecated_navigation_util",
"//ui/base",
"//url",
......
......@@ -10,7 +10,7 @@
#include "base/strings/string16.h"
#include "base/supports_user_data.h"
#include "base/time/time.h"
#import "ios/web/public/user_agent.h"
#import "ios/web/common/user_agent.h"
#import "ios/web/public/web_state/page_display_state.h"
#include "ui/base/page_transition_types.h"
......
......@@ -8,11 +8,11 @@
#include <stddef.h>
#include "base/callback.h"
#include "ios/web/common/user_agent.h"
#include "ios/web/public/deprecated/navigation_item_list.h"
#include "ios/web/public/navigation/browser_url_rewriter.h"
#include "ios/web/public/navigation/referrer.h"
#include "ios/web/public/navigation/reload_type.h"
#include "ios/web/public/user_agent.h"
#include "ui/base/page_transition_types.h"
@class NSDictionary;
......
......@@ -6,8 +6,8 @@ source_set("session") {
configs += [ "//build/config/compiler:enable_arc" ]
deps = [
"//base",
"//ios/web/common:user_agent",
"//ios/web/public",
"//ios/web/public:user_agent",
"//ios/web/public/navigation",
"//net",
"//url",
......
......@@ -10,8 +10,8 @@
#include "base/strings/string16.h"
#include "base/time/time.h"
#include "ios/web/common/user_agent.h"
#include "ios/web/public/navigation/referrer.h"
#include "ios/web/public/user_agent.h"
#import "ios/web/public/web_state/page_display_state.h"
#include "url/gurl.h"
......
......@@ -16,7 +16,7 @@
#include "base/strings/string_piece.h"
#include "base/task/thread_pool/thread_pool.h"
#include "base/values.h"
#include "ios/web/public/user_agent.h"
#include "ios/web/common/user_agent.h"
#include "mojo/public/cpp/system/message_pipe.h"
#include "services/service_manager/public/cpp/manifest.h"
#include "services/service_manager/public/mojom/service.mojom.h"
......
......@@ -66,6 +66,7 @@ source_set("shell") {
"//base",
"//ios/net",
"//ios/web",
"//ios/web/common:user_agent",
"//ios/web/public",
"//ios/web/public/init",
"//net",
......
include_rules = [
# web shell must use only public API or own headers.
"-ios/web",
"+ios/web/common",
"+ios/web/public",
"+ios/web/shell",
"+services/test/echo",
......
......@@ -7,8 +7,8 @@
#import <UIKit/UIKit.h>
#include "base/bind.h"
#include "ios/web/common/user_agent.h"
#include "ios/web/public/service/service_names.mojom.h"
#include "ios/web/public/user_agent.h"
#import "ios/web/public/web_state/web_state.h"
#include "ios/web/shell/shell_web_main_parts.h"
#import "ios/web/shell/web_usage_controller.mojom.h"
......
......@@ -81,8 +81,8 @@ source_set("page_viewport_state") {
source_set("web_view_internal_creation_util") {
deps = [
"//base",
"//ios/web/common:user_agent",
"//ios/web/public",
"//ios/web/public:user_agent",
"//ios/web/web_state/ui:crw_context_menu_controller",
"//ios/web/web_state/ui:wk_web_view_configuration_provider",
]
......
......@@ -8,7 +8,7 @@
#import <CoreGraphics/CoreGraphics.h>
#import <WebKit/WebKit.h>
#include "ios/web/public/user_agent.h"
#include "ios/web/common/user_agent.h"
@protocol CRWContextMenuDelegate;
......
......@@ -310,6 +310,7 @@ ios_web_view_deps = [
"//ios/net",
"//ios/web",
"//ios/web/common",
"//ios/web/common:user_agent",
"//ios/web/public",
"//ios/web/public/init",
"//ios/web/public/deprecated",
......
......@@ -12,10 +12,10 @@
#include "base/task/post_task.h"
#include "components/ssl_errors/error_info.h"
#include "components/strings/grit/components_strings.h"
#include "ios/web/common/user_agent.h"
#include "ios/web/public/security/ssl_status.h"
#include "ios/web/public/thread/web_task_traits.h"
#include "ios/web/public/thread/web_thread.h"
#include "ios/web/public/user_agent.h"
#import "ios/web_view/internal/cwv_ssl_status_internal.h"
#import "ios/web_view/internal/cwv_web_view_internal.h"
#include "ios/web_view/internal/web_view_browser_state.h"
......
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