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

Side by Side Diff: third_party/WebKit/Source/core/html/HTMLSelectElement.h

Issue 2113953002: Merge "Improve performance to remove an OPTION from a SELECT element." to M52 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2743
Patch Set: Created 4 years, 5 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
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/html/HTMLSelectElement.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). 2 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
3 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 3 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
4 * (C) 1999 Antti Koivisto (koivisto@kde.org) 4 * (C) 1999 Antti Koivisto (koivisto@kde.org)
5 * (C) 2000 Dirk Mueller (mueller@kde.org) 5 * (C) 2000 Dirk Mueller (mueller@kde.org)
6 * Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights reserved. 6 * Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights reserved.
7 * Copyright (C) 2010 Google Inc. All rights reserved. 7 * Copyright (C) 2010 Google Inc. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after
186 void didRecalcStyle(StyleRecalcChange) override; 186 void didRecalcStyle(StyleRecalcChange) override;
187 void detach(const AttachContext& = AttachContext()) override; 187 void detach(const AttachContext& = AttachContext()) override;
188 void appendToFormData(FormData&) override; 188 void appendToFormData(FormData&) override;
189 void didAddUserAgentShadowRoot(ShadowRoot&) override; 189 void didAddUserAgentShadowRoot(ShadowRoot&) override;
190 190
191 void defaultEventHandler(Event*) override; 191 void defaultEventHandler(Event*) override;
192 192
193 void dispatchInputAndChangeEventForMenuList(); 193 void dispatchInputAndChangeEventForMenuList();
194 194
195 void recalcListItems() const; 195 void recalcListItems() const;
196 void resetToDefaultSelection(); 196 enum ResetReason {
197 ResetReasonSelectedOptionRemoved,
198 ResetReasonOthers
199 };
200 void resetToDefaultSelection(ResetReason = ResetReasonOthers);
197 void typeAheadFind(KeyboardEvent*); 201 void typeAheadFind(KeyboardEvent*);
198 void saveLastSelection(); 202 void saveLastSelection();
199 // Returns the first selected OPTION, or nullptr. 203 // Returns the first selected OPTION, or nullptr.
200 HTMLOptionElement* selectedOption() const; 204 HTMLOptionElement* selectedOption() const;
201 205
202 bool isOptionalFormControl() const override { return !isRequiredFormControl( ); } 206 bool isOptionalFormControl() const override { return !isRequiredFormControl( ); }
203 bool isRequiredFormControl() const override; 207 bool isRequiredFormControl() const override;
204 208
205 bool hasPlaceholderLabelOption() const; 209 bool hasPlaceholderLabelOption() const;
206 210
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
278 282
279 FRIEND_TEST_ALL_PREFIXES(HTMLSelectElementTest, FirstSelectableOption); 283 FRIEND_TEST_ALL_PREFIXES(HTMLSelectElementTest, FirstSelectableOption);
280 FRIEND_TEST_ALL_PREFIXES(HTMLSelectElementTest, LastSelectableOption); 284 FRIEND_TEST_ALL_PREFIXES(HTMLSelectElementTest, LastSelectableOption);
281 FRIEND_TEST_ALL_PREFIXES(HTMLSelectElementTest, NextSelectableOption); 285 FRIEND_TEST_ALL_PREFIXES(HTMLSelectElementTest, NextSelectableOption);
282 FRIEND_TEST_ALL_PREFIXES(HTMLSelectElementTest, PreviousSelectableOption); 286 FRIEND_TEST_ALL_PREFIXES(HTMLSelectElementTest, PreviousSelectableOption);
283 }; 287 };
284 288
285 } // namespace blink 289 } // namespace blink
286 290
287 #endif // HTMLSelectElement_h 291 #endif // HTMLSelectElement_h
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/html/HTMLSelectElement.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698