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 2989 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3000 { | 3000 { |
3001 if (!settings()->viewportEnabled() || !page() || !m_size.width || !m_size.he
ight) | 3001 if (!settings()->viewportEnabled() || !page() || !m_size.width || !m_size.he
ight) |
3002 return; | 3002 return; |
3003 | 3003 |
3004 ViewportDescription adjustedDescription = description; | 3004 ViewportDescription adjustedDescription = description; |
3005 if (settingsImpl()->viewportMetaLayoutSizeQuirk() && adjustedDescription.typ
e == ViewportDescription::ViewportMeta) { | 3005 if (settingsImpl()->viewportMetaLayoutSizeQuirk() && adjustedDescription.typ
e == ViewportDescription::ViewportMeta) { |
3006 if (adjustedDescription.maxWidth.type() == ExtendToZoom) | 3006 if (adjustedDescription.maxWidth.type() == ExtendToZoom) |
3007 adjustedDescription.maxWidth = Length(); // auto | 3007 adjustedDescription.maxWidth = Length(); // auto |
3008 const int legacyWidthSnappingMagicNumber = 320; | 3008 const int legacyWidthSnappingMagicNumber = 320; |
3009 if (adjustedDescription.maxWidth.isFixed() && adjustedDescription.maxWid
th.value() <= legacyWidthSnappingMagicNumber) | 3009 if (adjustedDescription.maxWidth.isFixed() && adjustedDescription.maxWid
th.value() <= legacyWidthSnappingMagicNumber) |
3010 adjustedDescription.maxWidth = Length(100, ViewportPercentageWidth); | 3010 adjustedDescription.maxWidth = Length(DeviceWidth); |
3011 if (adjustedDescription.maxHeight.isFixed() && adjustedDescription.maxWi
dth.value() <= m_size.height) | 3011 if (adjustedDescription.maxHeight.isFixed() && adjustedDescription.maxWi
dth.value() <= m_size.height) |
3012 adjustedDescription.maxHeight = Length(100, ViewportPercentageHeight
); | 3012 adjustedDescription.maxHeight = Length(DeviceHeight); |
3013 adjustedDescription.minWidth = adjustedDescription.maxWidth; | 3013 adjustedDescription.minWidth = adjustedDescription.maxWidth; |
3014 adjustedDescription.minHeight = adjustedDescription.maxHeight; | 3014 adjustedDescription.minHeight = adjustedDescription.maxHeight; |
3015 } | 3015 } |
3016 float oldInitialScale = m_pageScaleConstraintsSet.pageDefinedConstraints().i
nitialScale; | 3016 float oldInitialScale = m_pageScaleConstraintsSet.pageDefinedConstraints().i
nitialScale; |
3017 m_pageScaleConstraintsSet.updatePageDefinedConstraints(adjustedDescription,
m_size); | 3017 m_pageScaleConstraintsSet.updatePageDefinedConstraints(adjustedDescription,
m_size); |
3018 | 3018 |
3019 if (settingsImpl()->clobberUserAgentInitialScaleQuirk() | 3019 if (settingsImpl()->clobberUserAgentInitialScaleQuirk() |
3020 && m_pageScaleConstraintsSet.userAgentConstraints().initialScale != -1 | 3020 && m_pageScaleConstraintsSet.userAgentConstraints().initialScale != -1 |
3021 && m_pageScaleConstraintsSet.userAgentConstraints().initialScale * devic
eScaleFactor() <= 1) { | 3021 && m_pageScaleConstraintsSet.userAgentConstraints().initialScale * devic
eScaleFactor() <= 1) { |
3022 if (description.maxWidth == Length(100, ViewportPercentageWidth) | 3022 if (description.maxWidth == Length(DeviceWidth) |
3023 || (description.maxWidth.type() == ExtendToZoom && m_pageScaleConstr
aintsSet.pageDefinedConstraints().initialScale == 1.0f)) | 3023 || (description.maxWidth.type() == ExtendToZoom && m_pageScaleConstr
aintsSet.pageDefinedConstraints().initialScale == 1.0f)) |
3024 setInitialPageScaleOverride(-1); | 3024 setInitialPageScaleOverride(-1); |
3025 } | 3025 } |
3026 m_pageScaleConstraintsSet.adjustForAndroidWebViewQuirks(adjustedDescription,
m_size, page()->settings().layoutFallbackWidth(), deviceScaleFactor(), settings
Impl()->supportDeprecatedTargetDensityDPI(), page()->settings().wideViewportQuir
kEnabled(), page()->settings().useWideViewport(), page()->settings().loadWithOve
rviewMode(), settingsImpl()->viewportMetaNonUserScalableQuirk()); | 3026 m_pageScaleConstraintsSet.adjustForAndroidWebViewQuirks(adjustedDescription,
m_size, page()->settings().layoutFallbackWidth(), deviceScaleFactor(), settings
Impl()->supportDeprecatedTargetDensityDPI(), page()->settings().wideViewportQuir
kEnabled(), page()->settings().useWideViewport(), page()->settings().loadWithOve
rviewMode(), settingsImpl()->viewportMetaNonUserScalableQuirk()); |
3027 float newInitialScale = m_pageScaleConstraintsSet.pageDefinedConstraints().i
nitialScale; | 3027 float newInitialScale = m_pageScaleConstraintsSet.pageDefinedConstraints().i
nitialScale; |
3028 if (oldInitialScale != newInitialScale && newInitialScale != -1) { | 3028 if (oldInitialScale != newInitialScale && newInitialScale != -1) { |
3029 m_pageScaleConstraintsSet.setNeedsReset(true); | 3029 m_pageScaleConstraintsSet.setNeedsReset(true); |
3030 if (mainFrameImpl() && mainFrameImpl()->frameView()) | 3030 if (mainFrameImpl() && mainFrameImpl()->frameView()) |
3031 mainFrameImpl()->frameView()->setNeedsLayout(); | 3031 mainFrameImpl()->frameView()->setNeedsLayout(); |
3032 } | 3032 } |
(...skipping 1162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4195 const PageScaleConstraints& constraints = m_pageScaleConstraintsSet.pageDefi
nedConstraints(); | 4195 const PageScaleConstraints& constraints = m_pageScaleConstraintsSet.pageDefi
nedConstraints(); |
4196 | 4196 |
4197 if (!mainFrameImpl() || !mainFrameImpl()->frameView()) | 4197 if (!mainFrameImpl() || !mainFrameImpl()->frameView()) |
4198 return false; | 4198 return false; |
4199 | 4199 |
4200 return mainFrameImpl()->frameView()->layoutSize().width() == m_size.width | 4200 return mainFrameImpl()->frameView()->layoutSize().width() == m_size.width |
4201 || (constraints.minimumScale == constraints.maximumScale && constraints.
minimumScale != -1); | 4201 || (constraints.minimumScale == constraints.maximumScale && constraints.
minimumScale != -1); |
4202 } | 4202 } |
4203 | 4203 |
4204 } // namespace blink | 4204 } // namespace blink |
OLD | NEW |