summaryrefslogtreecommitdiffstats
path: root/content
diff options
context:
space:
mode:
authorpkotwicz@chromium.org <pkotwicz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-05-25 00:29:49 +0000
committerpkotwicz@chromium.org <pkotwicz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-05-25 00:29:49 +0000
commit49a80418cac0392fdda7e8c88528fb1eaf217711 (patch)
tree83f6751617c3ba667d4ecfc4b5ecbdda79d7b2b5 /content
parentb8799bebaa07b39b83d9f44f3220f57fca6935b9 (diff)
downloadchromium_src-49a80418cac0392fdda7e8c88528fb1eaf217711.zip
chromium_src-49a80418cac0392fdda7e8c88528fb1eaf217711.tar.gz
chromium_src-49a80418cac0392fdda7e8c88528fb1eaf217711.tar.bz2
The message pump gets events in pixels. Convert to DIP as we should.
This patch depends on 10391074 Repro: 1) Go to http://html5demos.com/drag 2) Scroll page to bottom of screen 2) Select an item to drag 3) Drag item and move mouse to ~20px of top of tab contents. Expected: page scrolls up Actual: Nothing happens BUG=None TEST=Manual, see above Review URL: https://chromiumcodereview.appspot.com/10386225 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@138945 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content')
-rw-r--r--content/browser/web_contents/web_contents_view_aura.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/content/browser/web_contents/web_contents_view_aura.cc b/content/browser/web_contents/web_contents_view_aura.cc
index 2845cff..7c81d8e 100644
--- a/content/browser/web_contents/web_contents_view_aura.cc
+++ b/content/browser/web_contents/web_contents_view_aura.cc
@@ -5,6 +5,7 @@
#include "content/browser/web_contents/web_contents_view_aura.h"
#include "base/utf_string_conversions.h"
+#include "content/browser/renderer_host/dip_util.h"
#include "content/browser/renderer_host/render_view_host_factory.h"
#include "content/browser/web_contents/interstitial_page_impl.h"
#include "content/browser/web_contents/web_contents_impl.h"
@@ -67,7 +68,9 @@ class WebDragSourceAura : public MessageLoopForUI::Observer {
case ui::ET_MOUSE_DRAGGED:
rvh = contents_->GetRenderViewHost();
if (rvh) {
- gfx::Point screen_loc = ui::EventLocationFromNative(event);
+ gfx::Point screen_loc_in_pixel = ui::EventLocationFromNative(event);
+ gfx::Point screen_loc = content::ConvertPointToDIP(rvh->GetView(),
+ screen_loc_in_pixel);
gfx::Point client_loc = screen_loc;
aura::Window* window = rvh->GetView()->GetNativeView();
aura::Window::ConvertPointToWindow(window->GetRootWindow(),