There have been a number of crashes which were directly/indirectly caused by MessageListView. For example:
crbug.com/692527
crbug.com/712162
crbug.com/713983
crbug.com/737856
crbug.com/725299
In particular, the semantics of view animation (e.g. clear all), view lifetimes, and the |clearing_all_views_|, |deleting_views_|, and |deleted_when_done_| containers make this file very hard to reason about. This makes bugs easy to make and hard to fix.
I think we should try to simplify the logic here to prevent future crashes. At the same time, we should improve the testing in message_list_view_unittest.cc.
Comment 1 by yoshiki@chromium.org
, Jun 22 2018Owner: tetsui@chromium.org