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" | |
67 #include "wtf/RefCounted.h" | 66 #include "wtf/RefCounted.h" |
68 #include "wtf/Vector.h" | 67 #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 OwnPtr<WebSettingsImpl> m_webSettings; | 645 std::unique_ptr<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 OwnPtr<PageOverlay> m_pageColorOverlay; | 705 std::unique_ptr<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 OwnPtr<WebActiveGestureAnimation> m_gestureAnimation; | 727 std::unique_ptr<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<OwnPtr<LinkHighlightImpl>> m_linkHighlights; | 732 Vector<std::unique_ptr<LinkHighlightImpl>> m_linkHighlights; |
733 OwnPtr<CompositorAnimationTimeline> m_linkHighlightsTimeline; | 733 std::unique_ptr<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 OwnPtr<WebViewScheduler> m_scheduler; | 757 const std::unique_ptr<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 |