| OLD | NEW |
| 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 Loading... |
| 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" |
| 62 #include "PageWidgetDelegate.h" | 63 #include "PageWidgetDelegate.h" |
| 63 #include "PrerendererClientImpl.h" | 64 #include "PrerendererClientImpl.h" |
| 64 #include "SpeechInputClientImpl.h" | 65 #include "SpeechInputClientImpl.h" |
| 65 #include "SpeechRecognitionClientProxy.h" | 66 #include "SpeechRecognitionClientProxy.h" |
| 66 #include "TextFieldDecoratorImpl.h" | 67 #include "TextFieldDecoratorImpl.h" |
| 67 #include "ValidationMessageClientImpl.h" | 68 #include "ValidationMessageClientImpl.h" |
| 68 #include "ViewportAnchor.h" | 69 #include "ViewportAnchor.h" |
| 69 #include "WebAccessibilityObject.h" | 70 #include "WebAccessibilityObject.h" |
| 70 #include "WebActiveWheelFlingParameters.h" | 71 #include "WebActiveWheelFlingParameters.h" |
| 71 #include "WebAutofillClient.h" | 72 #include "WebAutofillClient.h" |
| (...skipping 1705 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1777 if (m_continuousPaintingEnabled) { | 1778 if (m_continuousPaintingEnabled) { |
| 1778 ContinuousPainter::setNeedsDisplayRecursive(m_rootGraphicsLayer, m_pageO
verlays.get()); | 1779 ContinuousPainter::setNeedsDisplayRecursive(m_rootGraphicsLayer, m_pageO
verlays.get()); |
| 1779 m_client->scheduleAnimation(); | 1780 m_client->scheduleAnimation(); |
| 1780 } | 1781 } |
| 1781 } | 1782 } |
| 1782 | 1783 |
| 1783 void WebViewImpl::layout() | 1784 void WebViewImpl::layout() |
| 1784 { | 1785 { |
| 1785 TRACE_EVENT0("webkit", "WebViewImpl::layout"); | 1786 TRACE_EVENT0("webkit", "WebViewImpl::layout"); |
| 1786 PageWidgetDelegate::layout(m_page.get()); | 1787 PageWidgetDelegate::layout(m_page.get()); |
| 1787 if (m_layerTreeView) | |
| 1788 m_layerTreeView->setBackgroundColor(backgroundColor()); | |
| 1789 | 1788 |
| 1790 if (m_linkHighlight) | 1789 if (m_linkHighlight) |
| 1791 m_linkHighlight->updateGeometry(); | 1790 m_linkHighlight->updateGeometry(); |
| 1792 } | 1791 } |
| 1793 | 1792 |
| 1794 void WebViewImpl::enterForceCompositingMode(bool enter) | 1793 void WebViewImpl::enterForceCompositingMode(bool enter) |
| 1795 { | 1794 { |
| 1796 if (page()->settings()->forceCompositingMode() == enter) | 1795 if (page()->settings()->forceCompositingMode() == enter) |
| 1797 return; | 1796 return; |
| 1798 | 1797 |
| (...skipping 1146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2945 { | 2944 { |
| 2946 if (!page()) | 2945 if (!page()) |
| 2947 return; | 2946 return; |
| 2948 | 2947 |
| 2949 Frame* frame = page()->mainFrame(); | 2948 Frame* frame = page()->mainFrame(); |
| 2950 if (!frame || !frame->view()) | 2949 if (!frame || !frame->view()) |
| 2951 return; | 2950 return; |
| 2952 | 2951 |
| 2953 frame->view()->setUseFixedLayout(enable); | 2952 frame->view()->setUseFixedLayout(enable); |
| 2954 | 2953 |
| 2955 if (m_isAcceleratedCompositingActive) | 2954 // Also notify the base layer, which RenderLayerCompositor does not see. |
| 2955 if (m_nonCompositedContentHost) |
| 2956 updateLayerTreeViewport(); | 2956 updateLayerTreeViewport(); |
| 2957 } | 2957 } |
| 2958 | 2958 |
| 2959 | 2959 |
| 2960 void WebViewImpl::enableAutoResizeMode(const WebSize& minSize, const WebSize& ma
xSize) | 2960 void WebViewImpl::enableAutoResizeMode(const WebSize& minSize, const WebSize& ma
xSize) |
| 2961 { | 2961 { |
| 2962 m_shouldAutoResize = true; | 2962 m_shouldAutoResize = true; |
| 2963 m_minAutoSize = minSize; | 2963 m_minAutoSize = minSize; |
| 2964 m_maxAutoSize = maxSize; | 2964 m_maxAutoSize = maxSize; |
| 2965 configureAutoResizeMode(); | 2965 configureAutoResizeMode(); |
| (...skipping 574 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3540 { | 3540 { |
| 3541 // Set any existing frames to be transparent. | 3541 // Set any existing frames to be transparent. |
| 3542 Frame* frame = m_page->mainFrame(); | 3542 Frame* frame = m_page->mainFrame(); |
| 3543 while (frame) { | 3543 while (frame) { |
| 3544 frame->view()->setTransparent(isTransparent); | 3544 frame->view()->setTransparent(isTransparent); |
| 3545 frame = frame->tree()->traverseNext(); | 3545 frame = frame->tree()->traverseNext(); |
| 3546 } | 3546 } |
| 3547 | 3547 |
| 3548 // Future frames check this to know whether to be transparent. | 3548 // Future frames check this to know whether to be transparent. |
| 3549 m_isTransparent = isTransparent; | 3549 m_isTransparent = isTransparent; |
| 3550 |
| 3551 if (m_nonCompositedContentHost) |
| 3552 m_nonCompositedContentHost->setOpaque(!isTransparent); |
| 3550 } | 3553 } |
| 3551 | 3554 |
| 3552 bool WebViewImpl::isTransparent() const | 3555 bool WebViewImpl::isTransparent() const |
| 3553 { | 3556 { |
| 3554 return m_isTransparent; | 3557 return m_isTransparent; |
| 3555 } | 3558 } |
| 3556 | 3559 |
| 3557 void WebViewImpl::setIsActive(bool active) | 3560 void WebViewImpl::setIsActive(bool active) |
| 3558 { | 3561 { |
| 3559 if (page() && page()->focusController()) | 3562 if (page() && page()->focusController()) |
| (...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3841 } | 3844 } |
| 3842 | 3845 |
| 3843 void WebViewImpl::setRootGraphicsLayer(GraphicsLayer* layer) | 3846 void WebViewImpl::setRootGraphicsLayer(GraphicsLayer* layer) |
| 3844 { | 3847 { |
| 3845 suppressInvalidations(true); | 3848 suppressInvalidations(true); |
| 3846 | 3849 |
| 3847 m_rootGraphicsLayer = layer; | 3850 m_rootGraphicsLayer = layer; |
| 3848 m_rootLayer = layer ? layer->platformLayer() : 0; | 3851 m_rootLayer = layer ? layer->platformLayer() : 0; |
| 3849 | 3852 |
| 3850 setIsAcceleratedCompositingActive(layer); | 3853 setIsAcceleratedCompositingActive(layer); |
| 3854 if (m_nonCompositedContentHost) { |
| 3855 GraphicsLayer* scrollLayer = 0; |
| 3856 if (layer) { |
| 3857 Document* document = page()->mainFrame()->document(); |
| 3858 RenderView* renderView = document->renderView(); |
| 3859 RenderLayerCompositor* compositor = renderView->compositor(); |
| 3860 scrollLayer = compositor->scrollLayer(); |
| 3861 } |
| 3862 m_nonCompositedContentHost->setScrollLayer(scrollLayer); |
| 3863 } |
| 3851 | 3864 |
| 3852 if (m_layerTreeView) { | 3865 if (m_layerTreeView) { |
| 3853 if (m_rootLayer) | 3866 if (m_rootLayer) |
| 3854 m_layerTreeView->setRootLayer(*m_rootLayer); | 3867 m_layerTreeView->setRootLayer(*m_rootLayer); |
| 3855 else | 3868 else |
| 3856 m_layerTreeView->clearRootLayer(); | 3869 m_layerTreeView->clearRootLayer(); |
| 3857 } | 3870 } |
| 3858 | 3871 |
| 3859 suppressInvalidations(false); | 3872 suppressInvalidations(false); |
| 3860 } | 3873 } |
| (...skipping 12 matching lines...) Expand all Loading... |
| 3873 { | 3886 { |
| 3874 if (m_layerTreeViewCommitsDeferred) { | 3887 if (m_layerTreeViewCommitsDeferred) { |
| 3875 // If we receive an invalidation from WebKit while in deferred commit mo
de, | 3888 // If we receive an invalidation from WebKit while in deferred commit mo
de, |
| 3876 // that means it's time to start producing frames again so un-defer. | 3889 // that means it's time to start producing frames again so un-defer. |
| 3877 if (m_layerTreeView) | 3890 if (m_layerTreeView) |
| 3878 m_layerTreeView->setDeferCommits(false); | 3891 m_layerTreeView->setDeferCommits(false); |
| 3879 m_layerTreeViewCommitsDeferred = false; | 3892 m_layerTreeViewCommitsDeferred = false; |
| 3880 } | 3893 } |
| 3881 if (m_isAcceleratedCompositingActive) { | 3894 if (m_isAcceleratedCompositingActive) { |
| 3882 ASSERT(m_layerTreeView); | 3895 ASSERT(m_layerTreeView); |
| 3896 |
| 3897 if (!page()) |
| 3898 return; |
| 3899 |
| 3900 FrameView* view = page()->mainFrame()->view(); |
| 3901 IntRect dirtyRect = view->windowToContents(rect); |
| 3883 updateLayerTreeViewport(); | 3902 updateLayerTreeViewport(); |
| 3903 m_nonCompositedContentHost->invalidateRect(dirtyRect); |
| 3884 } else if (m_client) | 3904 } else if (m_client) |
| 3885 m_client->didInvalidateRect(rect); | 3905 m_client->didInvalidateRect(rect); |
| 3886 } | 3906 } |
| 3887 | 3907 |
| 3908 NonCompositedContentHost* WebViewImpl::nonCompositedContentHost() |
| 3909 { |
| 3910 return m_nonCompositedContentHost.get(); |
| 3911 } |
| 3912 |
| 3913 void WebViewImpl::setBackgroundColor(const WebCore::Color& color) |
| 3914 { |
| 3915 WebCore::Color documentBackgroundColor = color.isValid() ? color : WebCore::
Color::white; |
| 3916 WebColor webDocumentBackgroundColor = documentBackgroundColor.rgb(); |
| 3917 m_nonCompositedContentHost->setBackgroundColor(documentBackgroundColor); |
| 3918 m_layerTreeView->setBackgroundColor(webDocumentBackgroundColor); |
| 3919 } |
| 3920 |
| 3888 WebCore::GraphicsLayerFactory* WebViewImpl::graphicsLayerFactory() const | 3921 WebCore::GraphicsLayerFactory* WebViewImpl::graphicsLayerFactory() const |
| 3889 { | 3922 { |
| 3890 return m_graphicsLayerFactory.get(); | 3923 return m_graphicsLayerFactory.get(); |
| 3891 } | 3924 } |
| 3892 | 3925 |
| 3893 void WebViewImpl::registerForAnimations(WebLayer* layer) | 3926 void WebViewImpl::registerForAnimations(WebLayer* layer) |
| 3894 { | 3927 { |
| 3895 if (m_layerTreeView) | 3928 if (m_layerTreeView) |
| 3896 m_layerTreeView->registerForAnimations(layer); | 3929 m_layerTreeView->registerForAnimations(layer); |
| 3897 } | 3930 } |
| 3898 | 3931 |
| 3899 WebCore::GraphicsLayer* WebViewImpl::rootGraphicsLayer() | 3932 WebCore::GraphicsLayer* WebViewImpl::rootGraphicsLayer() |
| 3900 { | 3933 { |
| 3901 return m_rootGraphicsLayer; | 3934 return m_rootGraphicsLayer; |
| 3902 } | 3935 } |
| 3903 | 3936 |
| 3904 void WebViewImpl::scheduleAnimation() | 3937 void WebViewImpl::scheduleAnimation() |
| 3905 { | 3938 { |
| 3906 if (isAcceleratedCompositingActive()) { | 3939 if (isAcceleratedCompositingActive()) { |
| 3907 if (Platform::current()->isThreadedCompositingEnabled()) { | 3940 if (Platform::current()->isThreadedCompositingEnabled()) { |
| 3908 ASSERT(m_layerTreeView); | 3941 ASSERT(m_layerTreeView); |
| 3909 m_layerTreeView->setNeedsAnimate(); | 3942 m_layerTreeView->setNeedsAnimate(); |
| 3910 } else | 3943 } else |
| 3911 m_client->scheduleAnimation(); | 3944 m_client->scheduleAnimation(); |
| 3912 } else | 3945 } else |
| 3913 m_client->scheduleAnimation(); | 3946 m_client->scheduleAnimation(); |
| 3914 } | 3947 } |
| 3915 | 3948 |
| 3949 void WebViewImpl::paintRootLayer(GraphicsContext& context, const IntRect& conten
tRect) |
| 3950 { |
| 3951 double paintStart = currentTime(); |
| 3952 if (!page()) |
| 3953 return; |
| 3954 FrameView* view = page()->mainFrame()->view(); |
| 3955 context.setUseHighResMarkers(page()->deviceScaleFactor() > 1.5f); |
| 3956 view->paintContents(&context, contentRect); |
| 3957 double paintEnd = currentTime(); |
| 3958 double pixelsPerSec = (contentRect.width() * contentRect.height()) / (paintE
nd - paintStart); |
| 3959 WebKit::Platform::current()->histogramCustomCounts("Renderer4.AccelRootPaint
DurationMS", (paintEnd - paintStart) * 1000, 0, 120, 30); |
| 3960 WebKit::Platform::current()->histogramCustomCounts("Renderer4.AccelRootPaint
MegapixPerSecond", pixelsPerSec / 1000000, 10, 210, 30); |
| 3961 |
| 3962 setBackgroundColor(view->documentBackgroundColor()); |
| 3963 } |
| 3964 |
| 3916 void WebViewImpl::setIsAcceleratedCompositingActive(bool active) | 3965 void WebViewImpl::setIsAcceleratedCompositingActive(bool active) |
| 3917 { | 3966 { |
| 3918 WebKit::Platform::current()->histogramEnumeration("GPU.setIsAcceleratedCompo
sitingActive", active * 2 + m_isAcceleratedCompositingActive, 4); | 3967 WebKit::Platform::current()->histogramEnumeration("GPU.setIsAcceleratedCompo
sitingActive", active * 2 + m_isAcceleratedCompositingActive, 4); |
| 3919 | 3968 |
| 3920 if (m_isAcceleratedCompositingActive == active) | 3969 if (m_isAcceleratedCompositingActive == active) |
| 3921 return; | 3970 return; |
| 3922 | 3971 |
| 3923 if (!active) { | 3972 if (!active) { |
| 3924 m_isAcceleratedCompositingActive = false; | 3973 m_isAcceleratedCompositingActive = false; |
| 3925 // We need to finish all GL rendering before sending didDeactivateCompos
itor() to prevent | 3974 // We need to finish all GL rendering before sending didDeactivateCompos
itor() to prevent |
| (...skipping 12 matching lines...) Expand all Loading... |
| 3938 m_layerTreeViewCommitsDeferred = true; | 3987 m_layerTreeViewCommitsDeferred = true; |
| 3939 } | 3988 } |
| 3940 } else if (m_layerTreeView) { | 3989 } else if (m_layerTreeView) { |
| 3941 m_isAcceleratedCompositingActive = true; | 3990 m_isAcceleratedCompositingActive = true; |
| 3942 updateLayerTreeViewport(); | 3991 updateLayerTreeViewport(); |
| 3943 | 3992 |
| 3944 m_client->didActivateCompositor(m_inputHandlerIdentifier); | 3993 m_client->didActivateCompositor(m_inputHandlerIdentifier); |
| 3945 } else { | 3994 } else { |
| 3946 TRACE_EVENT0("webkit", "WebViewImpl::setIsAcceleratedCompositingActive(t
rue)"); | 3995 TRACE_EVENT0("webkit", "WebViewImpl::setIsAcceleratedCompositingActive(t
rue)"); |
| 3947 | 3996 |
| 3997 m_nonCompositedContentHost = NonCompositedContentHost::create(this, grap
hicsLayerFactory()); |
| 3998 m_nonCompositedContentHost->setShowDebugBorders(page()->settings()->show
DebugBorders()); |
| 3999 m_nonCompositedContentHost->setOpaque(!isTransparent()); |
| 4000 |
| 3948 m_client->initializeLayerTreeView(); | 4001 m_client->initializeLayerTreeView(); |
| 3949 m_layerTreeView = m_client->layerTreeView(); | 4002 m_layerTreeView = m_client->layerTreeView(); |
| 3950 if (m_layerTreeView) { | 4003 if (m_layerTreeView) { |
| 3951 m_layerTreeView->setRootLayer(*m_rootLayer); | 4004 m_layerTreeView->setRootLayer(*m_rootLayer); |
| 3952 | 4005 |
| 3953 bool visible = page()->visibilityState() == PageVisibilityStateVisib
le; | 4006 bool visible = page()->visibilityState() == PageVisibilityStateVisib
le; |
| 3954 m_layerTreeView->setVisible(visible); | 4007 m_layerTreeView->setVisible(visible); |
| 3955 m_layerTreeView->setDeviceScaleFactor(page()->deviceScaleFactor()); | 4008 m_layerTreeView->setDeviceScaleFactor(page()->deviceScaleFactor()); |
| 3956 m_layerTreeView->setPageScaleFactorAndLimits(pageScaleFactor(), m_mi
nimumPageScaleFactor, m_maximumPageScaleFactor); | 4009 m_layerTreeView->setPageScaleFactorAndLimits(pageScaleFactor(), m_mi
nimumPageScaleFactor, m_maximumPageScaleFactor); |
| 3957 m_layerTreeView->setBackgroundColor(backgroundColor()); | |
| 3958 m_layerTreeView->setHasTransparentBackground(isTransparent()); | 4010 m_layerTreeView->setHasTransparentBackground(isTransparent()); |
| 3959 updateLayerTreeViewport(); | 4011 updateLayerTreeViewport(); |
| 3960 m_client->didActivateCompositor(m_inputHandlerIdentifier); | 4012 m_client->didActivateCompositor(m_inputHandlerIdentifier); |
| 3961 m_isAcceleratedCompositingActive = true; | 4013 m_isAcceleratedCompositingActive = true; |
| 3962 m_compositorCreationFailed = false; | 4014 m_compositorCreationFailed = false; |
| 3963 if (m_pageOverlays) | 4015 if (m_pageOverlays) |
| 3964 m_pageOverlays->update(); | 4016 m_pageOverlays->update(); |
| 3965 m_layerTreeView->setShowFPSCounter(m_showFPSCounter); | 4017 m_layerTreeView->setShowFPSCounter(m_showFPSCounter); |
| 3966 m_layerTreeView->setShowPaintRects(m_showPaintRects); | 4018 m_layerTreeView->setShowPaintRects(m_showPaintRects); |
| 3967 m_layerTreeView->setShowDebugBorders(m_showDebugBorders); | 4019 m_layerTreeView->setShowDebugBorders(m_showDebugBorders); |
| 3968 m_layerTreeView->setContinuousPaintingEnabled(m_continuousPaintingEn
abled); | 4020 m_layerTreeView->setContinuousPaintingEnabled(m_continuousPaintingEn
abled); |
| 3969 } else { | 4021 } else { |
| 4022 m_nonCompositedContentHost.clear(); |
| 3970 m_isAcceleratedCompositingActive = false; | 4023 m_isAcceleratedCompositingActive = false; |
| 3971 m_client->didDeactivateCompositor(); | 4024 m_client->didDeactivateCompositor(); |
| 3972 m_compositorCreationFailed = true; | 4025 m_compositorCreationFailed = true; |
| 3973 } | 4026 } |
| 3974 } | 4027 } |
| 3975 if (page()) | 4028 if (page()) |
| 3976 page()->mainFrame()->view()->setClipsRepaints(!m_isAcceleratedCompositin
gActive); | 4029 page()->mainFrame()->view()->setClipsRepaints(!m_isAcceleratedCompositin
gActive); |
| 3977 } | 4030 } |
| 3978 | 4031 |
| 3979 WebInputHandler* WebViewImpl::createInputHandler() | 4032 WebInputHandler* WebViewImpl::createInputHandler() |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4030 | 4083 |
| 4031 // Force a style recalc to remove all the composited layers. | 4084 // Force a style recalc to remove all the composited layers. |
| 4032 m_page->mainFrame()->document()->scheduleForcedStyleRecalc(); | 4085 m_page->mainFrame()->document()->scheduleForcedStyleRecalc(); |
| 4033 | 4086 |
| 4034 if (m_pageOverlays) | 4087 if (m_pageOverlays) |
| 4035 m_pageOverlays->update(); | 4088 m_pageOverlays->update(); |
| 4036 } | 4089 } |
| 4037 | 4090 |
| 4038 void WebViewImpl::updateLayerTreeViewport() | 4091 void WebViewImpl::updateLayerTreeViewport() |
| 4039 { | 4092 { |
| 4040 if (!page() || !m_layerTreeView) | 4093 if (!page() || !m_nonCompositedContentHost || !m_layerTreeView) |
| 4041 return; | 4094 return; |
| 4042 | 4095 |
| 4096 FrameView* view = page()->mainFrame()->view(); |
| 4097 m_nonCompositedContentHost->setViewport(m_size, view->contentsSize(), view->
scrollPosition(), view->scrollOrigin()); |
| 4043 m_layerTreeView->setPageScaleFactorAndLimits(pageScaleFactor(), m_minimumPag
eScaleFactor, m_maximumPageScaleFactor); | 4098 m_layerTreeView->setPageScaleFactorAndLimits(pageScaleFactor(), m_minimumPag
eScaleFactor, m_maximumPageScaleFactor); |
| 4044 } | 4099 } |
| 4045 | 4100 |
| 4046 void WebViewImpl::selectAutofillSuggestionAtIndex(unsigned listIndex) | 4101 void WebViewImpl::selectAutofillSuggestionAtIndex(unsigned listIndex) |
| 4047 { | 4102 { |
| 4048 if (m_autofillPopupClient && listIndex < m_autofillPopupClient->getSuggestio
nsCount()) | 4103 if (m_autofillPopupClient && listIndex < m_autofillPopupClient->getSuggestio
nsCount()) |
| 4049 m_autofillPopupClient->valueChanged(listIndex); | 4104 m_autofillPopupClient->valueChanged(listIndex); |
| 4050 } | 4105 } |
| 4051 | 4106 |
| 4052 bool WebViewImpl::detectContentOnTouch(const WebPoint& position) | 4107 bool WebViewImpl::detectContentOnTouch(const WebPoint& position) |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4139 } | 4194 } |
| 4140 | 4195 |
| 4141 bool WebViewImpl::shouldDisableDesktopWorkarounds() | 4196 bool WebViewImpl::shouldDisableDesktopWorkarounds() |
| 4142 { | 4197 { |
| 4143 ViewportArguments arguments = mainFrameImpl()->frame()->document()->viewport
Arguments(); | 4198 ViewportArguments arguments = mainFrameImpl()->frame()->document()->viewport
Arguments(); |
| 4144 return arguments.width == ViewportArguments::ValueDeviceWidth || !arguments.
userZoom | 4199 return arguments.width == ViewportArguments::ValueDeviceWidth || !arguments.
userZoom |
| 4145 || (arguments.minZoom == arguments.maxZoom && arguments.minZoom != Viewp
ortArguments::ValueAuto); | 4200 || (arguments.minZoom == arguments.maxZoom && arguments.minZoom != Viewp
ortArguments::ValueAuto); |
| 4146 } | 4201 } |
| 4147 | 4202 |
| 4148 } // namespace WebKit | 4203 } // namespace WebKit |
| OLD | NEW |