| OLD | NEW |
| 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/render_widget_host_impl.h" | 5 #include "content/browser/renderer_host/render_widget_host_impl.h" |
| 6 | 6 |
| 7 #include <math.h> | 7 #include <math.h> |
| 8 | 8 |
| 9 #include <set> | 9 #include <set> |
| 10 #include <tuple> | 10 #include <tuple> |
| (...skipping 1930 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1941 ui::LatencyInfo* latency) { | 1941 ui::LatencyInfo* latency) { |
| 1942 latency_tracker_.OnInputEvent(event, latency); | 1942 latency_tracker_.OnInputEvent(event, latency); |
| 1943 FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, | 1943 FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
| 1944 OnInputEvent(event)); | 1944 OnInputEvent(event)); |
| 1945 } | 1945 } |
| 1946 | 1946 |
| 1947 void RenderWidgetHostImpl::OnKeyboardEventAck( | 1947 void RenderWidgetHostImpl::OnKeyboardEventAck( |
| 1948 const NativeWebKeyboardEventWithLatencyInfo& event, | 1948 const NativeWebKeyboardEventWithLatencyInfo& event, |
| 1949 InputEventAckState ack_result) { | 1949 InputEventAckState ack_result) { |
| 1950 latency_tracker_.OnInputEventAck(event.event, &event.latency, ack_result); | 1950 latency_tracker_.OnInputEventAck(event.event, &event.latency, ack_result); |
| 1951 FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
| 1952 OnInputEventAck(event.event, event.event.is_synthetic)); |
| 1951 | 1953 |
| 1952 const bool processed = (INPUT_EVENT_ACK_STATE_CONSUMED == ack_result); | 1954 const bool processed = (INPUT_EVENT_ACK_STATE_CONSUMED == ack_result); |
| 1953 | 1955 |
| 1954 // We only send unprocessed key event upwards if we are not hidden, | 1956 // We only send unprocessed key event upwards if we are not hidden, |
| 1955 // because the user has moved away from us and no longer expect any effect | 1957 // because the user has moved away from us and no longer expect any effect |
| 1956 // of this key event. | 1958 // of this key event. |
| 1957 if (delegate_ && !processed && !is_hidden() && !event.event.skip_in_browser) { | 1959 if (delegate_ && !processed && !is_hidden() && !event.event.skip_in_browser) { |
| 1958 delegate_->HandleKeyboardEvent(event.event); | 1960 delegate_->HandleKeyboardEvent(event.event); |
| 1959 | 1961 |
| 1960 // WARNING: This RenderWidgetHostImpl can be deallocated at this point | 1962 // WARNING: This RenderWidgetHostImpl can be deallocated at this point |
| 1961 // (i.e. in the case of Ctrl+W, where the call to | 1963 // (i.e. in the case of Ctrl+W, where the call to |
| 1962 // HandleKeyboardEvent destroys this RenderWidgetHostImpl). | 1964 // HandleKeyboardEvent destroys this RenderWidgetHostImpl). |
| 1963 } | 1965 } |
| 1964 } | 1966 } |
| 1965 | 1967 |
| 1966 void RenderWidgetHostImpl::OnMouseEventAck( | 1968 void RenderWidgetHostImpl::OnMouseEventAck( |
| 1967 const MouseEventWithLatencyInfo& mouse_event, | 1969 const MouseEventWithLatencyInfo& mouse_event, |
| 1968 InputEventAckState ack_result) { | 1970 InputEventAckState ack_result) { |
| 1969 latency_tracker_.OnInputEventAck(mouse_event.event, &mouse_event.latency, | 1971 latency_tracker_.OnInputEventAck(mouse_event.event, &mouse_event.latency, |
| 1970 ack_result); | 1972 ack_result); |
| 1973 FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
| 1974 OnInputEventAck(mouse_event.event, false)); |
| 1971 } | 1975 } |
| 1972 | 1976 |
| 1973 void RenderWidgetHostImpl::OnWheelEventAck( | 1977 void RenderWidgetHostImpl::OnWheelEventAck( |
| 1974 const MouseWheelEventWithLatencyInfo& wheel_event, | 1978 const MouseWheelEventWithLatencyInfo& wheel_event, |
| 1975 InputEventAckState ack_result) { | 1979 InputEventAckState ack_result) { |
| 1976 latency_tracker_.OnInputEventAck(wheel_event.event, &wheel_event.latency, | 1980 latency_tracker_.OnInputEventAck(wheel_event.event, &wheel_event.latency, |
| 1977 ack_result); | 1981 ack_result); |
| 1982 FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
| 1983 OnInputEventAck(wheel_event.event, false)); |
| 1978 | 1984 |
| 1979 if (!is_hidden() && view_) { | 1985 if (!is_hidden() && view_) { |
| 1980 if (ack_result != INPUT_EVENT_ACK_STATE_CONSUMED && | 1986 if (ack_result != INPUT_EVENT_ACK_STATE_CONSUMED && |
| 1981 delegate_ && delegate_->HandleWheelEvent(wheel_event.event)) { | 1987 delegate_ && delegate_->HandleWheelEvent(wheel_event.event)) { |
| 1982 ack_result = INPUT_EVENT_ACK_STATE_CONSUMED; | 1988 ack_result = INPUT_EVENT_ACK_STATE_CONSUMED; |
| 1983 } | 1989 } |
| 1984 view_->WheelEventAck(wheel_event.event, ack_result); | 1990 view_->WheelEventAck(wheel_event.event, ack_result); |
| 1985 } | 1991 } |
| 1986 } | 1992 } |
| 1987 | 1993 |
| 1988 void RenderWidgetHostImpl::OnGestureEventAck( | 1994 void RenderWidgetHostImpl::OnGestureEventAck( |
| 1989 const GestureEventWithLatencyInfo& event, | 1995 const GestureEventWithLatencyInfo& event, |
| 1990 InputEventAckState ack_result) { | 1996 InputEventAckState ack_result) { |
| 1991 latency_tracker_.OnInputEventAck(event.event, &event.latency, ack_result); | 1997 latency_tracker_.OnInputEventAck(event.event, &event.latency, ack_result); |
| 1998 FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
| 1999 OnInputEventAck(event.event, false)); |
| 1992 | 2000 |
| 1993 if (view_) | 2001 if (view_) |
| 1994 view_->GestureEventAck(event.event, ack_result); | 2002 view_->GestureEventAck(event.event, ack_result); |
| 1995 } | 2003 } |
| 1996 | 2004 |
| 1997 void RenderWidgetHostImpl::OnTouchEventAck( | 2005 void RenderWidgetHostImpl::OnTouchEventAck( |
| 1998 const TouchEventWithLatencyInfo& event, | 2006 const TouchEventWithLatencyInfo& event, |
| 1999 InputEventAckState ack_result) { | 2007 InputEventAckState ack_result) { |
| 2000 latency_tracker_.OnInputEventAck(event.event, &event.latency, ack_result); | 2008 latency_tracker_.OnInputEventAck(event.event, &event.latency, ack_result); |
| 2009 FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
| 2010 OnInputEventAck(event.event, false)); |
| 2001 | 2011 |
| 2002 if (touch_emulator_ && | 2012 if (touch_emulator_ && |
| 2003 touch_emulator_->HandleTouchEventAck(event.event, ack_result)) { | 2013 touch_emulator_->HandleTouchEventAck(event.event, ack_result)) { |
| 2004 return; | 2014 return; |
| 2005 } | 2015 } |
| 2006 | 2016 |
| 2007 if (view_) | 2017 if (view_) |
| 2008 view_->ProcessAckedTouchEvent(event, ack_result); | 2018 view_->ProcessAckedTouchEvent(event, ack_result); |
| 2009 } | 2019 } |
| 2010 | 2020 |
| (...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2216 return delegate_ ? delegate_->GetRootBrowserAccessibilityManager() : NULL; | 2226 return delegate_ ? delegate_->GetRootBrowserAccessibilityManager() : NULL; |
| 2217 } | 2227 } |
| 2218 | 2228 |
| 2219 BrowserAccessibilityManager* | 2229 BrowserAccessibilityManager* |
| 2220 RenderWidgetHostImpl::GetOrCreateRootBrowserAccessibilityManager() { | 2230 RenderWidgetHostImpl::GetOrCreateRootBrowserAccessibilityManager() { |
| 2221 return delegate_ ? | 2231 return delegate_ ? |
| 2222 delegate_->GetOrCreateRootBrowserAccessibilityManager() : NULL; | 2232 delegate_->GetOrCreateRootBrowserAccessibilityManager() : NULL; |
| 2223 } | 2233 } |
| 2224 | 2234 |
| 2225 } // namespace content | 2235 } // namespace content |
| OLD | NEW |