diff options
author | tkent@chromium.org <tkent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-12-13 00:51:48 +0000 |
---|---|---|
committer | tkent@chromium.org <tkent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-12-13 00:51:48 +0000 |
commit | cdcc02baf7e74c70f929b57305b6621a1e3e31d9 (patch) | |
tree | cb649d3bf5aff2467d591273952415f31f6ae991 /third_party/pexpect/FSM.py | |
parent | 6f881d754034d3bc3225a62a22ad6f260bf5f62e (diff) | |
download | chromium_src-cdcc02baf7e74c70f929b57305b6621a1e3e31d9.zip chromium_src-cdcc02baf7e74c70f929b57305b6621a1e3e31d9.tar.gz chromium_src-cdcc02baf7e74c70f929b57305b6621a1e3e31d9.tar.bz2 |
Settings: Fix infinite loop around FocusManager.onDocumentFocus_().
Bug detail:
1. Open startup overlay: chrome://settings/startup
2. Type a space in the empty URL field
3. Press Cancel button
This triggers the infinite loop, and the overlay doesn't disappear.
When the startup overlay is canceled,
1. StartupOverlay.updateStartupPages_ updates the list data model.
2. It makes the first ListItem editable.
3. It gives focus to the URL field.
4. FocusManager.onDocumentFocus_() catches the 'focus' event for it.
5. However it is not a part of the current visible page because the startup
overlay is closing.
6. So, it removes focus from the URL field, and gives focus to the search
field in the main page.
7. After leaving the onDocumentFocus_(), the 'focus' event continues to
propagate deeper, and <list> element catches it.
8. The <list> activates the selected ListItem, and it gives focus on the URL
fields again.
Solution:
Don't propagate the 'focus' event when we don't accept the focus.
BUG=327615
Review URL: https://codereview.chromium.org/106183008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@240503 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party/pexpect/FSM.py')
0 files changed, 0 insertions, 0 deletions