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

Side by Side Diff: Source/WebKit/chromium/src/WebViewImpl.cpp

Issue 15973002: Remove NonCompositedContentHost -- Take 2 (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: include xp rebaseline Created 7 years, 7 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 | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011, 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2011, 2012 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 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 #include "AutofillPopupMenuClient.h" 52 #include "AutofillPopupMenuClient.h"
53 #include "BatteryClientImpl.h" 53 #include "BatteryClientImpl.h"
54 #include "CSSValueKeywords.h" 54 #include "CSSValueKeywords.h"
55 #include "CompositionUnderlineVectorBuilder.h" 55 #include "CompositionUnderlineVectorBuilder.h"
56 #include "ContextFeaturesClientImpl.h" 56 #include "ContextFeaturesClientImpl.h"
57 #include "DeviceOrientationClientProxy.h" 57 #include "DeviceOrientationClientProxy.h"
58 #include "GeolocationClientProxy.h" 58 #include "GeolocationClientProxy.h"
59 #include "GraphicsLayerFactoryChromium.h" 59 #include "GraphicsLayerFactoryChromium.h"
60 #include "HTMLNames.h" 60 #include "HTMLNames.h"
61 #include "LinkHighlight.h" 61 #include "LinkHighlight.h"
62 #include "NonCompositedContentHost.h"
63 #include "PageWidgetDelegate.h" 62 #include "PageWidgetDelegate.h"
64 #include "PrerendererClientImpl.h" 63 #include "PrerendererClientImpl.h"
65 #include "SpeechInputClientImpl.h" 64 #include "SpeechInputClientImpl.h"
66 #include "SpeechRecognitionClientProxy.h" 65 #include "SpeechRecognitionClientProxy.h"
67 #include "TextFieldDecoratorImpl.h" 66 #include "TextFieldDecoratorImpl.h"
68 #include "ValidationMessageClientImpl.h" 67 #include "ValidationMessageClientImpl.h"
69 #include "ViewportAnchor.h" 68 #include "ViewportAnchor.h"
70 #include "WebAccessibilityObject.h" 69 #include "WebAccessibilityObject.h"
71 #include "WebActiveWheelFlingParameters.h" 70 #include "WebActiveWheelFlingParameters.h"
72 #include "WebAutofillClient.h" 71 #include "WebAutofillClient.h"
(...skipping 1690 matching lines...) Expand 10 before | Expand all | Expand 10 after
1763 if (m_continuousPaintingEnabled) { 1762 if (m_continuousPaintingEnabled) {
1764 ContinuousPainter::setNeedsDisplayRecursive(m_rootGraphicsLayer, m_pageO verlays.get()); 1763 ContinuousPainter::setNeedsDisplayRecursive(m_rootGraphicsLayer, m_pageO verlays.get());
1765 m_client->scheduleAnimation(); 1764 m_client->scheduleAnimation();
1766 } 1765 }
1767 } 1766 }
1768 1767
1769 void WebViewImpl::layout() 1768 void WebViewImpl::layout()
1770 { 1769 {
1771 TRACE_EVENT0("webkit", "WebViewImpl::layout"); 1770 TRACE_EVENT0("webkit", "WebViewImpl::layout");
1772 PageWidgetDelegate::layout(m_page.get()); 1771 PageWidgetDelegate::layout(m_page.get());
1772 if (m_layerTreeView)
1773 m_layerTreeView->setBackgroundColor(backgroundColor());
1773 1774
1774 if (m_linkHighlight) 1775 if (m_linkHighlight)
1775 m_linkHighlight->updateGeometry(); 1776 m_linkHighlight->updateGeometry();
1776 } 1777 }
1777 1778
1778 void WebViewImpl::enterForceCompositingMode(bool enter) 1779 void WebViewImpl::enterForceCompositingMode(bool enter)
1779 { 1780 {
1780 if (page()->settings()->forceCompositingMode() == enter) 1781 if (page()->settings()->forceCompositingMode() == enter)
1781 return; 1782 return;
1782 1783
(...skipping 1123 matching lines...) Expand 10 before | Expand all | Expand 10 after
2906 { 2907 {
2907 if (!page()) 2908 if (!page())
2908 return; 2909 return;
2909 2910
2910 Frame* frame = page()->mainFrame(); 2911 Frame* frame = page()->mainFrame();
2911 if (!frame || !frame->view()) 2912 if (!frame || !frame->view())
2912 return; 2913 return;
2913 2914
2914 frame->view()->setUseFixedLayout(enable); 2915 frame->view()->setUseFixedLayout(enable);
2915 2916
2916 // Also notify the base layer, which RenderLayerCompositor does not see. 2917 if (m_isAcceleratedCompositingActive)
2917 if (m_nonCompositedContentHost)
2918 updateLayerTreeViewport(); 2918 updateLayerTreeViewport();
2919 } 2919 }
2920 2920
2921 2921
2922 void WebViewImpl::enableAutoResizeMode(const WebSize& minSize, const WebSize& ma xSize) 2922 void WebViewImpl::enableAutoResizeMode(const WebSize& minSize, const WebSize& ma xSize)
2923 { 2923 {
2924 m_shouldAutoResize = true; 2924 m_shouldAutoResize = true;
2925 m_minAutoSize = minSize; 2925 m_minAutoSize = minSize;
2926 m_maxAutoSize = maxSize; 2926 m_maxAutoSize = maxSize;
2927 configureAutoResizeMode(); 2927 configureAutoResizeMode();
(...skipping 583 matching lines...) Expand 10 before | Expand all | Expand 10 after
3511 { 3511 {
3512 // Set any existing frames to be transparent. 3512 // Set any existing frames to be transparent.
3513 Frame* frame = m_page->mainFrame(); 3513 Frame* frame = m_page->mainFrame();
3514 while (frame) { 3514 while (frame) {
3515 frame->view()->setTransparent(isTransparent); 3515 frame->view()->setTransparent(isTransparent);
3516 frame = frame->tree()->traverseNext(); 3516 frame = frame->tree()->traverseNext();
3517 } 3517 }
3518 3518
3519 // Future frames check this to know whether to be transparent. 3519 // Future frames check this to know whether to be transparent.
3520 m_isTransparent = isTransparent; 3520 m_isTransparent = isTransparent;
3521
3522 if (m_nonCompositedContentHost)
3523 m_nonCompositedContentHost->setOpaque(!isTransparent);
3524 } 3521 }
3525 3522
3526 bool WebViewImpl::isTransparent() const 3523 bool WebViewImpl::isTransparent() const
3527 { 3524 {
3528 return m_isTransparent; 3525 return m_isTransparent;
3529 } 3526 }
3530 3527
3531 void WebViewImpl::setIsActive(bool active) 3528 void WebViewImpl::setIsActive(bool active)
3532 { 3529 {
3533 if (page() && page()->focusController()) 3530 if (page() && page()->focusController())
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
3608 if (m_layerTreeView) 3605 if (m_layerTreeView)
3609 m_layerTreeView->didStopFlinging(); 3606 m_layerTreeView->didStopFlinging();
3610 resetSavedScrollAndScaleState(); 3607 resetSavedScrollAndScaleState();
3611 } 3608 }
3612 3609
3613 void WebViewImpl::layoutUpdated(WebFrameImpl* webframe) 3610 void WebViewImpl::layoutUpdated(WebFrameImpl* webframe)
3614 { 3611 {
3615 if (!m_client || webframe != mainFrameImpl()) 3612 if (!m_client || webframe != mainFrameImpl())
3616 return; 3613 return;
3617 3614
3615 if (m_layerTreeViewCommitsDeferred) {
3616 // If we receive an invalidation from WebKit while in deferred commit mo de,
jamesr 2013/05/28 18:27:50 update the comment since this function isn't about
3617 // that means it's time to start producing frames again so un-defer.
3618 if (m_layerTreeView)
3619 m_layerTreeView->setDeferCommits(false);
3620 m_layerTreeViewCommitsDeferred = false;
3621 }
3622
3618 if (m_shouldAutoResize && mainFrameImpl()->frame() && mainFrameImpl()->frame ()->view()) { 3623 if (m_shouldAutoResize && mainFrameImpl()->frame() && mainFrameImpl()->frame ()->view()) {
3619 WebSize frameSize = mainFrameImpl()->frame()->view()->frameRect().size() ; 3624 WebSize frameSize = mainFrameImpl()->frame()->view()->frameRect().size() ;
3620 if (frameSize != m_size) { 3625 if (frameSize != m_size) {
3621 m_size = frameSize; 3626 m_size = frameSize;
3622 m_client->didAutoResize(m_size); 3627 m_client->didAutoResize(m_size);
3623 sendResizeEventAndRepaint(); 3628 sendResizeEventAndRepaint();
3624 } 3629 }
3625 } 3630 }
3626 3631
3627 if (m_pageScaleConstraintsSet.constraintsDirty()) 3632 if (m_pageScaleConstraintsSet.constraintsDirty())
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
3800 } 3805 }
3801 3806
3802 void WebViewImpl::setRootGraphicsLayer(GraphicsLayer* layer) 3807 void WebViewImpl::setRootGraphicsLayer(GraphicsLayer* layer)
3803 { 3808 {
3804 suppressInvalidations(true); 3809 suppressInvalidations(true);
3805 3810
3806 m_rootGraphicsLayer = layer; 3811 m_rootGraphicsLayer = layer;
3807 m_rootLayer = layer ? layer->platformLayer() : 0; 3812 m_rootLayer = layer ? layer->platformLayer() : 0;
3808 3813
3809 setIsAcceleratedCompositingActive(layer); 3814 setIsAcceleratedCompositingActive(layer);
3810 if (m_nonCompositedContentHost) {
3811 GraphicsLayer* scrollLayer = 0;
3812 if (layer) {
3813 Document* document = page()->mainFrame()->document();
3814 RenderView* renderView = document->renderView();
3815 RenderLayerCompositor* compositor = renderView->compositor();
3816 scrollLayer = compositor->scrollLayer();
3817 }
3818 m_nonCompositedContentHost->setScrollLayer(scrollLayer);
3819 }
3820 3815
3821 if (m_layerTreeView) { 3816 if (m_layerTreeView) {
3822 if (m_rootLayer) 3817 if (m_rootLayer)
3823 m_layerTreeView->setRootLayer(*m_rootLayer); 3818 m_layerTreeView->setRootLayer(*m_rootLayer);
3824 else 3819 else
3825 m_layerTreeView->clearRootLayer(); 3820 m_layerTreeView->clearRootLayer();
3826 } 3821 }
3827 3822
3828 suppressInvalidations(false); 3823 suppressInvalidations(false);
3829 } 3824 }
3830 3825
3831 void WebViewImpl::scheduleCompositingLayerSync() 3826 void WebViewImpl::scheduleCompositingLayerSync()
3832 { 3827 {
3833 m_layerTreeView->setNeedsRedraw(); 3828 m_layerTreeView->setNeedsRedraw();
3834 } 3829 }
3835 3830
3836 void WebViewImpl::scrollRootLayerRect(const IntSize&, const IntRect&) 3831 void WebViewImpl::scrollRootLayerRect(const IntSize&, const IntRect&)
3837 { 3832 {
3838 updateLayerTreeViewport(); 3833 updateLayerTreeViewport();
3839 } 3834 }
3840 3835
3841 void WebViewImpl::invalidateRect(const IntRect& rect) 3836 void WebViewImpl::invalidateRect(const IntRect& rect)
3842 { 3837 {
3843 if (m_layerTreeViewCommitsDeferred) {
3844 // If we receive an invalidation from WebKit while in deferred commit mo de,
3845 // that means it's time to start producing frames again so un-defer.
3846 if (m_layerTreeView)
3847 m_layerTreeView->setDeferCommits(false);
3848 m_layerTreeViewCommitsDeferred = false;
3849 }
3850 if (m_isAcceleratedCompositingActive) { 3838 if (m_isAcceleratedCompositingActive) {
3851 ASSERT(m_layerTreeView); 3839 ASSERT(m_layerTreeView);
3852
3853 if (!page())
3854 return;
3855
3856 FrameView* view = page()->mainFrame()->view();
3857 IntRect dirtyRect = view->windowToContents(rect);
3858 updateLayerTreeViewport(); 3840 updateLayerTreeViewport();
3859 m_nonCompositedContentHost->invalidateRect(dirtyRect);
3860 } else if (m_client) 3841 } else if (m_client)
3861 m_client->didInvalidateRect(rect); 3842 m_client->didInvalidateRect(rect);
3862 } 3843 }
3863 3844
3864 NonCompositedContentHost* WebViewImpl::nonCompositedContentHost()
3865 {
3866 return m_nonCompositedContentHost.get();
3867 }
3868
3869 void WebViewImpl::setBackgroundColor(const WebCore::Color& color)
3870 {
3871 WebCore::Color documentBackgroundColor = color.isValid() ? color : WebCore:: Color::white;
3872 WebColor webDocumentBackgroundColor = documentBackgroundColor.rgb();
3873 m_nonCompositedContentHost->setBackgroundColor(documentBackgroundColor);
3874 m_layerTreeView->setBackgroundColor(webDocumentBackgroundColor);
3875 }
3876
3877 WebCore::GraphicsLayerFactory* WebViewImpl::graphicsLayerFactory() const 3845 WebCore::GraphicsLayerFactory* WebViewImpl::graphicsLayerFactory() const
3878 { 3846 {
3879 return m_graphicsLayerFactory.get(); 3847 return m_graphicsLayerFactory.get();
3880 } 3848 }
3881 3849
3882 void WebViewImpl::registerForAnimations(WebLayer* layer) 3850 void WebViewImpl::registerForAnimations(WebLayer* layer)
3883 { 3851 {
3884 if (m_layerTreeView) 3852 if (m_layerTreeView)
3885 m_layerTreeView->registerForAnimations(layer); 3853 m_layerTreeView->registerForAnimations(layer);
3886 } 3854 }
3887 3855
3888 WebCore::GraphicsLayer* WebViewImpl::rootGraphicsLayer() 3856 WebCore::GraphicsLayer* WebViewImpl::rootGraphicsLayer()
3889 { 3857 {
3890 return m_rootGraphicsLayer; 3858 return m_rootGraphicsLayer;
3891 } 3859 }
3892 3860
3893 void WebViewImpl::scheduleAnimation() 3861 void WebViewImpl::scheduleAnimation()
3894 { 3862 {
3895 if (isAcceleratedCompositingActive()) { 3863 if (isAcceleratedCompositingActive()) {
3896 if (Platform::current()->isThreadedCompositingEnabled()) { 3864 if (Platform::current()->isThreadedCompositingEnabled()) {
3897 ASSERT(m_layerTreeView); 3865 ASSERT(m_layerTreeView);
3898 m_layerTreeView->setNeedsAnimate(); 3866 m_layerTreeView->setNeedsAnimate();
3899 } else 3867 } else
3900 m_client->scheduleAnimation(); 3868 m_client->scheduleAnimation();
3901 } else 3869 } else
3902 m_client->scheduleAnimation(); 3870 m_client->scheduleAnimation();
3903 } 3871 }
3904 3872
3905 void WebViewImpl::paintRootLayer(GraphicsContext& context, const IntRect& conten tRect)
3906 {
3907 double paintStart = currentTime();
3908 if (!page())
3909 return;
3910 FrameView* view = page()->mainFrame()->view();
3911 context.setUseHighResMarkers(page()->deviceScaleFactor() > 1.5f);
3912 view->paintContents(&context, contentRect);
3913 double paintEnd = currentTime();
3914 double pixelsPerSec = (contentRect.width() * contentRect.height()) / (paintE nd - paintStart);
3915 WebKit::Platform::current()->histogramCustomCounts("Renderer4.AccelRootPaint DurationMS", (paintEnd - paintStart) * 1000, 0, 120, 30);
3916 WebKit::Platform::current()->histogramCustomCounts("Renderer4.AccelRootPaint MegapixPerSecond", pixelsPerSec / 1000000, 10, 210, 30);
3917
3918 setBackgroundColor(view->documentBackgroundColor());
3919 }
3920
3921 void WebViewImpl::setIsAcceleratedCompositingActive(bool active) 3873 void WebViewImpl::setIsAcceleratedCompositingActive(bool active)
3922 { 3874 {
3923 WebKit::Platform::current()->histogramEnumeration("GPU.setIsAcceleratedCompo sitingActive", active * 2 + m_isAcceleratedCompositingActive, 4); 3875 WebKit::Platform::current()->histogramEnumeration("GPU.setIsAcceleratedCompo sitingActive", active * 2 + m_isAcceleratedCompositingActive, 4);
3924 3876
3925 if (m_isAcceleratedCompositingActive == active) 3877 if (m_isAcceleratedCompositingActive == active)
3926 return; 3878 return;
3927 3879
3928 if (!active) { 3880 if (!active) {
3929 m_isAcceleratedCompositingActive = false; 3881 m_isAcceleratedCompositingActive = false;
3930 // We need to finish all GL rendering before sending didDeactivateCompos itor() to prevent 3882 // We need to finish all GL rendering before sending didDeactivateCompos itor() to prevent
(...skipping 12 matching lines...) Expand all
3943 m_layerTreeViewCommitsDeferred = true; 3895 m_layerTreeViewCommitsDeferred = true;
3944 } 3896 }
3945 } else if (m_layerTreeView) { 3897 } else if (m_layerTreeView) {
3946 m_isAcceleratedCompositingActive = true; 3898 m_isAcceleratedCompositingActive = true;
3947 updateLayerTreeViewport(); 3899 updateLayerTreeViewport();
3948 3900
3949 m_client->didActivateCompositor(m_inputHandlerIdentifier); 3901 m_client->didActivateCompositor(m_inputHandlerIdentifier);
3950 } else { 3902 } else {
3951 TRACE_EVENT0("webkit", "WebViewImpl::setIsAcceleratedCompositingActive(t rue)"); 3903 TRACE_EVENT0("webkit", "WebViewImpl::setIsAcceleratedCompositingActive(t rue)");
3952 3904
3953 m_nonCompositedContentHost = NonCompositedContentHost::create(this, grap hicsLayerFactory());
3954 m_nonCompositedContentHost->setShowDebugBorders(page()->settings()->show DebugBorders());
3955 m_nonCompositedContentHost->setOpaque(!isTransparent());
3956
3957 m_client->initializeLayerTreeView(); 3905 m_client->initializeLayerTreeView();
3958 m_layerTreeView = m_client->layerTreeView(); 3906 m_layerTreeView = m_client->layerTreeView();
3959 if (m_layerTreeView) { 3907 if (m_layerTreeView) {
3960 m_layerTreeView->setRootLayer(*m_rootLayer); 3908 m_layerTreeView->setRootLayer(*m_rootLayer);
3961 3909
3962 bool visible = page()->visibilityState() == PageVisibilityStateVisib le; 3910 bool visible = page()->visibilityState() == PageVisibilityStateVisib le;
3963 m_layerTreeView->setVisible(visible); 3911 m_layerTreeView->setVisible(visible);
3964 m_layerTreeView->setDeviceScaleFactor(page()->deviceScaleFactor()); 3912 m_layerTreeView->setDeviceScaleFactor(page()->deviceScaleFactor());
3965 m_layerTreeView->setPageScaleFactorAndLimits(pageScaleFactor(), mini mumPageScaleFactor(), maximumPageScaleFactor()); 3913 m_layerTreeView->setPageScaleFactorAndLimits(pageScaleFactor(), mini mumPageScaleFactor(), maximumPageScaleFactor());
3914 m_layerTreeView->setBackgroundColor(backgroundColor());
3966 m_layerTreeView->setHasTransparentBackground(isTransparent()); 3915 m_layerTreeView->setHasTransparentBackground(isTransparent());
3967 updateLayerTreeViewport(); 3916 updateLayerTreeViewport();
3968 m_client->didActivateCompositor(m_inputHandlerIdentifier); 3917 m_client->didActivateCompositor(m_inputHandlerIdentifier);
3969 m_isAcceleratedCompositingActive = true; 3918 m_isAcceleratedCompositingActive = true;
3970 m_compositorCreationFailed = false; 3919 m_compositorCreationFailed = false;
3971 if (m_pageOverlays) 3920 if (m_pageOverlays)
3972 m_pageOverlays->update(); 3921 m_pageOverlays->update();
3973 m_layerTreeView->setShowFPSCounter(m_showFPSCounter); 3922 m_layerTreeView->setShowFPSCounter(m_showFPSCounter);
3974 m_layerTreeView->setShowPaintRects(m_showPaintRects); 3923 m_layerTreeView->setShowPaintRects(m_showPaintRects);
3975 m_layerTreeView->setShowDebugBorders(m_showDebugBorders); 3924 m_layerTreeView->setShowDebugBorders(m_showDebugBorders);
3976 m_layerTreeView->setContinuousPaintingEnabled(m_continuousPaintingEn abled); 3925 m_layerTreeView->setContinuousPaintingEnabled(m_continuousPaintingEn abled);
3977 } else { 3926 } else {
3978 m_nonCompositedContentHost.clear();
3979 m_isAcceleratedCompositingActive = false; 3927 m_isAcceleratedCompositingActive = false;
3980 m_client->didDeactivateCompositor(); 3928 m_client->didDeactivateCompositor();
3981 m_compositorCreationFailed = true; 3929 m_compositorCreationFailed = true;
3982 } 3930 }
3983 } 3931 }
3984 if (page()) 3932 if (page())
3985 page()->mainFrame()->view()->setClipsRepaints(!m_isAcceleratedCompositin gActive); 3933 page()->mainFrame()->view()->setClipsRepaints(!m_isAcceleratedCompositin gActive);
3986 } 3934 }
3987 3935
3988 WebInputHandler* WebViewImpl::createInputHandler() 3936 WebInputHandler* WebViewImpl::createInputHandler()
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
4039 3987
4040 // Force a style recalc to remove all the composited layers. 3988 // Force a style recalc to remove all the composited layers.
4041 m_page->mainFrame()->document()->scheduleForcedStyleRecalc(); 3989 m_page->mainFrame()->document()->scheduleForcedStyleRecalc();
4042 3990
4043 if (m_pageOverlays) 3991 if (m_pageOverlays)
4044 m_pageOverlays->update(); 3992 m_pageOverlays->update();
4045 } 3993 }
4046 3994
4047 void WebViewImpl::updateLayerTreeViewport() 3995 void WebViewImpl::updateLayerTreeViewport()
4048 { 3996 {
4049 if (!page() || !m_nonCompositedContentHost || !m_layerTreeView) 3997 if (!page() || !m_layerTreeView)
4050 return; 3998 return;
4051 3999
4052 FrameView* view = page()->mainFrame()->view();
4053 m_nonCompositedContentHost->setViewport(m_size, view->contentsSize(), view-> scrollPosition(), view->scrollOrigin());
4054 m_layerTreeView->setPageScaleFactorAndLimits(pageScaleFactor(), minimumPageS caleFactor(), maximumPageScaleFactor()); 4000 m_layerTreeView->setPageScaleFactorAndLimits(pageScaleFactor(), minimumPageS caleFactor(), maximumPageScaleFactor());
4055 } 4001 }
4056 4002
4057 void WebViewImpl::selectAutofillSuggestionAtIndex(unsigned listIndex) 4003 void WebViewImpl::selectAutofillSuggestionAtIndex(unsigned listIndex)
4058 { 4004 {
4059 if (m_autofillPopupClient && listIndex < m_autofillPopupClient->getSuggestio nsCount()) 4005 if (m_autofillPopupClient && listIndex < m_autofillPopupClient->getSuggestio nsCount())
4060 m_autofillPopupClient->valueChanged(listIndex); 4006 m_autofillPopupClient->valueChanged(listIndex);
4061 } 4007 }
4062 4008
4063 bool WebViewImpl::detectContentOnTouch(const WebPoint& position) 4009 bool WebViewImpl::detectContentOnTouch(const WebPoint& position)
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
4150 } 4096 }
4151 4097
4152 bool WebViewImpl::shouldDisableDesktopWorkarounds() 4098 bool WebViewImpl::shouldDisableDesktopWorkarounds()
4153 { 4099 {
4154 ViewportArguments arguments = mainFrameImpl()->frame()->document()->viewport Arguments(); 4100 ViewportArguments arguments = mainFrameImpl()->frame()->document()->viewport Arguments();
4155 return arguments.width == ViewportArguments::ValueDeviceWidth || !arguments. userZoom 4101 return arguments.width == ViewportArguments::ValueDeviceWidth || !arguments. userZoom
4156 || (arguments.minZoom == arguments.maxZoom && arguments.minZoom != Viewp ortArguments::ValueAuto); 4102 || (arguments.minZoom == arguments.maxZoom && arguments.minZoom != Viewp ortArguments::ValueAuto);
4157 } 4103 }
4158 4104
4159 } // namespace WebKit 4105 } // namespace WebKit
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698