| OLD | NEW |
| 1 /* | 1 /* |
| 2 * CSS Media Query Evaluator | 2 * CSS Media Query Evaluator |
| 3 * | 3 * |
| 4 * Copyright (C) 2006 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com>. | 4 * Copyright (C) 2006 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com>. |
| 5 * Copyright (C) 2013 Apple Inc. All rights reserved. | 5 * Copyright (C) 2013 Apple Inc. All rights reserved. |
| 6 * Copyright (C) 2013 Intel Corporation. All rights reserved. | 6 * Copyright (C) 2013 Intel Corporation. All rights reserved. |
| 7 * | 7 * |
| 8 * Redistribution and use in source and binary forms, with or without | 8 * Redistribution and use in source and binary forms, with or without |
| 9 * modification, are permitted provided that the following conditions | 9 * modification, are permitted provided that the following conditions |
| 10 * are met: | 10 * are met: |
| (...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 144 MediaQueryResultList* deviceDependentMediaQueryResults) const { | 144 MediaQueryResultList* deviceDependentMediaQueryResults) const { |
| 145 if (!querySet) | 145 if (!querySet) |
| 146 return true; | 146 return true; |
| 147 | 147 |
| 148 const HeapVector<Member<MediaQuery>>& queries = querySet->queryVector(); | 148 const HeapVector<Member<MediaQuery>>& queries = querySet->queryVector(); |
| 149 if (!queries.size()) | 149 if (!queries.size()) |
| 150 return true; // Empty query list evaluates to true. | 150 return true; // Empty query list evaluates to true. |
| 151 | 151 |
| 152 // Iterate over queries, stop if any of them eval to true (OR semantics). | 152 // Iterate over queries, stop if any of them eval to true (OR semantics). |
| 153 bool result = false; | 153 bool result = false; |
| 154 for (size_t i = 0; i < queries.size() && !result; ++i) | 154 for (size_t i = 0; i < queries.size() && !result; ++i) { |
| 155 // TODO(sof): CHECK() added for crbug.com/699269 diagnosis, remove sooner. |
| 156 CHECK_EQ(queries.data(), querySet->queryVector().data()); |
| 155 result = eval(queries[i].get(), viewportDependentMediaQueryResults, | 157 result = eval(queries[i].get(), viewportDependentMediaQueryResults, |
| 156 deviceDependentMediaQueryResults); | 158 deviceDependentMediaQueryResults); |
| 159 } |
| 157 | 160 |
| 158 return result; | 161 return result; |
| 159 } | 162 } |
| 160 | 163 |
| 161 template <typename T> | 164 template <typename T> |
| 162 bool compareValue(T a, T b, MediaFeaturePrefix op) { | 165 bool compareValue(T a, T b, MediaFeaturePrefix op) { |
| 163 switch (op) { | 166 switch (op) { |
| 164 case MinPrefix: | 167 case MinPrefix: |
| 165 return a >= b; | 168 return a >= b; |
| 166 case MaxPrefix: | 169 case MaxPrefix: |
| (...skipping 643 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 810 // Call the media feature evaluation function. Assume no prefix and let | 813 // Call the media feature evaluation function. Assume no prefix and let |
| 811 // trampoline functions override the prefix if prefix is used. | 814 // trampoline functions override the prefix if prefix is used. |
| 812 EvalFunc func = gFunctionMap->at(expr->mediaFeature().impl()); | 815 EvalFunc func = gFunctionMap->at(expr->mediaFeature().impl()); |
| 813 if (func) | 816 if (func) |
| 814 return func(expr->expValue(), NoPrefix, *m_mediaValues); | 817 return func(expr->expValue(), NoPrefix, *m_mediaValues); |
| 815 | 818 |
| 816 return false; | 819 return false; |
| 817 } | 820 } |
| 818 | 821 |
| 819 } // namespace blink | 822 } // namespace blink |
| OLD | NEW |