Fix a newer race condition in QSIconViewImpl
If multiple changes of state are pushed into QSIconViewImpl, they will
all schedule an icon change, and cancel the last animator, prompting the
previous icon to be displayed. However, because setting an icon would
prevent other scheduled icons to be applied, only the first one was
applied.
With this fix, we assign a transaction ID (long) to each icon that is
scheduled to be applied. We only apply it at the end (or cancel) of the
animation if no other icon has been applied or scheduled since.
Test: atest QSIconViewImplTest_311121830
Fixes: 323125376
Flag: NONE
Change-Id: I8fd5eef54b3bee034f8066bc5ce79117c6260008
2 files changed