Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(359)

Unified Diff: content/shell/renderer/test_runner/event_sender.cc

Issue 739013008: Explicitly suppress scrolling for wheel events that will trigger zooming (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Unit tests Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/shell/renderer/test_runner/event_sender.cc
diff --git a/content/shell/renderer/test_runner/event_sender.cc b/content/shell/renderer/test_runner/event_sender.cc
index b22fe7291c6bcc4be1a8a99aaeffa86cc188e650..8971ab62f5908ae5304c369c4a876825680eedd6 100644
--- a/content/shell/renderer/test_runner/event_sender.cc
+++ b/content/shell/renderer/test_runner/event_sender.cc
@@ -2207,14 +2207,21 @@ void EventSender::InitMouseWheelEvent(gin::Arguments* args,
bool paged = false;
bool has_precise_scrolling_deltas = false;
int modifiers = 0;
- if (!args->PeekNext().IsEmpty()) {
- args->GetNext(&paged);
- if (!args->PeekNext().IsEmpty()) {
- args->GetNext(&has_precise_scrolling_deltas);
- if (!args->PeekNext().IsEmpty())
- modifiers = GetKeyModifiersFromV8(args->PeekNext());
- }
- }
+ bool can_scroll = true;
+ if (args->PeekNext().IsEmpty())
+ return;
+ args->GetNext(&paged);
+ if (args->PeekNext().IsEmpty())
+ return;
+ args->GetNext(&has_precise_scrolling_deltas);
+ if (args->PeekNext().IsEmpty())
+ return;
+ v8::Handle<v8::Value> value;
+ args->GetNext(&value);
+ modifiers = GetKeyModifiersFromV8(value);
+ if (args->PeekNext().IsEmpty())
+ return;
+ args->GetNext(&can_scroll);
InitMouseEvent(WebInputEvent::MouseWheel,
pressed_button_,
@@ -2229,7 +2236,7 @@ void EventSender::InitMouseWheelEvent(gin::Arguments* args,
event->deltaY = event->wheelTicksY;
event->scrollByPage = paged;
event->hasPreciseScrollingDeltas = has_precise_scrolling_deltas;
-
+ event->canScroll = can_scroll;
if (continuous) {
event->wheelTicksX /= kScrollbarPixelsPerTick;
event->wheelTicksY /= kScrollbarPixelsPerTick;

Powered by Google App Engine
This is Rietveld 408576698