| 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 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r
ights reserved. | 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r
ights reserved. |
| 6 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 6 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
| 7 * Copyright (C) 2007 Samuel Weinig (sam@webkit.org) | 7 * Copyright (C) 2007 Samuel Weinig (sam@webkit.org) |
| 8 * Copyright (C) 2010 Google Inc. All rights reserved. | 8 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 9 * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) | 9 * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) |
| 10 * Copyright (C) 2012 Samsung Electronics. All rights reserved. | 10 * Copyright (C) 2012 Samsung Electronics. All rights reserved. |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 109 , m_hasType(false) | 109 , m_hasType(false) |
| 110 , m_isActivatedSubmit(false) | 110 , m_isActivatedSubmit(false) |
| 111 , m_autocomplete(Uninitialized) | 111 , m_autocomplete(Uninitialized) |
| 112 , m_hasNonEmptyList(false) | 112 , m_hasNonEmptyList(false) |
| 113 , m_stateRestored(false) | 113 , m_stateRestored(false) |
| 114 , m_parsingInProgress(createdByParser) | 114 , m_parsingInProgress(createdByParser) |
| 115 , m_valueAttributeWasUpdatedAfterParsing(false) | 115 , m_valueAttributeWasUpdatedAfterParsing(false) |
| 116 , m_wasModifiedByUser(false) | 116 , m_wasModifiedByUser(false) |
| 117 , m_canReceiveDroppedFiles(false) | 117 , m_canReceiveDroppedFiles(false) |
| 118 , m_hasTouchEventHandler(false) | 118 , m_hasTouchEventHandler(false) |
| 119 , m_inputType(InputType::createText(this)) | 119 , m_inputType(InputType::createText(*this)) |
| 120 , m_inputTypeView(m_inputType) | 120 , m_inputTypeView(m_inputType) |
| 121 { | 121 { |
| 122 ASSERT(hasTagName(inputTag) || hasTagName(isindexTag)); | 122 ASSERT(hasTagName(inputTag) || hasTagName(isindexTag)); |
| 123 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI) | 123 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI) |
| 124 setHasCustomStyleCallbacks(); | 124 setHasCustomStyleCallbacks(); |
| 125 #endif | 125 #endif |
| 126 ScriptWrappable::init(this); | 126 ScriptWrappable::init(this); |
| 127 } | 127 } |
| 128 | 128 |
| 129 PassRefPtr<HTMLInputElement> HTMLInputElement::create(const QualifiedName& tagNa
me, Document& document, HTMLFormElement* form, bool createdByParser) | 129 PassRefPtr<HTMLInputElement> HTMLInputElement::create(const QualifiedName& tagNa
me, Document& document, HTMLFormElement* form, bool createdByParser) |
| (...skipping 12 matching lines...) Expand all Loading... |
| 142 | 142 |
| 143 void HTMLInputElement::didAddUserAgentShadowRoot(ShadowRoot*) | 143 void HTMLInputElement::didAddUserAgentShadowRoot(ShadowRoot*) |
| 144 { | 144 { |
| 145 m_inputType->createShadowSubtree(); | 145 m_inputType->createShadowSubtree(); |
| 146 } | 146 } |
| 147 | 147 |
| 148 void HTMLInputElement::didAddShadowRoot(ShadowRoot& root) | 148 void HTMLInputElement::didAddShadowRoot(ShadowRoot& root) |
| 149 { | 149 { |
| 150 if (!root.isOldestAuthorShadowRoot()) | 150 if (!root.isOldestAuthorShadowRoot()) |
| 151 return; | 151 return; |
| 152 m_inputTypeView = InputTypeView::create(this); | 152 m_inputTypeView = InputTypeView::create(*this); |
| 153 } | 153 } |
| 154 | 154 |
| 155 HTMLInputElement::~HTMLInputElement() | 155 HTMLInputElement::~HTMLInputElement() |
| 156 { | 156 { |
| 157 // Need to remove form association while this is still an HTMLInputElement | 157 // Need to remove form association while this is still an HTMLInputElement |
| 158 // so that virtual functions are called correctly. | 158 // so that virtual functions are called correctly. |
| 159 setForm(0); | 159 setForm(0); |
| 160 // setForm(0) may register this to a document-level radio button group. | 160 // setForm(0) may register this to a document-level radio button group. |
| 161 // We should unregister it to avoid accessing a deleted object. | 161 // We should unregister it to avoid accessing a deleted object. |
| 162 if (isRadioButton()) | 162 if (isRadioButton()) |
| (...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 404 if (m_inputType->formControlType() == newTypeName) | 404 if (m_inputType->formControlType() == newTypeName) |
| 405 return; | 405 return; |
| 406 | 406 |
| 407 if (hadType && !InputType::canChangeFromAnotherType(newTypeName)) { | 407 if (hadType && !InputType::canChangeFromAnotherType(newTypeName)) { |
| 408 // Set the attribute back to the old value. | 408 // Set the attribute back to the old value. |
| 409 // Useful in case we were called from inside parseAttribute. | 409 // Useful in case we were called from inside parseAttribute. |
| 410 setAttribute(typeAttr, type()); | 410 setAttribute(typeAttr, type()); |
| 411 return; | 411 return; |
| 412 } | 412 } |
| 413 | 413 |
| 414 RefPtr<InputType> newType = InputType::create(this, newTypeName); | 414 RefPtr<InputType> newType = InputType::create(*this, newTypeName); |
| 415 removeFromRadioButtonGroup(); | 415 removeFromRadioButtonGroup(); |
| 416 | 416 |
| 417 bool didStoreValue = m_inputType->storesValueSeparateFromAttribute(); | 417 bool didStoreValue = m_inputType->storesValueSeparateFromAttribute(); |
| 418 bool didRespectHeightAndWidth = m_inputType->shouldRespectHeightAndWidthAttr
ibutes(); | 418 bool didRespectHeightAndWidth = m_inputType->shouldRespectHeightAndWidthAttr
ibutes(); |
| 419 | 419 |
| 420 m_inputType->destroyShadowSubtree(); | 420 m_inputType->destroyShadowSubtree(); |
| 421 | 421 |
| 422 bool wasAttached = confusingAndOftenMisusedAttached(); | 422 bool wasAttached = confusingAndOftenMisusedAttached(); |
| 423 if (wasAttached) | 423 if (wasAttached) |
| 424 detach(); | 424 detach(); |
| 425 | 425 |
| 426 m_inputType = newType.release(); | 426 m_inputType = newType.release(); |
| 427 if (hasAuthorShadowRoot()) | 427 if (hasAuthorShadowRoot()) |
| 428 m_inputTypeView = InputTypeView::create(this); | 428 m_inputTypeView = InputTypeView::create(*this); |
| 429 else | 429 else |
| 430 m_inputTypeView = m_inputType; | 430 m_inputTypeView = m_inputType; |
| 431 m_inputType->createShadowSubtree(); | 431 m_inputType->createShadowSubtree(); |
| 432 | 432 |
| 433 bool hasTouchEventHandler = m_inputTypeView->hasTouchEventHandler(); | 433 bool hasTouchEventHandler = m_inputTypeView->hasTouchEventHandler(); |
| 434 if (hasTouchEventHandler != m_hasTouchEventHandler) { | 434 if (hasTouchEventHandler != m_hasTouchEventHandler) { |
| 435 if (hasTouchEventHandler) | 435 if (hasTouchEventHandler) |
| 436 document().didAddTouchEventHandler(this); | 436 document().didAddTouchEventHandler(this); |
| 437 else | 437 else |
| 438 document().didRemoveTouchEventHandler(this); | 438 document().didRemoveTouchEventHandler(this); |
| (...skipping 1425 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1864 } | 1864 } |
| 1865 | 1865 |
| 1866 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI) | 1866 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI) |
| 1867 PassRefPtr<RenderStyle> HTMLInputElement::customStyleForRenderer() | 1867 PassRefPtr<RenderStyle> HTMLInputElement::customStyleForRenderer() |
| 1868 { | 1868 { |
| 1869 return m_inputTypeView->customStyleForRenderer(originalStyleForRenderer()); | 1869 return m_inputTypeView->customStyleForRenderer(originalStyleForRenderer()); |
| 1870 } | 1870 } |
| 1871 #endif | 1871 #endif |
| 1872 | 1872 |
| 1873 } // namespace | 1873 } // namespace |
| OLD | NEW |