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

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

Issue 15663005: Expand tap highlight to allow multiple highlights for touch disambiguation. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 years, 3 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/LinkHighlight.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 498 matching lines...) Expand 10 before | Expand all | Expand 10 after
509 WebCore::ScrollGranularity* scrollGranularity ); 509 WebCore::ScrollGranularity* scrollGranularity );
510 510
511 // Called by a full frame plugin inside this view to inform it that its 511 // Called by a full frame plugin inside this view to inform it that its
512 // zoom level has been updated. The plugin should only call this function 512 // zoom level has been updated. The plugin should only call this function
513 // if the zoom change was triggered by the browser, it's only needed in case 513 // if the zoom change was triggered by the browser, it's only needed in case
514 // a plugin can update its own zoom, say because of its own UI. 514 // a plugin can update its own zoom, say because of its own UI.
515 void fullFramePluginZoomLevelChanged(double zoomLevel); 515 void fullFramePluginZoomLevelChanged(double zoomLevel);
516 516
517 void computeScaleAndScrollForBlockRect(const WebRect& blockRect, float paddi ng, float defaultScaleWhenAlreadyLegible, float& scale, WebPoint& scroll); 517 void computeScaleAndScrollForBlockRect(const WebRect& blockRect, float paddi ng, float defaultScaleWhenAlreadyLegible, float& scale, WebPoint& scroll);
518 WebCore::Node* bestTapNode(const WebCore::PlatformGestureEvent& tapEvent); 518 WebCore::Node* bestTapNode(const WebCore::PlatformGestureEvent& tapEvent);
519 void enableTapHighlight(const WebCore::PlatformGestureEvent& tapEvent); 519 void enableTapHighlightAtPoint(const WebCore::PlatformGestureEvent& tapEvent );
520 void enableTapHighlights(Vector<WebCore::Node*>&);
520 void computeScaleAndScrollForFocusedNode(WebCore::Node* focusedNode, float& scale, WebCore::IntPoint& scroll, bool& needAnimation); 521 void computeScaleAndScrollForFocusedNode(WebCore::Node* focusedNode, float& scale, WebCore::IntPoint& scroll, bool& needAnimation);
521 522
522 void animateDoubleTapZoom(const WebCore::IntPoint&); 523 void animateDoubleTapZoom(const WebCore::IntPoint&);
523 524
524 void enableFakePageScaleAnimationForTesting(bool); 525 void enableFakePageScaleAnimationForTesting(bool);
525 bool fakeDoubleTapAnimationPendingForTesting() const { return m_doubleTapZoo mPending; } 526 bool fakeDoubleTapAnimationPendingForTesting() const { return m_doubleTapZoo mPending; }
526 WebCore::IntPoint fakePageScaleAnimationTargetPositionForTesting() const { r eturn m_fakePageScaleAnimationTargetPosition; } 527 WebCore::IntPoint fakePageScaleAnimationTargetPositionForTesting() const { r eturn m_fakePageScaleAnimationTargetPosition; }
527 float fakePageScaleAnimationPageScaleForTesting() const { return m_fakePageS caleAnimationPageScaleFactor; } 528 float fakePageScaleAnimationPageScaleForTesting() const { return m_fakePageS caleAnimationPageScaleFactor; }
528 bool fakePageScaleAnimationUseAnchorForTesting() const { return m_fakePageSc aleAnimationUseAnchor; } 529 bool fakePageScaleAnimationUseAnchorForTesting() const { return m_fakePageSc aleAnimationUseAnchor; }
529 530
(...skipping 11 matching lines...) Expand all
541 // disable the system cursor. 542 // disable the system cursor.
542 virtual bool requestPointerLock(); 543 virtual bool requestPointerLock();
543 virtual void requestPointerUnlock(); 544 virtual void requestPointerUnlock();
544 virtual bool isPointerLocked(); 545 virtual bool isPointerLocked();
545 546
546 // Heuristic-based function for determining if we should disable workarounds 547 // Heuristic-based function for determining if we should disable workarounds
547 // for viewing websites that are not optimized for mobile devices. 548 // for viewing websites that are not optimized for mobile devices.
548 bool shouldDisableDesktopWorkarounds(); 549 bool shouldDisableDesktopWorkarounds();
549 550
550 // Exposed for tests. 551 // Exposed for tests.
551 LinkHighlight* linkHighlight() { return m_linkHighlight.get(); } 552 LinkHighlight* linkHighlight(int i) { return m_linkHighlights[i].get(); }
Rick Byers 2013/09/11 15:14:49 Is there code somewhere I'm missing that calls thi
552 553
553 WebSettingsImpl* settingsImpl(); 554 WebSettingsImpl* settingsImpl();
554 555
555 // Returns the bounding box of the block type node touched by the WebRect. 556 // Returns the bounding box of the block type node touched by the WebRect.
556 WebRect computeBlockBounds(const WebRect&, bool ignoreClipping); 557 WebRect computeBlockBounds(const WebRect&, bool ignoreClipping);
557 558
558 WebCore::IntPoint clampOffsetAtScale(const WebCore::IntPoint& offset, float scale); 559 WebCore::IntPoint clampOffsetAtScale(const WebCore::IntPoint& offset, float scale);
559 560
560 // Exposed for tests. 561 // Exposed for tests.
561 WebVector<WebCompositionUnderline> compositionUnderlines() const; 562 WebVector<WebCompositionUnderline> compositionUnderlines() const;
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after
802 UserMediaClientImpl m_userMediaClientImpl; 803 UserMediaClientImpl m_userMediaClientImpl;
803 OwnPtr<MIDIClientProxy> m_midiClientProxy; 804 OwnPtr<MIDIClientProxy> m_midiClientProxy;
804 #if ENABLE(NAVIGATOR_CONTENT_UTILS) 805 #if ENABLE(NAVIGATOR_CONTENT_UTILS)
805 OwnPtr<NavigatorContentUtilsClientImpl> m_navigatorContentUtilsClient; 806 OwnPtr<NavigatorContentUtilsClientImpl> m_navigatorContentUtilsClient;
806 #endif 807 #endif
807 OwnPtr<WebActiveGestureAnimation> m_gestureAnimation; 808 OwnPtr<WebActiveGestureAnimation> m_gestureAnimation;
808 WebPoint m_positionOnFlingStart; 809 WebPoint m_positionOnFlingStart;
809 WebPoint m_globalPositionOnFlingStart; 810 WebPoint m_globalPositionOnFlingStart;
810 int m_flingModifier; 811 int m_flingModifier;
811 bool m_flingSourceDevice; 812 bool m_flingSourceDevice;
812 OwnPtr<LinkHighlight> m_linkHighlight; 813 Vector<OwnPtr<LinkHighlight> > m_linkHighlights;
813 OwnPtr<ValidationMessageClientImpl> m_validationMessage; 814 OwnPtr<ValidationMessageClientImpl> m_validationMessage;
814 OwnPtr<FullscreenController> m_fullscreenController; 815 OwnPtr<FullscreenController> m_fullscreenController;
815 816
816 bool m_showFPSCounter; 817 bool m_showFPSCounter;
817 bool m_showPaintRects; 818 bool m_showPaintRects;
818 bool m_showDebugBorders; 819 bool m_showDebugBorders;
819 bool m_continuousPaintingEnabled; 820 bool m_continuousPaintingEnabled;
820 bool m_showScrollBottleneckRects; 821 bool m_showScrollBottleneckRects;
821 WebColor m_baseBackgroundColor; 822 WebColor m_baseBackgroundColor;
822 823
823 WebCore::Timer<WebViewImpl> m_helperPluginCloseTimer; 824 WebCore::Timer<WebViewImpl> m_helperPluginCloseTimer;
824 Vector<RefPtr<WebHelperPluginImpl> > m_helperPluginsPendingClose; 825 Vector<RefPtr<WebHelperPluginImpl> > m_helperPluginsPendingClose;
825 }; 826 };
826 827
827 inline WebViewImpl* toWebViewImpl(WebView* webView) 828 inline WebViewImpl* toWebViewImpl(WebView* webView)
828 { 829 {
829 // We have no ways to check if the specified WebView is an instance of 830 // We have no ways to check if the specified WebView is an instance of
830 // WebViewImpl because WebViewImpl is the only implementation of WebView. 831 // WebViewImpl because WebViewImpl is the only implementation of WebView.
831 return static_cast<WebViewImpl*>(webView); 832 return static_cast<WebViewImpl*>(webView);
832 } 833 }
833 834
834 } // namespace WebKit 835 } // namespace WebKit
835 836
836 #endif 837 #endif
OLDNEW
« no previous file with comments | « Source/web/LinkHighlight.cpp ('k') | Source/web/WebViewImpl.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698