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

Side by Side Diff: Source/web/PageWidgetDelegate.cpp

Issue 603883002: Remove default args to several PageWidgetDelegate members. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Android Created 6 years, 2 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 | Annotate | Revision Log
« no previous file with comments | « Source/web/PageWidgetDelegate.h ('k') | Source/web/WebPagePopupImpl.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 29 matching lines...) Expand all
40 #include "core/rendering/compositing/RenderLayerCompositor.h" 40 #include "core/rendering/compositing/RenderLayerCompositor.h"
41 #include "platform/Logging.h" 41 #include "platform/Logging.h"
42 #include "platform/graphics/GraphicsContext.h" 42 #include "platform/graphics/GraphicsContext.h"
43 #include "public/web/WebInputEvent.h" 43 #include "public/web/WebInputEvent.h"
44 #include "web/PageOverlayList.h" 44 #include "web/PageOverlayList.h"
45 #include "web/WebInputEventConversion.h" 45 #include "web/WebInputEventConversion.h"
46 #include "wtf/CurrentTime.h" 46 #include "wtf/CurrentTime.h"
47 47
48 namespace blink { 48 namespace blink {
49 49
50 static inline FrameView* rootFrameView(Page* page, LocalFrame* rootFrame) 50 void PageWidgetDelegate::animate(Page* page, double monotonicFrameBeginTime, Loc alFrame* root)
51 { 51 {
52 if (rootFrame) 52 RefPtr<FrameView> view = root->view();
53 return rootFrame->view();
54 if (!page)
55 return 0;
56 if (!page->mainFrame()->isLocalFrame())
57 return 0;
58 return toLocalFrame(page->mainFrame())->view();
59 }
60
61 void PageWidgetDelegate::animate(Page* page, double monotonicFrameBeginTime, Loc alFrame* rootFrame)
62 {
63 RefPtr<FrameView> view = rootFrameView(page, rootFrame);
64 if (!view) 53 if (!view)
65 return; 54 return;
66 page->autoscrollController().animate(monotonicFrameBeginTime); 55 page->autoscrollController().animate(monotonicFrameBeginTime);
67 page->animator().serviceScriptedAnimations(monotonicFrameBeginTime); 56 page->animator().serviceScriptedAnimations(monotonicFrameBeginTime);
68 } 57 }
69 58
70 void PageWidgetDelegate::layout(Page* page, LocalFrame* rootFrame) 59 void PageWidgetDelegate::layout(Page* page, LocalFrame* root)
71 { 60 {
72 if (!page) 61 if (!page)
73 return; 62 return;
74 63
75 if (!rootFrame) { 64 page->animator().updateLayoutAndStyleForPainting(root);
76 if (!page->mainFrame() || !page->mainFrame()->isLocalFrame())
77 return;
78 rootFrame = toLocalFrame(page->mainFrame());
79 }
80
81 page->animator().updateLayoutAndStyleForPainting(rootFrame);
82 } 65 }
83 66
84 void PageWidgetDelegate::paint(Page* page, PageOverlayList* overlays, WebCanvas* canvas, const WebRect& rect, CanvasBackground background, LocalFrame* rootFrame ) 67 void PageWidgetDelegate::paint(Page* page, PageOverlayList* overlays, WebCanvas* canvas, const WebRect& rect, CanvasBackground background, LocalFrame* root)
85 { 68 {
86 if (rect.isEmpty()) 69 if (rect.isEmpty())
87 return; 70 return;
88 GraphicsContext gc(canvas); 71 GraphicsContext gc(canvas);
89 gc.setCertainlyOpaque(background == Opaque); 72 gc.setCertainlyOpaque(background == Opaque);
90 gc.applyDeviceScaleFactor(page->deviceScaleFactor()); 73 gc.applyDeviceScaleFactor(page->deviceScaleFactor());
91 gc.setDeviceScaleFactor(page->deviceScaleFactor()); 74 gc.setDeviceScaleFactor(page->deviceScaleFactor());
92 IntRect dirtyRect(rect); 75 IntRect dirtyRect(rect);
93 gc.save(); // Needed to save the canvas, not the GraphicsContext. 76 gc.save(); // Needed to save the canvas, not the GraphicsContext.
94 FrameView* view = rootFrameView(page, rootFrame); 77 FrameView* view = root->view();
95 if (view) { 78 if (view) {
96 gc.clip(dirtyRect); 79 gc.clip(dirtyRect);
97 view->paint(&gc, dirtyRect); 80 view->paint(&gc, dirtyRect);
98 if (overlays) 81 if (overlays)
99 overlays->paintWebFrame(gc); 82 overlays->paintWebFrame(gc);
100 } else { 83 } else {
101 gc.fillRect(dirtyRect, Color::white); 84 gc.fillRect(dirtyRect, Color::white);
102 } 85 }
103 gc.restore(); 86 gc.restore();
104 } 87 }
105 88
106 bool PageWidgetDelegate::handleInputEvent(Page* page, PageWidgetEventHandler& ha ndler, const WebInputEvent& event, LocalFrame* rootFrame) 89 bool PageWidgetDelegate::handleInputEvent(Page* page, PageWidgetEventHandler& ha ndler, const WebInputEvent& event, LocalFrame* root)
107 { 90 {
108 LocalFrame* frame = rootFrame;
109 if (!frame)
110 frame = page && page->mainFrame()->isLocalFrame() ? toLocalFrame(page->m ainFrame()) : 0;
111 switch (event.type) { 91 switch (event.type) {
112 92
113 // FIXME: WebKit seems to always return false on mouse events processing 93 // FIXME: WebKit seems to always return false on mouse events processing
114 // methods. For now we'll assume it has processed them (as we are only 94 // methods. For now we'll assume it has processed them (as we are only
115 // interested in whether keyboard events are processed). 95 // interested in whether keyboard events are processed).
96 // FIXME: Why do we return true when there is no root or the root is
97 // detached?
116 case WebInputEvent::MouseMove: 98 case WebInputEvent::MouseMove:
117 if (!frame || !frame->view()) 99 if (!root || !root->view())
118 return true; 100 return true;
119 handler.handleMouseMove(*frame, static_cast<const WebMouseEvent&>(event) ); 101 handler.handleMouseMove(*root, static_cast<const WebMouseEvent&>(event)) ;
120 return true; 102 return true;
121 case WebInputEvent::MouseLeave: 103 case WebInputEvent::MouseLeave:
122 if (!frame || !frame->view()) 104 if (!root || !root->view())
123 return true; 105 return true;
124 handler.handleMouseLeave(*frame, static_cast<const WebMouseEvent&>(event )); 106 handler.handleMouseLeave(*root, static_cast<const WebMouseEvent&>(event) );
125 return true; 107 return true;
126 case WebInputEvent::MouseDown: 108 case WebInputEvent::MouseDown:
127 if (!frame || !frame->view()) 109 if (!root || !root->view())
128 return true; 110 return true;
129 handler.handleMouseDown(*frame, static_cast<const WebMouseEvent&>(event) ); 111 handler.handleMouseDown(*root, static_cast<const WebMouseEvent&>(event)) ;
130 return true; 112 return true;
131 case WebInputEvent::MouseUp: 113 case WebInputEvent::MouseUp:
132 if (!frame || !frame->view()) 114 if (!root || !root->view())
133 return true; 115 return true;
134 handler.handleMouseUp(*frame, static_cast<const WebMouseEvent&>(event)); 116 handler.handleMouseUp(*root, static_cast<const WebMouseEvent&>(event));
135 return true; 117 return true;
136 118
137 case WebInputEvent::MouseWheel: 119 case WebInputEvent::MouseWheel:
138 if (!frame || !frame->view()) 120 if (!root || !root->view())
139 return false; 121 return false;
140 return handler.handleMouseWheel(*frame, static_cast<const WebMouseWheelE vent&>(event)); 122 return handler.handleMouseWheel(*root, static_cast<const WebMouseWheelEv ent&>(event));
141 123
142 case WebInputEvent::RawKeyDown: 124 case WebInputEvent::RawKeyDown:
143 case WebInputEvent::KeyDown: 125 case WebInputEvent::KeyDown:
144 case WebInputEvent::KeyUp: 126 case WebInputEvent::KeyUp:
145 return handler.handleKeyEvent(static_cast<const WebKeyboardEvent&>(event )); 127 return handler.handleKeyEvent(static_cast<const WebKeyboardEvent&>(event ));
146 128
147 case WebInputEvent::Char: 129 case WebInputEvent::Char:
148 return handler.handleCharEvent(static_cast<const WebKeyboardEvent&>(even t)); 130 return handler.handleCharEvent(static_cast<const WebKeyboardEvent&>(even t));
149 case WebInputEvent::GestureScrollBegin: 131 case WebInputEvent::GestureScrollBegin:
150 case WebInputEvent::GestureScrollEnd: 132 case WebInputEvent::GestureScrollEnd:
151 case WebInputEvent::GestureScrollUpdate: 133 case WebInputEvent::GestureScrollUpdate:
152 case WebInputEvent::GestureScrollUpdateWithoutPropagation: 134 case WebInputEvent::GestureScrollUpdateWithoutPropagation:
153 case WebInputEvent::GestureFlingStart: 135 case WebInputEvent::GestureFlingStart:
154 case WebInputEvent::GestureFlingCancel: 136 case WebInputEvent::GestureFlingCancel:
155 case WebInputEvent::GestureTap: 137 case WebInputEvent::GestureTap:
156 case WebInputEvent::GestureTapUnconfirmed: 138 case WebInputEvent::GestureTapUnconfirmed:
157 case WebInputEvent::GestureTapDown: 139 case WebInputEvent::GestureTapDown:
158 case WebInputEvent::GestureShowPress: 140 case WebInputEvent::GestureShowPress:
159 case WebInputEvent::GestureTapCancel: 141 case WebInputEvent::GestureTapCancel:
160 case WebInputEvent::GestureDoubleTap: 142 case WebInputEvent::GestureDoubleTap:
161 case WebInputEvent::GestureTwoFingerTap: 143 case WebInputEvent::GestureTwoFingerTap:
162 case WebInputEvent::GestureLongPress: 144 case WebInputEvent::GestureLongPress:
163 case WebInputEvent::GestureLongTap: 145 case WebInputEvent::GestureLongTap:
164 return handler.handleGestureEvent(static_cast<const WebGestureEvent&>(ev ent)); 146 return handler.handleGestureEvent(static_cast<const WebGestureEvent&>(ev ent));
165 147
166 case WebInputEvent::TouchStart: 148 case WebInputEvent::TouchStart:
167 case WebInputEvent::TouchMove: 149 case WebInputEvent::TouchMove:
168 case WebInputEvent::TouchEnd: 150 case WebInputEvent::TouchEnd:
169 case WebInputEvent::TouchCancel: 151 case WebInputEvent::TouchCancel:
170 if (!frame || !frame->view()) 152 if (!root || !root->view())
171 return false; 153 return false;
172 return handler.handleTouchEvent(*frame, static_cast<const WebTouchEvent& >(event)); 154 return handler.handleTouchEvent(*root, static_cast<const WebTouchEvent&> (event));
173 155
174 case WebInputEvent::GesturePinchBegin: 156 case WebInputEvent::GesturePinchBegin:
175 case WebInputEvent::GesturePinchEnd: 157 case WebInputEvent::GesturePinchEnd:
176 case WebInputEvent::GesturePinchUpdate: 158 case WebInputEvent::GesturePinchUpdate:
177 // FIXME: Once PlatformGestureEvent is updated to support pinch, this 159 // FIXME: Once PlatformGestureEvent is updated to support pinch, this
178 // should call handleGestureEvent, just like it currently does for 160 // should call handleGestureEvent, just like it currently does for
179 // gesture scroll. 161 // gesture scroll.
180 return false; 162 return false;
181 163
182 default: 164 default:
(...skipping 28 matching lines...) Expand all
211 { 193 {
212 return mainFrame.eventHandler().handleWheelEvent(PlatformWheelEventBuilder(m ainFrame.view(), event)); 194 return mainFrame.eventHandler().handleWheelEvent(PlatformWheelEventBuilder(m ainFrame.view(), event));
213 } 195 }
214 196
215 bool PageWidgetEventHandler::handleTouchEvent(LocalFrame& mainFrame, const WebTo uchEvent& event) 197 bool PageWidgetEventHandler::handleTouchEvent(LocalFrame& mainFrame, const WebTo uchEvent& event)
216 { 198 {
217 return mainFrame.eventHandler().handleTouchEvent(PlatformTouchEventBuilder(m ainFrame.view(), event)); 199 return mainFrame.eventHandler().handleTouchEvent(PlatformTouchEventBuilder(m ainFrame.view(), event));
218 } 200 }
219 201
220 } // namespace blink 202 } // namespace blink
OLDNEW
« no previous file with comments | « Source/web/PageWidgetDelegate.h ('k') | Source/web/WebPagePopupImpl.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698