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

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

Issue 929213004: Plumb selection bounds as a single unit (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: TODO for moving WebSelectionBound Created 5 years, 8 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
« no previous file with comments | « Source/web/WebSelection.cpp ('k') | Source/web/WebViewImpl.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 TopControls; 79 class TopControls;
80 class UserGestureToken; 80 class UserGestureToken;
81 class WebActiveGestureAnimation; 81 class WebActiveGestureAnimation;
82 class WebCompositorAnimationTimeline; 82 class WebCompositorAnimationTimeline;
83 class WebDevToolsAgentImpl; 83 class WebDevToolsAgentImpl;
84 class WebLayerTreeView; 84 class WebLayerTreeView;
85 class WebLocalFrameImpl; 85 class WebLocalFrameImpl;
86 class WebImage; 86 class WebImage;
87 class WebPagePopupImpl; 87 class WebPagePopupImpl;
88 class WebPlugin; 88 class WebPlugin;
89 class WebSelection;
89 class WebSettingsImpl; 90 class WebSettingsImpl;
90 91
91 struct WebSelectionBound;
92
93 class WebViewImpl final : public WebView 92 class WebViewImpl final : public WebView
94 , public RefCounted<WebViewImpl> 93 , public RefCounted<WebViewImpl>
95 , public WebGestureCurveTarget 94 , public WebGestureCurveTarget
96 , public PageWidgetEventHandler { 95 , public PageWidgetEventHandler {
97 public: 96 public:
98 static WebViewImpl* create(WebViewClient*); 97 static WebViewImpl* create(WebViewClient*);
99 static HashSet<WebViewImpl*>& allInstances(); 98 static HashSet<WebViewImpl*>& allInstances();
100 99
101 // WebWidget methods: 100 // WebWidget methods:
102 virtual void close() override; 101 virtual void close() override;
(...skipping 375 matching lines...) Expand 10 before | Expand all | Expand 10 after
478 477
479 void enableFakePageScaleAnimationForTesting(bool); 478 void enableFakePageScaleAnimationForTesting(bool);
480 bool fakeDoubleTapAnimationPendingForTesting() const { return m_doubleTapZoo mPending; } 479 bool fakeDoubleTapAnimationPendingForTesting() const { return m_doubleTapZoo mPending; }
481 IntPoint fakePageScaleAnimationTargetPositionForTesting() const { return m_f akePageScaleAnimationTargetPosition; } 480 IntPoint fakePageScaleAnimationTargetPositionForTesting() const { return m_f akePageScaleAnimationTargetPosition; }
482 float fakePageScaleAnimationPageScaleForTesting() const { return m_fakePageS caleAnimationPageScaleFactor; } 481 float fakePageScaleAnimationPageScaleForTesting() const { return m_fakePageS caleAnimationPageScaleFactor; }
483 bool fakePageScaleAnimationUseAnchorForTesting() const { return m_fakePageSc aleAnimationUseAnchor; } 482 bool fakePageScaleAnimationUseAnchorForTesting() const { return m_fakePageSc aleAnimationUseAnchor; }
484 483
485 void enterFullScreenForElement(Element*); 484 void enterFullScreenForElement(Element*);
486 void exitFullScreenForElement(Element*); 485 void exitFullScreenForElement(Element*);
487 486
488 void clearCompositedSelectionBounds(); 487 void clearCompositedSelection();
489 void updateCompositedSelectionBounds(const WebSelectionBound& anchor, const WebSelectionBound& focus); 488 void updateCompositedSelection(const WebSelection&);
490 489
491 // Exposed for the purpose of overriding device metrics. 490 // Exposed for the purpose of overriding device metrics.
492 void sendResizeEventAndRepaint(); 491 void sendResizeEventAndRepaint();
493 492
494 // Exposed for testing purposes. 493 // Exposed for testing purposes.
495 bool hasHorizontalScrollbar(); 494 bool hasHorizontalScrollbar();
496 bool hasVerticalScrollbar(); 495 bool hasVerticalScrollbar();
497 496
498 // Pointer Lock calls allow a page to capture all mouse events and 497 // Pointer Lock calls allow a page to capture all mouse events and
499 // disable the system cursor. 498 // disable the system cursor.
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
774 }; 773 };
775 774
776 DEFINE_TYPE_CASTS(WebViewImpl, WebWidget, widget, widget->isWebView(), widget.is WebView()); 775 DEFINE_TYPE_CASTS(WebViewImpl, WebWidget, widget, widget->isWebView(), widget.is WebView());
777 // We have no ways to check if the specified WebView is an instance of 776 // We have no ways to check if the specified WebView is an instance of
778 // WebViewImpl because WebViewImpl is the only implementation of WebView. 777 // WebViewImpl because WebViewImpl is the only implementation of WebView.
779 DEFINE_TYPE_CASTS(WebViewImpl, WebView, webView, true, true); 778 DEFINE_TYPE_CASTS(WebViewImpl, WebView, webView, true, true);
780 779
781 } // namespace blink 780 } // namespace blink
782 781
783 #endif 782 #endif
OLDNEW
« no previous file with comments | « Source/web/WebSelection.cpp ('k') | Source/web/WebViewImpl.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698