| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2000 Harri Porten (porten@kde.org) | 2 * Copyright (C) 2000 Harri Porten (porten@kde.org) |
| 3 * Copyright (C) 2006 Jon Shier (jshier@iastate.edu) | 3 * Copyright (C) 2006 Jon Shier (jshier@iastate.edu) |
| 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2010 Apple Inc. All rights resev
ed. | 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2010 Apple Inc. All rights resev
ed. |
| 5 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) | 5 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) |
| 6 * | 6 * |
| 7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
| 8 * modify it under the terms of the GNU Lesser General Public | 8 * modify it under the terms of the GNU Lesser General Public |
| 9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
| 10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
| (...skipping 30 matching lines...) Expand all Loading... |
| 41 , xSet(false) | 41 , xSet(false) |
| 42 , y(0) | 42 , y(0) |
| 43 , ySet(false) | 43 , ySet(false) |
| 44 , width(0) | 44 , width(0) |
| 45 , widthSet(false) | 45 , widthSet(false) |
| 46 , height(0) | 46 , height(0) |
| 47 , heightSet(false) | 47 , heightSet(false) |
| 48 , resizable(true) | 48 , resizable(true) |
| 49 , fullscreen(false) | 49 , fullscreen(false) |
| 50 , dialog(false) | 50 , dialog(false) |
| 51 , noopener(false) |
| 51 { | 52 { |
| 52 /* | 53 /* |
| 53 The IE rule is: all features except for channelmode and fullscreen default
to YES, but | 54 The IE rule is: all features except for channelmode and fullscreen default
to YES, but |
| 54 if the user specifies a feature string, all features default to NO. (There
is no public | 55 if the user specifies a feature string, all features default to NO. (There
is no public |
| 55 standard that applies to this method.) | 56 standard that applies to this method.) |
| 56 | 57 |
| 57 <http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/open_0.a
sp> | 58 <http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/open_0.a
sp> |
| 58 We always allow a window to be resized, which is consistent with Firefox. | 59 We always allow a window to be resized, which is consistent with Firefox. |
| 59 */ | 60 */ |
| 60 | 61 |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 113 | 114 |
| 114 // skip to first separator | 115 // skip to first separator |
| 115 while (i < length && !isWindowFeaturesSeparator(buffer[i])) | 116 while (i < length && !isWindowFeaturesSeparator(buffer[i])) |
| 116 i++; | 117 i++; |
| 117 valueEnd = i; | 118 valueEnd = i; |
| 118 | 119 |
| 119 ASSERT_WITH_SECURITY_IMPLICATION(i <= length); | 120 ASSERT_WITH_SECURITY_IMPLICATION(i <= length); |
| 120 | 121 |
| 121 String keyString(buffer.substring(keyBegin, keyEnd - keyBegin)); | 122 String keyString(buffer.substring(keyBegin, keyEnd - keyBegin)); |
| 122 String valueString(buffer.substring(valueBegin, valueEnd - valueBegin)); | 123 String valueString(buffer.substring(valueBegin, valueEnd - valueBegin)); |
| 124 |
| 123 setWindowFeature(keyString, valueString); | 125 setWindowFeature(keyString, valueString); |
| 124 } | 126 } |
| 125 } | 127 } |
| 126 | 128 |
| 127 void WindowFeatures::setWindowFeature(const String& keyString, const String& val
ueString) | 129 void WindowFeatures::setWindowFeature(const String& keyString, const String& val
ueString) |
| 128 { | 130 { |
| 129 int value; | 131 int value; |
| 130 | 132 |
| 131 // Listing a key with no value is shorthand for key=yes | 133 // Listing a key with no value is shorthand for key=yes |
| 132 if (valueString.isEmpty() || valueString == "yes") | 134 if (valueString.isEmpty() || valueString == "yes") |
| (...skipping 21 matching lines...) Expand all Loading... |
| 154 } else if (keyString == "toolbar") { | 156 } else if (keyString == "toolbar") { |
| 155 toolBarVisible = value; | 157 toolBarVisible = value; |
| 156 } else if (keyString == "location") { | 158 } else if (keyString == "location") { |
| 157 locationBarVisible = value; | 159 locationBarVisible = value; |
| 158 } else if (keyString == "status") { | 160 } else if (keyString == "status") { |
| 159 statusBarVisible = value; | 161 statusBarVisible = value; |
| 160 } else if (keyString == "fullscreen") { | 162 } else if (keyString == "fullscreen") { |
| 161 fullscreen = value; | 163 fullscreen = value; |
| 162 } else if (keyString == "scrollbars") { | 164 } else if (keyString == "scrollbars") { |
| 163 scrollbarsVisible = value; | 165 scrollbarsVisible = value; |
| 166 } else if (keyString == "noopener") { |
| 167 noopener = true; |
| 164 } else if (value == 1) { | 168 } else if (value == 1) { |
| 165 additionalFeatures.append(keyString); | 169 additionalFeatures.append(keyString); |
| 166 } | 170 } |
| 167 } | 171 } |
| 168 | 172 |
| 169 WindowFeatures::WindowFeatures(const String& dialogFeaturesString, const IntRect
& screenAvailableRect) | 173 WindowFeatures::WindowFeatures(const String& dialogFeaturesString, const IntRect
& screenAvailableRect) |
| 170 : widthSet(true) | 174 : widthSet(true) |
| 171 , heightSet(true) | 175 , heightSet(true) |
| 172 , menuBarVisible(false) | 176 , menuBarVisible(false) |
| 173 , toolBarVisible(false) | 177 , toolBarVisible(false) |
| 174 , locationBarVisible(false) | 178 , locationBarVisible(false) |
| 175 , fullscreen(false) | 179 , fullscreen(false) |
| 176 , dialog(true) | 180 , dialog(true) |
| 181 , noopener(false) |
| 177 { | 182 { |
| 178 DialogFeaturesMap features; | 183 DialogFeaturesMap features; |
| 179 parseDialogFeatures(dialogFeaturesString, features); | 184 parseDialogFeatures(dialogFeaturesString, features); |
| 180 | 185 |
| 181 const bool trusted = false; | 186 const bool trusted = false; |
| 182 | 187 |
| 183 // The following features from Microsoft's documentation are not implemented
: | 188 // The following features from Microsoft's documentation are not implemented
: |
| 184 // - default font settings | 189 // - default font settings |
| 185 // - width, height, left, and top specified in units other than "px" | 190 // - width, height, left, and top specified in units other than "px" |
| 186 // - edge (sunken or raised, default is raised) | 191 // - edge (sunken or raised, default is raised) |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 259 if (separatorPosition != kNotFound) { | 264 if (separatorPosition != kNotFound) { |
| 260 value = featureString.substring(separatorPosition + 1).stripWhiteSpa
ce().lower(); | 265 value = featureString.substring(separatorPosition + 1).stripWhiteSpa
ce().lower(); |
| 261 value = value.left(value.find(' ')); | 266 value = value.left(value.find(' ')); |
| 262 } | 267 } |
| 263 | 268 |
| 264 map.set(key, value); | 269 map.set(key, value); |
| 265 } | 270 } |
| 266 } | 271 } |
| 267 | 272 |
| 268 } // namespace blink | 273 } // namespace blink |
| OLD | NEW |