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

Issue 1059503002: Re-land: Don't keep recreating AXMenuListPopup (Closed)

Created:
5 years, 8 months ago by dmazzoni
Modified:
5 years, 8 months ago
Reviewers:
je_julie(Not used)
CC:
blink-reviews, nektarios, aboxhall
Base URL:
https://chromium.googlesource.com/chromium/blink.git@suppress_extra_events
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Re-land: Don't keep recreating AXMenuListPopup Every time an AXMenuList (corresponding to a <select> element) needed to update its children, we were recreating the AXMenuListPopup and all of the AXMenuListOptions each time, which is wasteful. This change avoids deleting the popup and stores the options in AXObjectCache by element, rather than by ID, so they can be reused when the options are updated. BUG=323462 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=193517

Patch Set 1 #

Patch Set 2 : Fixed #

Patch Set 3 : More debugging #

Patch Set 4 : Cleaned up #

Patch Set 5 : Reuses objects test passes now #

Patch Set 6 : Clean up code #

Total comments: 6

Patch Set 7 : Address feedback #

Patch Set 8 : Better implementation of updateChildrenIfNecessary #

Patch Set 9 : Fix optgroup #

Unified diffs Side-by-side diffs Delta from patch set Stats (+109 lines, -72 lines) Patch
A LayoutTests/accessibility/menu-list-optgroup.html View 1 2 3 4 5 6 7 8 1 chunk +29 lines, -0 lines 0 comments Download
A + LayoutTests/accessibility/menu-list-popup-reuses-objects.html View 1 2 3 4 5 6 7 1 chunk +15 lines, -6 lines 0 comments Download
A + LayoutTests/accessibility/menu-list-popup-reuses-objects-expected.txt View 1 2 3 4 1 chunk +4 lines, -2 lines 0 comments Download
M Source/modules/accessibility/AXMenuList.h View 1 2 3 4 5 6 7 1 chunk +0 lines, -1 line 0 comments Download
M Source/modules/accessibility/AXMenuList.cpp View 1 2 3 4 5 6 7 1 chunk +0 lines, -9 lines 0 comments Download
M Source/modules/accessibility/AXMenuListOption.h View 1 2 3 2 chunks +7 lines, -6 lines 0 comments Download
M Source/modules/accessibility/AXMenuListOption.cpp View 1 2 3 4 5 6 5 chunks +10 lines, -10 lines 0 comments Download
M Source/modules/accessibility/AXMenuListPopup.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M Source/modules/accessibility/AXMenuListPopup.cpp View 1 2 3 4 5 6 7 4 chunks +23 lines, -32 lines 0 comments Download
M Source/modules/accessibility/AXObjectCacheImpl.cpp View 1 2 3 4 5 6 7 8 5 chunks +20 lines, -5 lines 0 comments Download

Messages

Total messages: 16 (3 generated)
dmazzoni
5 years, 8 months ago (2015-04-06 05:21:38 UTC) #2
je_julie(Not used)
Please take a look at the comment. https://codereview.chromium.org/1059503002/diff/100001/Source/modules/accessibility/AXMenuListOption.cpp File Source/modules/accessibility/AXMenuListOption.cpp (right): https://codereview.chromium.org/1059503002/diff/100001/Source/modules/accessibility/AXMenuListOption.cpp#newcode29 Source/modules/accessibility/AXMenuListOption.cpp:29: #include "core/html/HTMLOptionElement.h" ...
5 years, 8 months ago (2015-04-06 08:42:51 UTC) #3
dmazzoni
https://codereview.chromium.org/1059503002/diff/100001/Source/modules/accessibility/AXMenuListOption.cpp File Source/modules/accessibility/AXMenuListOption.cpp (right): https://codereview.chromium.org/1059503002/diff/100001/Source/modules/accessibility/AXMenuListOption.cpp#newcode29 Source/modules/accessibility/AXMenuListOption.cpp:29: #include "core/html/HTMLOptionElement.h" On 2015/04/06 08:42:50, je_julie wrote: > You ...
5 years, 8 months ago (2015-04-06 15:42:13 UTC) #4
je_julie(Not used)
On 2015/04/06 15:42:13, dmazzoni wrote: > Source/modules/accessibility/AXMenuListPopup.cpp:130: void > AXMenuListPopup::updateChildrenIfNecessary() > On 2015/04/06 08:42:50, je_julie ...
5 years, 8 months ago (2015-04-07 02:39:12 UTC) #5
dmazzoni
On 2015/04/07 02:39:12, je_julie wrote: > Thanks, Dominic. > I can see that AXLayoutObject::updateChildrenIfNecessary has ...
5 years, 8 months ago (2015-04-07 06:28:58 UTC) #6
je_julie(Not used)
On 2015/04/07 06:28:58, dmazzoni wrote: > On 2015/04/07 02:39:12, je_julie wrote: > > Thanks, Dominic. ...
5 years, 8 months ago (2015-04-07 06:59:39 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1059503002/140001
5 years, 8 months ago (2015-04-07 07:14:35 UTC) #9
commit-bot: I haz the power
Committed patchset #8 (id:140001) as https://src.chromium.org/viewvc/blink?view=rev&revision=193251
5 years, 8 months ago (2015-04-07 07:36:58 UTC) #10
Stephen Chennney
A revert of this CL (patchset #8 id:140001) has been created in https://codereview.chromium.org/1061063004/ by schenney@chromium.org. ...
5 years, 8 months ago (2015-04-07 17:54:50 UTC) #11
dmazzoni
This change got reverted because it broke <optgroup>. I fixed it and added a new ...
5 years, 8 months ago (2015-04-09 20:50:15 UTC) #12
je_julie(Not used)
On 2015/04/09 20:50:15, dmazzoni wrote: > This change got reverted because it broke <optgroup>. I ...
5 years, 8 months ago (2015-04-10 04:06:58 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1059503002/160001
5 years, 8 months ago (2015-04-10 06:29:04 UTC) #15
commit-bot: I haz the power
5 years, 8 months ago (2015-04-10 06:32:44 UTC) #16
Message was sent while issue was closed.
Committed patchset #9 (id:160001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=193517

Powered by Google App Engine
This is Rietveld 408576698