diff options
author | jcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-16 00:05:15 +0000 |
---|---|---|
committer | jcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-16 00:05:15 +0000 |
commit | 01899c12fdad06f0e12667871be5ac99624256d8 (patch) | |
tree | c98b6c59915dcb1cdc9ead4fafb828df08f4a12e /chrome | |
parent | c1bcb90272edd39e67f85877b58da4f28fef055e (diff) | |
download | chromium_src-01899c12fdad06f0e12667871be5ac99624256d8.zip chromium_src-01899c12fdad06f0e12667871be5ac99624256d8.tar.gz chromium_src-01899c12fdad06f0e12667871be5ac99624256d8.tar.bz2 |
Changes to the autofill popup:
- we now reuse the existing popup if there is one (instead of creating a new on with each key stoke), this prevents the flickering we used to see.
- we don't hide the popup on every key stroke, instead we rely on the client editor telling us the field is not being edited anymore.
TEST=Enter some text in a form's text field several times, the autofill should show and not flicker.
BUG=5258
Review URL: http://codereview.chromium.org/14100
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7017 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/render_widget_host.cc | 4 | ||||
-rw-r--r-- | chrome/browser/render_widget_host_view_win.cc | 5 |
2 files changed, 5 insertions, 4 deletions
diff --git a/chrome/browser/render_widget_host.cc b/chrome/browser/render_widget_host.cc index 41fd233..90aac3c 100644 --- a/chrome/browser/render_widget_host.cc +++ b/chrome/browser/render_widget_host.cc @@ -340,8 +340,8 @@ void RenderWidgetHost::OnMsgClose() { } void RenderWidgetHost::OnMsgRequestMove(const gfx::Rect& pos) { - // Don't allow renderer widgets to move themselves by default. Maybe this - // policy will change if we add more types of widgets. + // Note that we ignore the position. + view_->SetSize(pos.size()); } void RenderWidgetHost::OnMsgPaintRect( diff --git a/chrome/browser/render_widget_host_view_win.cc b/chrome/browser/render_widget_host_view_win.cc index d530e5d..d927868 100644 --- a/chrome/browser/render_widget_host_view_win.cc +++ b/chrome/browser/render_widget_host_view_win.cc @@ -131,9 +131,10 @@ void RenderWidgetHostViewWin::SetSize(const gfx::Size& size) { if (is_hidden_) return; + // No SWP_NOREDRAW as autofill popups can resize and the underneath window + // should redraw in that case. UINT swp_flags = SWP_NOSENDCHANGING | SWP_NOOWNERZORDER | SWP_NOCOPYBITS | - SWP_NOMOVE | SWP_NOZORDER | SWP_NOREDRAW | SWP_NOACTIVATE | - SWP_DEFERERASE; + SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE | SWP_DEFERERASE; SetWindowPos(NULL, 0, 0, size.width(), size.height(), swp_flags); render_widget_host_->WasResized(); EnsureTooltip(); |