| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org) |
| 3 * Copyright (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) | 3 * Copyright (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) |
| 4 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc.
All rights reserved. | 4 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc.
All rights reserved. |
| 5 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com> | 5 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com> |
| 6 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> | 6 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> |
| 7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) | 7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) |
| 8 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. | 8 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. |
| 9 * Copyright (C) 2012 Intel Corporation. All rights reserved. | 9 * Copyright (C) 2012 Intel Corporation. All rights reserved. |
| 10 * | 10 * |
| (...skipping 2948 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2959 | 2959 |
| 2960 for (size_t currentCol = 0; currentCol < columnCount; ++currentCol) { | 2960 for (size_t currentCol = 0; currentCol < columnCount; ++currentCol) { |
| 2961 const String& gridAreaName = columnNames[currentCol]; | 2961 const String& gridAreaName = columnNames[currentCol]; |
| 2962 | 2962 |
| 2963 // Unamed areas are always valid (we consider them to be 1x1). | 2963 // Unamed areas are always valid (we consider them to be 1x1). |
| 2964 if (gridAreaName == ".") | 2964 if (gridAreaName == ".") |
| 2965 continue; | 2965 continue; |
| 2966 | 2966 |
| 2967 // We handle several grid areas with the same name at once to simplify t
he validation code. | 2967 // We handle several grid areas with the same name at once to simplify t
he validation code. |
| 2968 size_t lookAheadCol; | 2968 size_t lookAheadCol; |
| 2969 for (lookAheadCol = currentCol; lookAheadCol < (columnCount - 1); ++look
AheadCol) { | 2969 for (lookAheadCol = currentCol + 1; lookAheadCol < columnCount; ++lookAh
eadCol) { |
| 2970 if (columnNames[lookAheadCol + 1] != gridAreaName) | 2970 if (columnNames[lookAheadCol] != gridAreaName) |
| 2971 break; | 2971 break; |
| 2972 } | 2972 } |
| 2973 | 2973 |
| 2974 NamedGridAreaMap::iterator gridAreaIt = gridAreaMap.find(gridAreaName); | 2974 NamedGridAreaMap::iterator gridAreaIt = gridAreaMap.find(gridAreaName); |
| 2975 if (gridAreaIt == gridAreaMap.end()) { | 2975 if (gridAreaIt == gridAreaMap.end()) { |
| 2976 gridAreaMap.add(gridAreaName, GridCoordinate(GridSpan(rowCount, rowC
ount), GridSpan(currentCol, lookAheadCol))); | 2976 gridAreaMap.add(gridAreaName, GridCoordinate(GridSpan(rowCount, rowC
ount + 1), GridSpan(currentCol, lookAheadCol))); |
| 2977 } else { | 2977 } else { |
| 2978 GridCoordinate& gridCoordinate = gridAreaIt->value; | 2978 GridCoordinate& gridCoordinate = gridAreaIt->value; |
| 2979 | 2979 |
| 2980 // The following checks test that the grid area is a single filled-i
n rectangle. | 2980 // The following checks test that the grid area is a single filled-i
n rectangle. |
| 2981 // 1. The new row is adjacent to the previously parsed row. | 2981 // 1. The new row is adjacent to the previously parsed row. |
| 2982 if (rowCount != gridCoordinate.rows.resolvedFinalPosition.next().toI
nt()) | 2982 if (rowCount != gridCoordinate.rows.resolvedFinalPosition.toInt()) |
| 2983 return false; | 2983 return false; |
| 2984 | 2984 |
| 2985 // 2. The new area starts at the same position as the previously par
sed area. | 2985 // 2. The new area starts at the same position as the previously par
sed area. |
| 2986 if (currentCol != gridCoordinate.columns.resolvedInitialPosition.toI
nt()) | 2986 if (currentCol != gridCoordinate.columns.resolvedInitialPosition.toI
nt()) |
| 2987 return false; | 2987 return false; |
| 2988 | 2988 |
| 2989 // 3. The new area ends at the same position as the previously parse
d area. | 2989 // 3. The new area ends at the same position as the previously parse
d area. |
| 2990 if (lookAheadCol != gridCoordinate.columns.resolvedFinalPosition.toI
nt()) | 2990 if (lookAheadCol != gridCoordinate.columns.resolvedFinalPosition.toI
nt()) |
| 2991 return false; | 2991 return false; |
| 2992 | 2992 |
| 2993 ++gridCoordinate.rows.resolvedFinalPosition; | 2993 ++gridCoordinate.rows.resolvedFinalPosition; |
| 2994 } | 2994 } |
| 2995 currentCol = lookAheadCol; | 2995 currentCol = lookAheadCol - 1; |
| 2996 } | 2996 } |
| 2997 | 2997 |
| 2998 m_valueList->next(); | 2998 m_valueList->next(); |
| 2999 return true; | 2999 return true; |
| 3000 } | 3000 } |
| 3001 | 3001 |
| 3002 PassRefPtrWillBeRawPtr<CSSValue> CSSPropertyParser::parseGridTemplateAreas() | 3002 PassRefPtrWillBeRawPtr<CSSValue> CSSPropertyParser::parseGridTemplateAreas() |
| 3003 { | 3003 { |
| 3004 if (m_valueList->current() && m_valueList->current()->id == CSSValueNone) { | 3004 if (m_valueList->current() && m_valueList->current()->id == CSSValueNone) { |
| 3005 m_valueList->next(); | 3005 m_valueList->next(); |
| (...skipping 2872 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5878 return nullptr; | 5878 return nullptr; |
| 5879 a = args->next(); | 5879 a = args->next(); |
| 5880 | 5880 |
| 5881 argNumber++; | 5881 argNumber++; |
| 5882 } | 5882 } |
| 5883 | 5883 |
| 5884 return transformValue.release(); | 5884 return transformValue.release(); |
| 5885 } | 5885 } |
| 5886 | 5886 |
| 5887 } // namespace blink | 5887 } // namespace blink |
| OLD | NEW |