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 Apple Inc. All rights reserved. | 5 * Copyright (C) 2004, 2005, 2006, 2007 Apple Inc. All rights reserved. |
6 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 6 * (C) 2006 Alexey Proskuryakov (ap@nypop.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 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
175 void HTMLTextFormControlElement::setSelectionDirection(const String& direction) | 175 void HTMLTextFormControlElement::setSelectionDirection(const String& direction) |
176 { | 176 { |
177 setSelectionRange(selectionStart(), selectionEnd(), direction); | 177 setSelectionRange(selectionStart(), selectionEnd(), direction); |
178 } | 178 } |
179 | 179 |
180 void HTMLTextFormControlElement::select() | 180 void HTMLTextFormControlElement::select() |
181 { | 181 { |
182 setSelectionRange(0, numeric_limits<int>::max(), SelectionHasNoDirection); | 182 setSelectionRange(0, numeric_limits<int>::max(), SelectionHasNoDirection); |
183 } | 183 } |
184 | 184 |
185 String HTMLTextFormControlElement::selectedText() const | |
186 { | |
187 if (!isTextFormControl()) | |
188 return String(); | |
189 return value().substring(selectionStart(), selectionEnd() - selectionStart()
); | |
190 } | |
191 | |
192 void HTMLTextFormControlElement::dispatchFormControlChangeEvent() | 185 void HTMLTextFormControlElement::dispatchFormControlChangeEvent() |
193 { | 186 { |
194 if (m_textAsOfLastFormControlChangeEvent != value()) { | 187 if (m_textAsOfLastFormControlChangeEvent != value()) { |
195 HTMLElement::dispatchChangeEvent(); | 188 HTMLElement::dispatchChangeEvent(); |
196 setTextAsOfLastFormControlChangeEvent(value()); | 189 setTextAsOfLastFormControlChangeEvent(value()); |
197 } | 190 } |
198 setChangedSinceLastFormControlChangeEvent(false); | 191 setChangedSinceLastFormControlChangeEvent(false); |
199 } | 192 } |
200 | 193 |
201 static inline bool hasVisibleTextArea(RenderObject* renderer, HTMLElement* inner
Text) | 194 static inline bool hasVisibleTextArea(RenderObject* renderer, HTMLElement* inner
Text) |
(...skipping 448 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
650 | 643 |
651 return "ltr"; | 644 return "ltr"; |
652 } | 645 } |
653 | 646 |
654 HTMLElement* HTMLTextFormControlElement::innerTextElement() const | 647 HTMLElement* HTMLTextFormControlElement::innerTextElement() const |
655 { | 648 { |
656 return toHTMLElement(userAgentShadowRoot()->getElementById(ShadowElementName
s::innerEditor())); | 649 return toHTMLElement(userAgentShadowRoot()->getElementById(ShadowElementName
s::innerEditor())); |
657 } | 650 } |
658 | 651 |
659 } // namespace Webcore | 652 } // namespace Webcore |
OLD | NEW |