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

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

Issue 1895873006: compositor-worker: Initialize CW machinery plumbing to compositor and fire CW rAF callbacks. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Bring up oilpan support during compositor worker creation and oilpan the compositor mutator and pro… Created 4 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 /* 1 /*
2 * Copyright (C) 2010 Google Inc. All rights reserved. 2 * Copyright (C) 2010 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 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 class PaintLayerCompositor; 80 class PaintLayerCompositor;
81 class TopControls; 81 class TopControls;
82 class UserGestureToken; 82 class UserGestureToken;
83 class WebActiveGestureAnimation; 83 class WebActiveGestureAnimation;
84 class WebDevToolsAgentImpl; 84 class WebDevToolsAgentImpl;
85 class WebElement; 85 class WebElement;
86 class WebLayerTreeView; 86 class WebLayerTreeView;
87 class WebLocalFrame; 87 class WebLocalFrame;
88 class WebLocalFrameImpl; 88 class WebLocalFrameImpl;
89 class WebImage; 89 class WebImage;
90 class CompositorMutatorImpl;
90 class WebPagePopupImpl; 91 class WebPagePopupImpl;
91 class WebPlugin; 92 class WebPlugin;
92 class WebRemoteFrame; 93 class WebRemoteFrame;
93 class WebSelection; 94 class WebSelection;
94 class WebSettingsImpl; 95 class WebSettingsImpl;
95 class WebViewScheduler; 96 class WebViewScheduler;
96 97
97 class WEB_EXPORT WebViewImpl final : WTF_NON_EXPORTED_BASE(public WebView) 98 class WEB_EXPORT WebViewImpl final : WTF_NON_EXPORTED_BASE(public WebView)
98 , public RefCounted<WebViewImpl> 99 , public RefCounted<WebViewImpl>
99 , WTF_NON_EXPORTED_BASE(public WebGestureCurveTarget) 100 , WTF_NON_EXPORTED_BASE(public WebGestureCurveTarget)
(...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after
498 void setTopControlsHeight(float height, bool topControlsShrinkLayoutSize) ov erride; 499 void setTopControlsHeight(float height, bool topControlsShrinkLayoutSize) ov erride;
499 void updateTopControlsState(WebTopControlsState constraint, WebTopControlsSt ate current, bool animate) override; 500 void updateTopControlsState(WebTopControlsState constraint, WebTopControlsSt ate current, bool animate) override;
500 501
501 TopControls& topControls(); 502 TopControls& topControls();
502 // Called anytime top controls layout height or content offset have changed. 503 // Called anytime top controls layout height or content offset have changed.
503 void didUpdateTopControls(); 504 void didUpdateTopControls();
504 505
505 void forceNextWebGLContextCreationToFail() override; 506 void forceNextWebGLContextCreationToFail() override;
506 void forceNextDrawingBufferCreationToFail() override; 507 void forceNextDrawingBufferCreationToFail() override;
507 508
509 CompositorProxyClient* createCompositorProxyClient(double referenceMonotonic Time);
508 IntSize mainFrameSize(); 510 IntSize mainFrameSize();
509 WebDisplayMode displayMode() const { return m_displayMode; } 511 WebDisplayMode displayMode() const { return m_displayMode; }
510 512
511 PageScaleConstraintsSet& pageScaleConstraintsSet() const; 513 PageScaleConstraintsSet& pageScaleConstraintsSet() const;
512 514
513 FloatSize elasticOverscroll() const { return m_elasticOverscroll; } 515 FloatSize elasticOverscroll() const { return m_elasticOverscroll; }
514 516
515 // Attaches the PaintArtifactCompositor's tree to this WebView's layer tree 517 // Attaches the PaintArtifactCompositor's tree to this WebView's layer tree
516 // view. 518 // view.
517 void attachPaintArtifactCompositor(); 519 void attachPaintArtifactCompositor();
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after
737 float m_zoomFactorOverride; 739 float m_zoomFactorOverride;
738 740
739 bool m_userGestureObserved; 741 bool m_userGestureObserved;
740 bool m_shouldDispatchFirstVisuallyNonEmptyLayout; 742 bool m_shouldDispatchFirstVisuallyNonEmptyLayout;
741 bool m_shouldDispatchFirstLayoutAfterFinishedParsing; 743 bool m_shouldDispatchFirstLayoutAfterFinishedParsing;
742 bool m_shouldDispatchFirstLayoutAfterFinishedLoading; 744 bool m_shouldDispatchFirstLayoutAfterFinishedLoading;
743 WebDisplayMode m_displayMode; 745 WebDisplayMode m_displayMode;
744 746
745 FloatSize m_elasticOverscroll; 747 FloatSize m_elasticOverscroll;
746 748
749 // This is owned by the LayerTreeHostImpl, and should only be used on the
750 // compositor thread.
751 CompositorMutatorImpl* m_mutator;
jbroman 2016/04/29 19:42:23 A note about lifetime would be great here, too. Wh
flackr 2016/05/03 22:24:55 Not exactly true - LayerTreeHostImpl is indirectly
752
747 Persistent<EventListener> m_popupMouseWheelEventListener; 753 Persistent<EventListener> m_popupMouseWheelEventListener;
748 754
749 WebPageImportanceSignals m_pageImportanceSignals; 755 WebPageImportanceSignals m_pageImportanceSignals;
750 756
751 const OwnPtr<WebViewScheduler> m_scheduler; 757 const OwnPtr<WebViewScheduler> m_scheduler;
752 758
753 // Manages the layer tree created for this page in Slimming Paint v2. 759 // Manages the layer tree created for this page in Slimming Paint v2.
754 PaintArtifactCompositor m_paintArtifactCompositor; 760 PaintArtifactCompositor m_paintArtifactCompositor;
755 }; 761 };
756 762
757 DEFINE_TYPE_CASTS(WebViewImpl, WebWidget, widget, widget->isWebView(), widget.is WebView()); 763 DEFINE_TYPE_CASTS(WebViewImpl, WebWidget, widget, widget->isWebView(), widget.is WebView());
758 // We have no ways to check if the specified WebView is an instance of 764 // We have no ways to check if the specified WebView is an instance of
759 // WebViewImpl because WebViewImpl is the only implementation of WebView. 765 // WebViewImpl because WebViewImpl is the only implementation of WebView.
760 DEFINE_TYPE_CASTS(WebViewImpl, WebView, webView, true, true); 766 DEFINE_TYPE_CASTS(WebViewImpl, WebView, webView, true, true);
761 767
762 } // namespace blink 768 } // namespace blink
763 769
764 #endif 770 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698