1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "content/public/common/window_container_type.h" 6 7 #include "base/strings/string_util.h" 8 #include "third_party/WebKit/public/platform/WebString.h" 9 #include "third_party/WebKit/public/platform/WebVector.h" 10 #include "third_party/WebKit/public/web/WebWindowFeatures.h" 11 12 namespace { 13 14 const char kBackground[] = "background"; 15 const char kPersistent[] = "persistent"; 16 17 } // namespace 18 WindowFeaturesToContainerType(const blink::WebWindowFeatures & window_features)19WindowContainerType WindowFeaturesToContainerType( 20 const blink::WebWindowFeatures& window_features) { 21 bool background = false; 22 bool persistent = false; 23 24 for (size_t i = 0; i < window_features.additionalFeatures.size(); ++i) { 25 if (LowerCaseEqualsASCII(window_features.additionalFeatures[i], 26 kBackground)) 27 background = true; 28 else if (LowerCaseEqualsASCII(window_features.additionalFeatures[i], 29 kPersistent)) 30 persistent = true; 31 } 32 33 if (background) { 34 if (persistent) 35 return WINDOW_CONTAINER_TYPE_PERSISTENT; 36 else 37 return WINDOW_CONTAINER_TYPE_BACKGROUND; 38 } else { 39 return WINDOW_CONTAINER_TYPE_NORMAL; 40 } 41 } 42