| // 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. |
| |
| #include "extensions/common/ad_injection_constants.h" |
| |
| #include "base/strings/string_util.h" |
| |
| namespace extensions { |
| namespace ad_injection_constants { |
| |
| namespace keys { |
| |
| const char kType[] = "type"; |
| const char kChildren[] = "children"; |
| const char kSrc[] = "src"; |
| const char kHref[] = "href"; |
| |
| } // namespace keys |
| |
| const char kHtmlIframeSrcApiName[] = "HTMLIFrameElement.src"; |
| const char kHtmlEmbedSrcApiName[] = "HTMLEmbedElement.src"; |
| const char kHtmlAnchorHrefApiName[] = "HTMLAnchorElement.href"; |
| const char kAppendChildApiSuffix[] = "appendChild"; |
| |
| // The maximum number of children to check when we examine a newly-added |
| // element. |
| extern const size_t kMaximumChildrenToCheck = 10u; |
| |
| // The maximum depth to check when we examine a newly-added element. |
| extern const size_t kMaximumDepthToCheck = 5u; |
| |
| bool ApiCanInjectAds(const std::string& api) { |
| return api == kHtmlIframeSrcApiName || |
| api == kHtmlEmbedSrcApiName || |
| api == kHtmlAnchorHrefApiName || |
| EndsWith(api, kAppendChildApiSuffix, true /* case sensitive */); |
| } |
| |
| } // namespace ad_injection_constants |
| } // namespace extensions |