| OLD | NEW |
| 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 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 56 #include "web/ChromeClientImpl.h" | 56 #include "web/ChromeClientImpl.h" |
| 57 #include "web/ContextMenuClientImpl.h" | 57 #include "web/ContextMenuClientImpl.h" |
| 58 #include "web/EditorClientImpl.h" | 58 #include "web/EditorClientImpl.h" |
| 59 #include "web/MediaKeysClientImpl.h" | 59 #include "web/MediaKeysClientImpl.h" |
| 60 #include "web/PageWidgetDelegate.h" | 60 #include "web/PageWidgetDelegate.h" |
| 61 #include "web/SpellCheckerClientImpl.h" | 61 #include "web/SpellCheckerClientImpl.h" |
| 62 #include "web/StorageClientImpl.h" | 62 #include "web/StorageClientImpl.h" |
| 63 #include "web/WebExport.h" | 63 #include "web/WebExport.h" |
| 64 #include "wtf/Compiler.h" | 64 #include "wtf/Compiler.h" |
| 65 #include "wtf/HashSet.h" | 65 #include "wtf/HashSet.h" |
| 66 #include "wtf/OwnPtr.h" |
| 66 #include "wtf/RefCounted.h" | 67 #include "wtf/RefCounted.h" |
| 67 #include "wtf/Vector.h" | 68 #include "wtf/Vector.h" |
| 68 #include <memory> | |
| 69 | 69 |
| 70 namespace blink { | 70 namespace blink { |
| 71 | 71 |
| 72 class DataObject; | 72 class DataObject; |
| 73 class DevToolsEmulator; | 73 class DevToolsEmulator; |
| 74 class Frame; | 74 class Frame; |
| 75 class FullscreenController; | 75 class FullscreenController; |
| 76 class InspectorOverlay; | 76 class InspectorOverlay; |
| 77 class LinkHighlightImpl; | 77 class LinkHighlightImpl; |
| 78 class PageOverlay; | 78 class PageOverlay; |
| (...skipping 556 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 635 // The lower bound on the size when auto-resizing. | 635 // The lower bound on the size when auto-resizing. |
| 636 IntSize m_minAutoSize; | 636 IntSize m_minAutoSize; |
| 637 // The upper bound on the size when auto-resizing. | 637 // The upper bound on the size when auto-resizing. |
| 638 IntSize m_maxAutoSize; | 638 IntSize m_maxAutoSize; |
| 639 | 639 |
| 640 Persistent<Page> m_page; | 640 Persistent<Page> m_page; |
| 641 | 641 |
| 642 // An object that can be used to manipulate m_page->settings() without linki
ng | 642 // An object that can be used to manipulate m_page->settings() without linki
ng |
| 643 // against WebCore. This is lazily allocated the first time GetWebSettings() | 643 // against WebCore. This is lazily allocated the first time GetWebSettings() |
| 644 // is called. | 644 // is called. |
| 645 std::unique_ptr<WebSettingsImpl> m_webSettings; | 645 OwnPtr<WebSettingsImpl> m_webSettings; |
| 646 | 646 |
| 647 // A copy of the web drop data object we received from the browser. | 647 // A copy of the web drop data object we received from the browser. |
| 648 Persistent<DataObject> m_currentDragData; | 648 Persistent<DataObject> m_currentDragData; |
| 649 | 649 |
| 650 // Keeps track of the current zoom level. 0 means no zoom, positive numbers | 650 // Keeps track of the current zoom level. 0 means no zoom, positive numbers |
| 651 // mean zoom in, negative numbers mean zoom out. | 651 // mean zoom in, negative numbers mean zoom out. |
| 652 double m_zoomLevel; | 652 double m_zoomLevel; |
| 653 | 653 |
| 654 double m_minimumZoomLevel; | 654 double m_minimumZoomLevel; |
| 655 | 655 |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 695 | 695 |
| 696 // The current drag operation as negotiated by the source and destination. | 696 // The current drag operation as negotiated by the source and destination. |
| 697 // When not equal to DragOperationNone, the drag data can be dropped onto th
e | 697 // When not equal to DragOperationNone, the drag data can be dropped onto th
e |
| 698 // current drop target in this WebView (the drop target can accept the drop)
. | 698 // current drop target in this WebView (the drop target can accept the drop)
. |
| 699 WebDragOperation m_dragOperation; | 699 WebDragOperation m_dragOperation; |
| 700 | 700 |
| 701 // The popup associated with an input/select element. | 701 // The popup associated with an input/select element. |
| 702 RefPtr<WebPagePopupImpl> m_pagePopup; | 702 RefPtr<WebPagePopupImpl> m_pagePopup; |
| 703 | 703 |
| 704 Persistent<DevToolsEmulator> m_devToolsEmulator; | 704 Persistent<DevToolsEmulator> m_devToolsEmulator; |
| 705 std::unique_ptr<PageOverlay> m_pageColorOverlay; | 705 OwnPtr<PageOverlay> m_pageColorOverlay; |
| 706 | 706 |
| 707 // Whether the webview is rendering transparently. | 707 // Whether the webview is rendering transparently. |
| 708 bool m_isTransparent; | 708 bool m_isTransparent; |
| 709 | 709 |
| 710 // Whether the user can press tab to focus links. | 710 // Whether the user can press tab to focus links. |
| 711 bool m_tabsToLinks; | 711 bool m_tabsToLinks; |
| 712 | 712 |
| 713 // If set, the (plugin) node which has mouse capture. | 713 // If set, the (plugin) node which has mouse capture. |
| 714 Persistent<Node> m_mouseCaptureNode; | 714 Persistent<Node> m_mouseCaptureNode; |
| 715 RefPtr<UserGestureToken> m_mouseCaptureGestureToken; | 715 RefPtr<UserGestureToken> m_mouseCaptureGestureToken; |
| 716 | 716 |
| 717 RefPtr<UserGestureToken> m_pointerLockGestureToken; | 717 RefPtr<UserGestureToken> m_pointerLockGestureToken; |
| 718 | 718 |
| 719 WebLayerTreeView* m_layerTreeView; | 719 WebLayerTreeView* m_layerTreeView; |
| 720 WebLayer* m_rootLayer; | 720 WebLayer* m_rootLayer; |
| 721 GraphicsLayer* m_rootGraphicsLayer; | 721 GraphicsLayer* m_rootGraphicsLayer; |
| 722 GraphicsLayer* m_visualViewportContainerLayer; | 722 GraphicsLayer* m_visualViewportContainerLayer; |
| 723 bool m_matchesHeuristicsForGpuRasterization; | 723 bool m_matchesHeuristicsForGpuRasterization; |
| 724 static const WebInputEvent* m_currentInputEvent; | 724 static const WebInputEvent* m_currentInputEvent; |
| 725 | 725 |
| 726 MediaKeysClientImpl m_mediaKeysClientImpl; | 726 MediaKeysClientImpl m_mediaKeysClientImpl; |
| 727 std::unique_ptr<WebActiveGestureAnimation> m_gestureAnimation; | 727 OwnPtr<WebActiveGestureAnimation> m_gestureAnimation; |
| 728 WebPoint m_positionOnFlingStart; | 728 WebPoint m_positionOnFlingStart; |
| 729 WebPoint m_globalPositionOnFlingStart; | 729 WebPoint m_globalPositionOnFlingStart; |
| 730 int m_flingModifier; | 730 int m_flingModifier; |
| 731 WebGestureDevice m_flingSourceDevice; | 731 WebGestureDevice m_flingSourceDevice; |
| 732 Vector<std::unique_ptr<LinkHighlightImpl>> m_linkHighlights; | 732 Vector<OwnPtr<LinkHighlightImpl>> m_linkHighlights; |
| 733 std::unique_ptr<CompositorAnimationTimeline> m_linkHighlightsTimeline; | 733 OwnPtr<CompositorAnimationTimeline> m_linkHighlightsTimeline; |
| 734 Persistent<FullscreenController> m_fullscreenController; | 734 Persistent<FullscreenController> m_fullscreenController; |
| 735 | 735 |
| 736 WebColor m_baseBackgroundColor; | 736 WebColor m_baseBackgroundColor; |
| 737 WebColor m_backgroundColorOverride; | 737 WebColor m_backgroundColorOverride; |
| 738 float m_zoomFactorOverride; | 738 float m_zoomFactorOverride; |
| 739 | 739 |
| 740 bool m_userGestureObserved; | 740 bool m_userGestureObserved; |
| 741 bool m_shouldDispatchFirstVisuallyNonEmptyLayout; | 741 bool m_shouldDispatchFirstVisuallyNonEmptyLayout; |
| 742 bool m_shouldDispatchFirstLayoutAfterFinishedParsing; | 742 bool m_shouldDispatchFirstLayoutAfterFinishedParsing; |
| 743 bool m_shouldDispatchFirstLayoutAfterFinishedLoading; | 743 bool m_shouldDispatchFirstLayoutAfterFinishedLoading; |
| 744 WebDisplayMode m_displayMode; | 744 WebDisplayMode m_displayMode; |
| 745 | 745 |
| 746 FloatSize m_elasticOverscroll; | 746 FloatSize m_elasticOverscroll; |
| 747 | 747 |
| 748 // This is owned by the LayerTreeHostImpl, and should only be used on the | 748 // This is owned by the LayerTreeHostImpl, and should only be used on the |
| 749 // compositor thread. The LayerTreeHostImpl is indirectly owned by this | 749 // compositor thread. The LayerTreeHostImpl is indirectly owned by this |
| 750 // class so this pointer should be valid until this class is destructed. | 750 // class so this pointer should be valid until this class is destructed. |
| 751 CrossThreadPersistent<CompositorMutatorImpl> m_mutator; | 751 CrossThreadPersistent<CompositorMutatorImpl> m_mutator; |
| 752 | 752 |
| 753 Persistent<EventListener> m_popupMouseWheelEventListener; | 753 Persistent<EventListener> m_popupMouseWheelEventListener; |
| 754 | 754 |
| 755 WebPageImportanceSignals m_pageImportanceSignals; | 755 WebPageImportanceSignals m_pageImportanceSignals; |
| 756 | 756 |
| 757 const std::unique_ptr<WebViewScheduler> m_scheduler; | 757 const OwnPtr<WebViewScheduler> m_scheduler; |
| 758 | 758 |
| 759 // 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. |
| 760 PaintArtifactCompositor m_paintArtifactCompositor; | 760 PaintArtifactCompositor m_paintArtifactCompositor; |
| 761 | 761 |
| 762 double m_lastFrameTimeMonotonic; | 762 double m_lastFrameTimeMonotonic; |
| 763 }; | 763 }; |
| 764 | 764 |
| 765 // We have no ways to check if the specified WebView is an instance of | 765 // We have no ways to check if the specified WebView is an instance of |
| 766 // WebViewImpl because WebViewImpl is the only implementation of WebView. | 766 // WebViewImpl because WebViewImpl is the only implementation of WebView. |
| 767 DEFINE_TYPE_CASTS(WebViewImpl, WebView, webView, true, true); | 767 DEFINE_TYPE_CASTS(WebViewImpl, WebView, webView, true, true); |
| 768 | 768 |
| 769 } // namespace blink | 769 } // namespace blink |
| 770 | 770 |
| 771 #endif | 771 #endif |
| OLD | NEW |