OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2007-2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2007-2011 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
192 if (info.Holder()->HasRealNamedCallbackProperty(name)) | 192 if (info.Holder()->HasRealNamedCallbackProperty(name)) |
193 return; | 193 return; |
194 | 194 |
195 // Search the style declaration. | 195 // Search the style declaration. |
196 CSSPropertyInfo* propInfo = cssPropertyInfo(name); | 196 CSSPropertyInfo* propInfo = cssPropertyInfo(name); |
197 | 197 |
198 // Do not handle non-property names. | 198 // Do not handle non-property names. |
199 if (!propInfo) | 199 if (!propInfo) |
200 return; | 200 return; |
201 | 201 |
202 CSSStyleDeclaration* imp = V8CSSStyleDeclaration::toNative(info.Holder()); | 202 CSSStyleDeclaration* impl = V8CSSStyleDeclaration::toNative(info.Holder()); |
203 RefPtrWillBeRawPtr<CSSValue> cssValue = imp->getPropertyCSSValueInternal(sta
tic_cast<CSSPropertyID>(propInfo->propID)); | 203 RefPtrWillBeRawPtr<CSSValue> cssValue = impl->getPropertyCSSValueInternal(st
atic_cast<CSSPropertyID>(propInfo->propID)); |
204 if (cssValue) { | 204 if (cssValue) { |
205 v8SetReturnValueStringOrNull(info, cssValue->cssText(), info.GetIsolate(
)); | 205 v8SetReturnValueStringOrNull(info, cssValue->cssText(), info.GetIsolate(
)); |
206 return; | 206 return; |
207 } | 207 } |
208 | 208 |
209 String result = imp->getPropertyValueInternal(static_cast<CSSPropertyID>(pro
pInfo->propID)); | 209 String result = impl->getPropertyValueInternal(static_cast<CSSPropertyID>(pr
opInfo->propID)); |
210 if (result.isNull()) | 210 if (result.isNull()) |
211 result = ""; // convert null to empty string. | 211 result = ""; // convert null to empty string. |
212 | 212 |
213 v8SetReturnValueString(info, result, info.GetIsolate()); | 213 v8SetReturnValueString(info, result, info.GetIsolate()); |
214 } | 214 } |
215 | 215 |
216 void V8CSSStyleDeclaration::namedPropertySetterCustom(v8::Local<v8::String> name
, v8::Local<v8::Value> value, const v8::PropertyCallbackInfo<v8::Value>& info) | 216 void V8CSSStyleDeclaration::namedPropertySetterCustom(v8::Local<v8::String> name
, v8::Local<v8::Value> value, const v8::PropertyCallbackInfo<v8::Value>& info) |
217 { | 217 { |
218 CSSStyleDeclaration* imp = V8CSSStyleDeclaration::toNative(info.Holder()); | 218 CSSStyleDeclaration* impl = V8CSSStyleDeclaration::toNative(info.Holder()); |
219 CSSPropertyInfo* propInfo = cssPropertyInfo(name); | 219 CSSPropertyInfo* propInfo = cssPropertyInfo(name); |
220 if (!propInfo) | 220 if (!propInfo) |
221 return; | 221 return; |
222 | 222 |
223 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<WithNullCheck>, proper
tyValue, value); | 223 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<WithNullCheck>, proper
tyValue, value); |
224 ExceptionState exceptionState(ExceptionState::SetterContext, getPropertyName
(static_cast<CSSPropertyID>(propInfo->propID)), "CSSStyleDeclaration", info.Hold
er(), info.GetIsolate()); | 224 ExceptionState exceptionState(ExceptionState::SetterContext, getPropertyName
(static_cast<CSSPropertyID>(propInfo->propID)), "CSSStyleDeclaration", info.Hold
er(), info.GetIsolate()); |
225 imp->setPropertyInternal(static_cast<CSSPropertyID>(propInfo->propID), prope
rtyValue, false, exceptionState); | 225 impl->setPropertyInternal(static_cast<CSSPropertyID>(propInfo->propID), prop
ertyValue, false, exceptionState); |
226 | 226 |
227 if (exceptionState.throwIfNeeded()) | 227 if (exceptionState.throwIfNeeded()) |
228 return; | 228 return; |
229 | 229 |
230 v8SetReturnValue(info, value); | 230 v8SetReturnValue(info, value); |
231 } | 231 } |
232 | 232 |
233 } // namespace WebCore | 233 } // namespace WebCore |
OLD | NEW |