Chromium Code Reviews
DescriptionExternalPopupMenu should recreate its popup only if a SELECT subtree is updated
crbug.com/608140 happens because animation on a SELECT element causes
multiple didRecalcStyle calls, and ExternalPopupMenu::updateFromElement
recreates a popup by a HEAD element change.
This CL adds a |reason| argument to PopupMenu::updateFromElement. It is one of
BySelectionChange, ByStyleChange, and ByDOMCHange. ExternalPopupMenu doesn't
recreates its popup if the |reason| is ByStyleChange because ExternalPopupMenu
doesn't support styling.
BUG=608140
Committed: https://crrev.com/1d5b6507ac2cbfdbb733cbefa1dbbce091b11a06
Cr-Commit-Position: refs/heads/master@{#392965}
Patch Set 1 #Patch Set 2 : Add updateFromElement variant #Patch Set 3 : Remove ExternalPopupMenu::m_shownDOMTreeVersion #
Total comments: 2
Patch Set 4 : Add an enum argument to updateFromElement #
Messages
Total messages: 19 (7 generated)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||