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

Side by Side Diff: third_party/WebKit/Source/web/WebFrameWidgetImpl.h

Issue 2559273003: Blink Compositor Animation: Introduce CompositorAnimationHost correctly. (Closed)
Patch Set: Add nullcheck for m_layerTreeView in WebViewImpl Created 4 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2014 Google Inc. All rights reserved. 2 * Copyright (C) 2014 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 "public/web/WebInputMethodController.h" 40 #include "public/web/WebInputMethodController.h"
41 #include "web/PageWidgetDelegate.h" 41 #include "web/PageWidgetDelegate.h"
42 #include "web/WebFrameWidgetBase.h" 42 #include "web/WebFrameWidgetBase.h"
43 #include "web/WebInputMethodControllerImpl.h" 43 #include "web/WebInputMethodControllerImpl.h"
44 #include "web/WebLocalFrameImpl.h" 44 #include "web/WebLocalFrameImpl.h"
45 #include "web/WebViewImpl.h" 45 #include "web/WebViewImpl.h"
46 #include "wtf/Assertions.h" 46 #include "wtf/Assertions.h"
47 #include "wtf/HashSet.h" 47 #include "wtf/HashSet.h"
48 48
49 namespace blink { 49 namespace blink {
50
51 class CompositorAnimationHost;
50 class Frame; 52 class Frame;
51 class Element; 53 class Element;
52 class InspectorOverlay; 54 class InspectorOverlay;
53 class LocalFrame; 55 class LocalFrame;
54 class PaintLayerCompositor; 56 class PaintLayerCompositor;
55 class UserGestureToken; 57 class UserGestureToken;
56 class CompositorAnimationTimeline; 58 class CompositorAnimationTimeline;
57 class WebLayer; 59 class WebLayer;
58 class WebLayerTreeView; 60 class WebLayerTreeView;
59 class WebMouseEvent; 61 class WebMouseEvent;
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
211 RefPtr<UserGestureToken> m_mouseCaptureGestureToken; 213 RefPtr<UserGestureToken> m_mouseCaptureGestureToken;
212 214
213 // This is owned by the LayerTreeHostImpl, and should only be used on the 215 // This is owned by the LayerTreeHostImpl, and should only be used on the
214 // compositor thread. The LayerTreeHostImpl is indirectly owned by this 216 // compositor thread. The LayerTreeHostImpl is indirectly owned by this
215 // class so this pointer should be valid until this class is destructed. 217 // class so this pointer should be valid until this class is destructed.
216 CrossThreadPersistent<CompositorMutatorImpl> m_mutator; 218 CrossThreadPersistent<CompositorMutatorImpl> m_mutator;
217 219
218 WebLayerTreeView* m_layerTreeView; 220 WebLayerTreeView* m_layerTreeView;
219 WebLayer* m_rootLayer; 221 WebLayer* m_rootLayer;
220 GraphicsLayer* m_rootGraphicsLayer; 222 GraphicsLayer* m_rootGraphicsLayer;
223 std::unique_ptr<CompositorAnimationHost> m_compositorAnimationHost;
jbroman 2016/12/13 16:38:32 Up to you, but if having a compositor animation ho
loyso (OOO) 2016/12/13 22:23:35 Yup. I was thinking about base::Oprional here. Wil
loyso (OOO) 2016/12/19 04:03:12 Since we want to replace it with a raw weak pointe
221 bool m_isAcceleratedCompositingActive; 224 bool m_isAcceleratedCompositingActive;
222 bool m_layerTreeViewClosed; 225 bool m_layerTreeViewClosed;
223 226
224 bool m_suppressNextKeypressEvent; 227 bool m_suppressNextKeypressEvent;
225 228
226 bool m_ignoreInputEvents; 229 bool m_ignoreInputEvents;
227 230
228 // Whether the WebFrameWidget is rendering transparently. 231 // Whether the WebFrameWidget is rendering transparently.
229 bool m_isTransparent; 232 bool m_isTransparent;
230 233
231 // Represents whether or not this object should process incoming IME events. 234 // Represents whether or not this object should process incoming IME events.
232 bool m_imeAcceptEvents; 235 bool m_imeAcceptEvents;
233 236
234 static const WebInputEvent* m_currentInputEvent; 237 static const WebInputEvent* m_currentInputEvent;
235 238
236 WebColor m_baseBackgroundColor; 239 WebColor m_baseBackgroundColor;
237 240
238 SelfKeepAlive<WebFrameWidgetImpl> m_selfKeepAlive; 241 SelfKeepAlive<WebFrameWidgetImpl> m_selfKeepAlive;
239 }; 242 };
240 243
241 DEFINE_TYPE_CASTS(WebFrameWidgetImpl, 244 DEFINE_TYPE_CASTS(WebFrameWidgetImpl,
242 WebFrameWidgetBase, 245 WebFrameWidgetBase,
243 widget, 246 widget,
244 widget->forSubframe(), 247 widget->forSubframe(),
245 widget.forSubframe()); 248 widget.forSubframe());
246 249
247 } // namespace blink 250 } // namespace blink
248 251
249 #endif 252 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698