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

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

Issue 1547893003: WIP - compositor worker mega patch. Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: . Created 4 years, 11 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 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 class PaintLayerCompositor; 79 class PaintLayerCompositor;
80 class TopControls; 80 class TopControls;
81 class UserGestureToken; 81 class UserGestureToken;
82 class WebActiveGestureAnimation; 82 class WebActiveGestureAnimation;
83 class WebDevToolsAgentImpl; 83 class WebDevToolsAgentImpl;
84 class WebElement; 84 class WebElement;
85 class WebLayerTreeView; 85 class WebLayerTreeView;
86 class WebLocalFrame; 86 class WebLocalFrame;
87 class WebLocalFrameImpl; 87 class WebLocalFrameImpl;
88 class WebImage; 88 class WebImage;
89 class CompositorMutatorImpl;
89 class WebPagePopupImpl; 90 class WebPagePopupImpl;
90 class WebPlugin; 91 class WebPlugin;
91 class WebRemoteFrame; 92 class WebRemoteFrame;
92 class WebSelection; 93 class WebSelection;
93 class WebSettingsImpl; 94 class WebSettingsImpl;
94 class WebViewScheduler; 95 class WebViewScheduler;
95 96
96 class WebViewImpl final : public WebView 97 class WebViewImpl final : public WebView
97 , public RefCounted<WebViewImpl> 98 , public RefCounted<WebViewImpl>
98 , public WebGestureCurveTarget 99 , public WebGestureCurveTarget
(...skipping 25 matching lines...) Expand all
124 WebInputEventResult handleInputEvent(const WebInputEvent&) override; 125 WebInputEventResult handleInputEvent(const WebInputEvent&) override;
125 void setCursorVisibilityState(bool isVisible) override; 126 void setCursorVisibilityState(bool isVisible) override;
126 bool hasTouchEventHandlersAt(const WebPoint&) override; 127 bool hasTouchEventHandlersAt(const WebPoint&) override;
127 128
128 void applyViewportDeltas( 129 void applyViewportDeltas(
129 const WebFloatSize& visualViewportDelta, 130 const WebFloatSize& visualViewportDelta,
130 const WebFloatSize& layoutViewportDelta, 131 const WebFloatSize& layoutViewportDelta,
131 const WebFloatSize& elasticOverscrollDelta, 132 const WebFloatSize& elasticOverscrollDelta,
132 float pageScaleDelta, 133 float pageScaleDelta,
133 float topControlsShownRatioDelta) override; 134 float topControlsShownRatioDelta) override;
135
136 void applyMutations(const WebCompositorMutations&) override;
134 void recordFrameTimingEvent(enum FrameTimingEventType, int64_t, const WebVec tor<WebFrameTimingEvent>&) override; 137 void recordFrameTimingEvent(enum FrameTimingEventType, int64_t, const WebVec tor<WebFrameTimingEvent>&) override;
135 void mouseCaptureLost() override; 138 void mouseCaptureLost() override;
136 void setFocus(bool enable) override; 139 void setFocus(bool enable) override;
137 bool setComposition( 140 bool setComposition(
138 const WebString& text, 141 const WebString& text,
139 const WebVector<WebCompositionUnderline>& underlines, 142 const WebVector<WebCompositionUnderline>& underlines,
140 int selectionStart, 143 int selectionStart,
141 int selectionEnd) override; 144 int selectionEnd) override;
142 bool confirmComposition() override; 145 bool confirmComposition() override;
143 bool confirmComposition(ConfirmCompositionBehavior selectionBehavior) overri de; 146 bool confirmComposition(ConfirmCompositionBehavior selectionBehavior) overri de;
(...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after
510 void setTopControlsHeight(float height, bool topControlsShrinkLayoutSize) ov erride; 513 void setTopControlsHeight(float height, bool topControlsShrinkLayoutSize) ov erride;
511 void updateTopControlsState(WebTopControlsState constraint, WebTopControlsSt ate current, bool animate) override; 514 void updateTopControlsState(WebTopControlsState constraint, WebTopControlsSt ate current, bool animate) override;
512 515
513 TopControls& topControls(); 516 TopControls& topControls();
514 // Called anytime top controls layout height or content offset have changed. 517 // Called anytime top controls layout height or content offset have changed.
515 void didUpdateTopControls(); 518 void didUpdateTopControls();
516 519
517 void forceNextWebGLContextCreationToFail() override; 520 void forceNextWebGLContextCreationToFail() override;
518 void forceNextDrawingBufferCreationToFail() override; 521 void forceNextDrawingBufferCreationToFail() override;
519 522
523 CompositorProxyClient* createCompositorProxyClient() override;
524 void schedulePostCommitTask(PassOwnPtr<Closure>);
525 void didCommit() override;
526
520 IntSize mainFrameSize(); 527 IntSize mainFrameSize();
521 WebDisplayMode displayMode() const { return m_displayMode; } 528 WebDisplayMode displayMode() const { return m_displayMode; }
522 529
523 PageScaleConstraintsSet& pageScaleConstraintsSet() const; 530 PageScaleConstraintsSet& pageScaleConstraintsSet() const;
524 531
525 FloatSize elasticOverscroll() const { return m_elasticOverscroll; } 532 FloatSize elasticOverscroll() const { return m_elasticOverscroll; }
526 533
527 WebViewScheduler* scheduler() const { return m_scheduler.get(); } 534 WebViewScheduler* scheduler() const { return m_scheduler.get(); }
528 535
529 // Attaches the PaintArtifactCompositor's tree to this WebView's layer tree 536 // Attaches the PaintArtifactCompositor's tree to this WebView's layer tree
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
758 float m_zoomFactorOverride; 765 float m_zoomFactorOverride;
759 766
760 bool m_userGestureObserved; 767 bool m_userGestureObserved;
761 bool m_shouldDispatchFirstVisuallyNonEmptyLayout; 768 bool m_shouldDispatchFirstVisuallyNonEmptyLayout;
762 bool m_shouldDispatchFirstLayoutAfterFinishedParsing; 769 bool m_shouldDispatchFirstLayoutAfterFinishedParsing;
763 bool m_shouldDispatchFirstLayoutAfterFinishedLoading; 770 bool m_shouldDispatchFirstLayoutAfterFinishedLoading;
764 WebDisplayMode m_displayMode; 771 WebDisplayMode m_displayMode;
765 772
766 FloatSize m_elasticOverscroll; 773 FloatSize m_elasticOverscroll;
767 774
775 OwnPtr<CompositorMutatorImpl> m_mutator;
776
777 Vector<OwnPtr<WTF::Closure>> m_postCommitTasks;
778
768 RefPtrWillBePersistent<EventListener> m_popupMouseWheelEventListener; 779 RefPtrWillBePersistent<EventListener> m_popupMouseWheelEventListener;
769 780
770 WebPageImportanceSignals m_pageImportanceSignals; 781 WebPageImportanceSignals m_pageImportanceSignals;
771 782
772 const OwnPtr<WebViewScheduler> m_scheduler; 783 const OwnPtr<WebViewScheduler> m_scheduler;
773 784
774 // Manages the layer tree created for this page in Slimming Paint v2. 785 // Manages the layer tree created for this page in Slimming Paint v2.
775 PaintArtifactCompositor m_paintArtifactCompositor; 786 PaintArtifactCompositor m_paintArtifactCompositor;
776 }; 787 };
777 788
778 DEFINE_TYPE_CASTS(WebViewImpl, WebWidget, widget, widget->isWebView(), widget.is WebView()); 789 DEFINE_TYPE_CASTS(WebViewImpl, WebWidget, widget, widget->isWebView(), widget.is WebView());
779 // We have no ways to check if the specified WebView is an instance of 790 // We have no ways to check if the specified WebView is an instance of
780 // WebViewImpl because WebViewImpl is the only implementation of WebView. 791 // WebViewImpl because WebViewImpl is the only implementation of WebView.
781 DEFINE_TYPE_CASTS(WebViewImpl, WebView, webView, true, true); 792 DEFINE_TYPE_CASTS(WebViewImpl, WebView, webView, true, true);
782 793
783 } // namespace blink 794 } // namespace blink
784 795
785 #endif 796 #endif
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/web/CompositorProxyClientImpl.cpp ('k') | third_party/WebKit/Source/web/WebViewImpl.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698