| OLD | NEW |
| 1 /* | 1 /* |
| 2 * This file is part of the select element renderer in WebCore. | 2 * This file is part of the select element renderer in WebCore. |
| 3 * | 3 * |
| 4 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). | 4 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). |
| 5 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserv
ed. | 5 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserv
ed. |
| 6 * 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) | 6 * 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) |
| 7 * | 7 * |
| 8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
| 9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
| 10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
| (...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 228 } | 228 } |
| 229 | 229 |
| 230 setText(text.stripWhiteSpace()); | 230 setText(text.stripWhiteSpace()); |
| 231 didUpdateActiveOption(optionIndex); | 231 didUpdateActiveOption(optionIndex); |
| 232 } | 232 } |
| 233 | 233 |
| 234 void RenderMenuList::setText(const String& s) | 234 void RenderMenuList::setText(const String& s) |
| 235 { | 235 { |
| 236 if (s.isEmpty()) { | 236 if (s.isEmpty()) { |
| 237 if (!m_buttonText || !m_buttonText->isBR()) { | 237 if (!m_buttonText || !m_buttonText->isBR()) { |
| 238 // FIXME: We should not modify the structure of the render tree outs
ide of |
| 239 // recalc style. crbug.com/370462 |
| 240 DeprecatedDisableModifyRenderTreeStructureAsserts disabler; |
| 238 if (m_buttonText) | 241 if (m_buttonText) |
| 239 m_buttonText->destroy(); | 242 m_buttonText->destroy(); |
| 240 m_buttonText = new RenderBR(&document()); | 243 m_buttonText = new RenderBR(&document()); |
| 241 m_buttonText->setStyle(style()); | 244 m_buttonText->setStyle(style()); |
| 242 addChild(m_buttonText); | 245 addChild(m_buttonText); |
| 243 } | 246 } |
| 244 } else { | 247 } else { |
| 245 if (m_buttonText && !m_buttonText->isBR()) | 248 if (m_buttonText && !m_buttonText->isBR()) |
| 246 m_buttonText->setText(s.impl(), true); | 249 m_buttonText->setText(s.impl(), true); |
| 247 else { | 250 else { |
| 251 // FIXME: We should not modify the structure of the render tree outs
ide of |
| 252 // recalc style. crbug.com/370462 |
| 253 DeprecatedDisableModifyRenderTreeStructureAsserts disabler; |
| 248 if (m_buttonText) | 254 if (m_buttonText) |
| 249 m_buttonText->destroy(); | 255 m_buttonText->destroy(); |
| 250 m_buttonText = new RenderText(&document(), s.impl()); | 256 m_buttonText = new RenderText(&document(), s.impl()); |
| 251 m_buttonText->setStyle(style()); | 257 m_buttonText->setStyle(style()); |
| 252 // We need to set the text explicitly though it was specified in the | 258 // We need to set the text explicitly though it was specified in the |
| 253 // constructor because RenderText doesn't refer to the text | 259 // constructor because RenderText doesn't refer to the text |
| 254 // specified in the constructor in a case of re-transforming. | 260 // specified in the constructor in a case of re-transforming. |
| 255 m_buttonText->setText(s.impl(), true); | 261 m_buttonText->setText(s.impl(), true); |
| 256 addChild(m_buttonText); | 262 addChild(m_buttonText); |
| 257 } | 263 } |
| (...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 565 HTMLElement* element = listItems[listIndex]; | 571 HTMLElement* element = listItems[listIndex]; |
| 566 return isHTMLOptionElement(*element) && toHTMLOptionElement(*element).select
ed(); | 572 return isHTMLOptionElement(*element) && toHTMLOptionElement(*element).select
ed(); |
| 567 } | 573 } |
| 568 | 574 |
| 569 void RenderMenuList::setTextFromItem(unsigned listIndex) | 575 void RenderMenuList::setTextFromItem(unsigned listIndex) |
| 570 { | 576 { |
| 571 setTextFromOption(selectElement()->listToOptionIndex(listIndex)); | 577 setTextFromOption(selectElement()->listToOptionIndex(listIndex)); |
| 572 } | 578 } |
| 573 | 579 |
| 574 } | 580 } |
| OLD | NEW |