| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #import "ios/web/web_state/page_viewport_state.h" | 5 #import "ios/web/web_state/page_viewport_state.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 | 8 |
| 9 #if !defined(__has_feature) || !__has_feature(objc_arc) |
| 10 #error "This file requires ARC support." |
| 11 #endif |
| 12 |
| 9 namespace { | 13 namespace { |
| 10 // Parses a double from |viewport_content|. |viewport_content| is expected to | 14 // Parses a double from |viewport_content|. |viewport_content| is expected to |
| 11 // have no leading whitespace. | 15 // have no leading whitespace. |
| 12 double ParseDouble(NSString* viewport_content) { | 16 double ParseDouble(NSString* viewport_content) { |
| 13 double value = [viewport_content doubleValue]; | 17 double value = [viewport_content doubleValue]; |
| 14 // |-doubleValue| returns zero when parsing a non-numerical string, so check | 18 // |-doubleValue| returns zero when parsing a non-numerical string, so check |
| 15 // that the string actually contains zero to verify that the value was | 19 // that the string actually contains zero to verify that the value was |
| 16 // represented in the string. | 20 // represented in the string. |
| 17 if (!value && ![viewport_content hasPrefix:@"0"]) | 21 if (!value && ![viewport_content hasPrefix:@"0"]) |
| 18 value = NAN; | 22 value = NAN; |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 75 minimum_zoom_scale_ = ParseDouble(value); | 79 minimum_zoom_scale_ = ParseDouble(value); |
| 76 } else if (![name caseInsensitiveCompare:@"maximum-scale"]) { | 80 } else if (![name caseInsensitiveCompare:@"maximum-scale"]) { |
| 77 maximum_zoom_scale_ = ParseDouble(value); | 81 maximum_zoom_scale_ = ParseDouble(value); |
| 78 } else if (![name caseInsensitiveCompare:@"initial-scale"]) { | 82 } else if (![name caseInsensitiveCompare:@"initial-scale"]) { |
| 79 initial_zoom_scale_ = ParseDouble(value); | 83 initial_zoom_scale_ = ParseDouble(value); |
| 80 } | 84 } |
| 81 } | 85 } |
| 82 } | 86 } |
| 83 } | 87 } |
| 84 | 88 |
| 85 } // namespace web | 89 } // namespace web |
| OLD | NEW |