| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
| 5 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 5 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
| 6 * Copyright (C) 2004, 2005, 2006, 2010 Apple Inc. All rights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2010 Apple Inc. All rights reserved. |
| 7 * Copyright (C) 2010 Google Inc. All rights reserved. | 7 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 8 * Copyright (C) 2011 Motorola Mobility, Inc. All rights reserved. | 8 * Copyright (C) 2011 Motorola Mobility, Inc. All rights reserved. |
| 9 * | 9 * |
| 10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
| (...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 275 return collectOptionInnerText().stripWhiteSpace(isHTMLSpace<UChar>).simplify
WhiteSpace(isHTMLSpace<UChar>); | 275 return collectOptionInnerText().stripWhiteSpace(isHTMLSpace<UChar>).simplify
WhiteSpace(isHTMLSpace<UChar>); |
| 276 } | 276 } |
| 277 | 277 |
| 278 void HTMLOptionElement::setLabel(const AtomicString& label) | 278 void HTMLOptionElement::setLabel(const AtomicString& label) |
| 279 { | 279 { |
| 280 setAttribute(labelAttr, label); | 280 setAttribute(labelAttr, label); |
| 281 } | 281 } |
| 282 | 282 |
| 283 void HTMLOptionElement::updateNonRenderStyle() | 283 void HTMLOptionElement::updateNonRenderStyle() |
| 284 { | 284 { |
| 285 bool oldDisplayNoneStatus = isDisplayNone(); |
| 285 m_style = originalStyleForRenderer(); | 286 m_style = originalStyleForRenderer(); |
| 287 if (oldDisplayNoneStatus != isDisplayNone()) { |
| 288 if (HTMLSelectElement* select = ownerSelectElement()) |
| 289 select->updateListOnRenderer(); |
| 290 } |
| 286 } | 291 } |
| 287 | 292 |
| 288 RenderStyle* HTMLOptionElement::nonRendererStyle() const | 293 RenderStyle* HTMLOptionElement::nonRendererStyle() const |
| 289 { | 294 { |
| 290 return m_style.get(); | 295 return m_style.get(); |
| 291 } | 296 } |
| 292 | 297 |
| 293 PassRefPtr<RenderStyle> HTMLOptionElement::customStyleForRenderer() | 298 PassRefPtr<RenderStyle> HTMLOptionElement::customStyleForRenderer() |
| 294 { | 299 { |
| 295 updateNonRenderStyle(); | 300 updateNonRenderStyle(); |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 357 } | 362 } |
| 358 | 363 |
| 359 HTMLFormElement* HTMLOptionElement::form() const | 364 HTMLFormElement* HTMLOptionElement::form() const |
| 360 { | 365 { |
| 361 if (HTMLSelectElement* selectElement = ownerSelectElement()) | 366 if (HTMLSelectElement* selectElement = ownerSelectElement()) |
| 362 return selectElement->formOwner(); | 367 return selectElement->formOwner(); |
| 363 | 368 |
| 364 return 0; | 369 return 0; |
| 365 } | 370 } |
| 366 | 371 |
| 372 bool HTMLOptionElement::isDisplayNone() const |
| 373 { |
| 374 ContainerNode* parent = parentNode(); |
| 375 // Check for parent optgroup having display NONE |
| 376 if (parent && isHTMLOptGroupElement(*parent)) { |
| 377 if (toHTMLOptGroupElement(*parent).isDisplayNone()) |
| 378 return true; |
| 379 } |
| 380 RenderStyle* style = nonRendererStyle(); |
| 381 return style && style->display() == NONE; |
| 382 } |
| 383 |
| 367 } // namespace WebCore | 384 } // namespace WebCore |
| OLD | NEW |