window_container_type.cc revision 7d4cd473f85ac64c3747c96c277f9e506a0d2246
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 12namespace { 13 14const char kBackground[] = "background"; 15const char kPersistent[] = "persistent"; 16 17} // namespace 18 19WindowContainerType WindowFeaturesToContainerType( 20 const WebKit::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