Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(29)

Side by Side Diff: Source/core/html/HTMLTextAreaElement.h

Issue 435753003: Implement minlength for <input> and <textarea>. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Add layout tests for minlength & maxlength together; fix comments Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * Copyright (C) 2004, 2005, 2006, 2007, 2010 Apple Inc. All rights reserved. 5 * Copyright (C) 2004, 2005, 2006, 2007, 2010 Apple Inc. All rights reserved.
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
(...skipping 29 matching lines...) Expand all
40 int rows() const { return m_rows; } 40 int rows() const { return m_rows; }
41 41
42 bool shouldWrapText() const { return m_wrap != NoWrap; } 42 bool shouldWrapText() const { return m_wrap != NoWrap; }
43 43
44 virtual String value() const override; 44 virtual String value() const override;
45 void setValue(const String&, TextFieldEventBehavior = DispatchNoEvent); 45 void setValue(const String&, TextFieldEventBehavior = DispatchNoEvent);
46 String defaultValue() const; 46 String defaultValue() const;
47 void setDefaultValue(const String&); 47 void setDefaultValue(const String&);
48 int textLength() const { return value().length(); } 48 int textLength() const { return value().length(); }
49 int maxLength() const; 49 int maxLength() const;
50 int minLength() const;
50 void setMaxLength(int, ExceptionState&); 51 void setMaxLength(int, ExceptionState&);
52 void setMinLength(int, ExceptionState&);
51 53
52 String suggestedValue() const; 54 String suggestedValue() const;
53 void setSuggestedValue(const String&); 55 void setSuggestedValue(const String&);
54 56
55 // For ValidityState 57 // For ValidityState
56 virtual String validationMessage() const override; 58 virtual String validationMessage() const override;
57 virtual bool valueMissing() const override; 59 virtual bool valueMissing() const override;
58 virtual bool tooLong() const override; 60 virtual bool tooLong() const override;
61 virtual bool tooShort() const override;
59 bool isValidValue(const String&) const; 62 bool isValidValue(const String&) const;
60 63
61 void setCols(int); 64 void setCols(int);
62 void setRows(int); 65 void setRows(int);
63 66
64 private: 67 private:
65 HTMLTextAreaElement(Document&, HTMLFormElement*); 68 HTMLTextAreaElement(Document&, HTMLFormElement*);
66 69
67 enum WrapMethod { NoWrap, SoftWrap, HardWrap }; 70 enum WrapMethod { NoWrap, SoftWrap, HardWrap };
68 71
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
116 virtual void updateFocusAppearance(bool restorePreviousSelection) override; 119 virtual void updateFocusAppearance(bool restorePreviousSelection) override;
117 120
118 virtual void accessKeyAction(bool sendMouseEvents) override; 121 virtual void accessKeyAction(bool sendMouseEvents) override;
119 122
120 virtual bool matchesReadOnlyPseudoClass() const override; 123 virtual bool matchesReadOnlyPseudoClass() const override;
121 virtual bool matchesReadWritePseudoClass() const override; 124 virtual bool matchesReadWritePseudoClass() const override;
122 125
123 // If the String* argument is 0, apply this->value(). 126 // If the String* argument is 0, apply this->value().
124 bool valueMissing(const String*) const; 127 bool valueMissing(const String*) const;
125 bool tooLong(const String*, NeedsToCheckDirtyFlag) const; 128 bool tooLong(const String*, NeedsToCheckDirtyFlag) const;
129 bool tooShort(const String*, NeedsToCheckDirtyFlag) const;
126 130
127 int m_rows; 131 int m_rows;
128 int m_cols; 132 int m_cols;
129 WrapMethod m_wrap; 133 WrapMethod m_wrap;
130 mutable String m_value; 134 mutable String m_value;
131 mutable bool m_isDirty; 135 mutable bool m_isDirty;
132 bool m_valueIsUpToDate; 136 bool m_valueIsUpToDate;
133 String m_suggestedValue; 137 String m_suggestedValue;
134 }; 138 };
135 139
136 } // namespace blink 140 } // namespace blink
137 141
138 #endif // HTMLTextAreaElement_h 142 #endif // HTMLTextAreaElement_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698