| 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 |