From dbd158f280d377eb5d4b916bc637d9405877e760 Mon Sep 17 00:00:00 2001 From: "ananta@chromium.org" Date: Thu, 27 Feb 2014 21:37:59 +0000 Subject: [PATCH] Return HTCLIENT from the WM_NCHITTEST message handler in the LegacyRenderWidgetHostHWND class if the parent returns HTNOWHERE The parent can return HTNOWHERE in its WM_NCHITTEST handler if it is a popup window. For e.g. a select box, etc. The LegacyRenderWidgetHostHWND should return HTCLIENT in this case to ensure that we don't get HTVSCROLL/HTHSCROLL being returned via DefWindowProc. This could happen because the fake scroll styles are present on the window. We have similar code in the HWNDMessageHandler::OnNCHitTest function which was added as part of the recent scroll fixes. This needs to be needs to be done in the LegacyRenderWidgetHostHWND class now as all scroll fixes are being consolidated here. BUG=347431, 335941 R=cpu@chromium.org, sky@chromium.org, cpu Review URL: https://codereview.chromium.org/181043011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253930 0039d316-1c4b-4281-b951-d872f2087c98 --- .../browser/renderer_host/legacy_render_widget_host_win.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/browser/renderer_host/legacy_render_widget_host_win.cc b/content/browser/renderer_host/legacy_render_widget_host_win.cc index 3cf22285650d02..67f450c5476da5 100644 --- a/content/browser/renderer_host/legacy_render_widget_host_win.cc +++ b/content/browser/renderer_host/legacy_render_widget_host_win.cc @@ -239,9 +239,9 @@ LRESULT LegacyRenderWidgetHostHWND::OnNCHitTest(UINT message, LRESULT hit_test = GetWindowEventTarget( GetParent())->HandleNcHitTestMessage(message, w_param, l_param); // If the parent returns HTNOWHERE which can happen for popup windows, etc - // allow the default handling to go through. + // we return HTCLIENT. if (hit_test == HTNOWHERE) - SetMsgHandled(FALSE); + hit_test = HTCLIENT; return hit_test; } return HTNOWHERE;