Reverts my r4300 and re-fixes Issue 3156 and 13500.
My r4300, which is a fix Issue 3156, has been causing regressions (Issue 9596, Issue 13500, Issue 29290, etc.)
Every time when this change caused regressions, we added more code to Chromium and made Chromium code more complicated.
So, I think it is better to revert this change once and find another solution for Issue 3156 rather than to add another workaround for Issue 29290.

To look into Issue 3156 more deeply, it is caused by a recursive message-handler call.
When SetWindowText() is called while an IME is composing text, the IME calls SendMessage() to send a WM_IME_COMPOSITION message.
When we receive this WM_IME_COMPOSITION message, it updates the omnibox and calls SetWindowText()...
This recursive call caused not only Issue 3156 but also caused some other IME issues, such as Issue 13500.

BUG=3156,13500,29290
TEST=On XP, open a new tab, set the IME to Hiragana, type 'c', and then click an entry in the popup. The browser should navigate and show the popup URL without a crash.
TEST=Open Gmail, compose a new e-mail (without using a tear-off window), set the IME to Hiragana, type 'c' in its message body, and wait for the draft auto-saving. The browser should show the 'c' character.
Review URL: http://codereview.chromium.org/467015

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34145 0039d316-1c4b-4281-b951-d872f2087c98
2 files changed