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

Side by Side Diff: content/browser/renderer_host/overscroll_controller.cc

Issue 2815823003: Notify OverscrollController of gesture events in plugins. (Closed)
Patch Set: Rebase. Created 3 years, 7 months 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/renderer_host/overscroll_controller.h" 5 #include "content/browser/renderer_host/overscroll_controller.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "content/browser/renderer_host/overscroll_controller_delegate.h" 9 #include "content/browser/renderer_host/overscroll_controller_delegate.h"
10 #include "content/public/browser/overscroll_configuration.h" 10 #include "content/public/browser/overscroll_configuration.h"
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 bool OverscrollController::ShouldProcessEvent( 44 bool OverscrollController::ShouldProcessEvent(
45 const blink::WebInputEvent& event) { 45 const blink::WebInputEvent& event) {
46 switch (event.GetType()) { 46 switch (event.GetType()) {
47 case blink::WebInputEvent::kMouseWheel: 47 case blink::WebInputEvent::kMouseWheel:
48 return false; 48 return false;
49 case blink::WebInputEvent::kGestureScrollBegin: 49 case blink::WebInputEvent::kGestureScrollBegin:
50 case blink::WebInputEvent::kGestureScrollUpdate: 50 case blink::WebInputEvent::kGestureScrollUpdate:
51 case blink::WebInputEvent::kGestureScrollEnd: { 51 case blink::WebInputEvent::kGestureScrollEnd: {
52 const blink::WebGestureEvent& gesture = 52 const blink::WebGestureEvent& gesture =
53 static_cast<const blink::WebGestureEvent&>(event); 53 static_cast<const blink::WebGestureEvent&>(event);
54
55 // GestureScrollBegin and GestureScrollEnd events are created to wrap
56 // individual resent GestureScrollUpdates from a plugin. Hence these
57 // should not be used to indicate the beginning/end of the overscroll.
58 // TODO(mcnee): When we remove BrowserPlugin, delete this code.
59 // See crbug.com/533069
60 if (gesture.resending_plugin_id != -1 &&
61 event.GetType() != blink::WebInputEvent::kGestureScrollUpdate)
62 return false;
63
54 blink::WebGestureEvent::ScrollUnits scrollUnits; 64 blink::WebGestureEvent::ScrollUnits scrollUnits;
55 switch (event.GetType()) { 65 switch (event.GetType()) {
56 case blink::WebInputEvent::kGestureScrollBegin: 66 case blink::WebInputEvent::kGestureScrollBegin:
57 scrollUnits = gesture.data.scroll_begin.delta_hint_units; 67 scrollUnits = gesture.data.scroll_begin.delta_hint_units;
58 break; 68 break;
59 case blink::WebInputEvent::kGestureScrollUpdate: 69 case blink::WebInputEvent::kGestureScrollUpdate:
60 scrollUnits = gesture.data.scroll_update.delta_units; 70 scrollUnits = gesture.data.scroll_update.delta_units;
61 break; 71 break;
62 case blink::WebInputEvent::kGestureScrollEnd: 72 case blink::WebInputEvent::kGestureScrollEnd:
63 scrollUnits = gesture.data.scroll_end.delta_units; 73 scrollUnits = gesture.data.scroll_end.delta_units;
(...skipping 363 matching lines...) Expand 10 before | Expand all | Expand 10 after
427 overscroll_mode_ = mode; 437 overscroll_mode_ = mode;
428 if (overscroll_mode_ == OVERSCROLL_NONE) 438 if (overscroll_mode_ == OVERSCROLL_NONE)
429 overscroll_delta_x_ = overscroll_delta_y_ = 0.f; 439 overscroll_delta_x_ = overscroll_delta_y_ = 0.f;
430 else 440 else
431 scroll_state_ = STATE_OVERSCROLLING; 441 scroll_state_ = STATE_OVERSCROLLING;
432 if (delegate_) 442 if (delegate_)
433 delegate_->OnOverscrollModeChange(old_mode, overscroll_mode_, source); 443 delegate_->OnOverscrollModeChange(old_mode, overscroll_mode_, source);
434 } 444 }
435 445
436 } // namespace content 446 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698