| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc.
All rights reserved. | 2 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc.
All rights reserved. |
| 3 * Copyright (C) 2008, 2010 Nokia Corporation and/or its subsidiary(-ies) | 3 * Copyright (C) 2008, 2010 Nokia Corporation and/or its subsidiary(-ies) |
| 4 * Copyright (C) 2007 Alp Toker <alp@atoker.com> | 4 * Copyright (C) 2007 Alp Toker <alp@atoker.com> |
| 5 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> | 5 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> |
| 6 * Copyright (C) 2008 Dirk Schulze <krit@webkit.org> | 6 * Copyright (C) 2008 Dirk Schulze <krit@webkit.org> |
| 7 * Copyright (C) 2010 Torch Mobile (Beijing) Co. Ltd. All rights reserved. | 7 * Copyright (C) 2010 Torch Mobile (Beijing) Co. Ltd. All rights reserved. |
| 8 * Copyright (C) 2012, 2013 Intel Corporation. All rights reserved. | 8 * Copyright (C) 2012, 2013 Intel Corporation. All rights reserved. |
| 9 * Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved. | 9 * Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved. |
| 10 * | 10 * |
| (...skipping 1060 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1071 | 1071 |
| 1072 StrokeData strokeData; | 1072 StrokeData strokeData; |
| 1073 strokeData.setThickness(lineWidth()); | 1073 strokeData.setThickness(lineWidth()); |
| 1074 strokeData.setLineCap(getLineCap()); | 1074 strokeData.setLineCap(getLineCap()); |
| 1075 strokeData.setLineJoin(getLineJoin()); | 1075 strokeData.setLineJoin(getLineJoin()); |
| 1076 strokeData.setMiterLimit(miterLimit()); | 1076 strokeData.setMiterLimit(miterLimit()); |
| 1077 strokeData.setLineDash(getLineDash(), lineDashOffset()); | 1077 strokeData.setLineDash(getLineDash(), lineDashOffset()); |
| 1078 return path.strokeContains(transformedPoint, strokeData); | 1078 return path.strokeContains(transformedPoint, strokeData); |
| 1079 } | 1079 } |
| 1080 | 1080 |
| 1081 void CanvasRenderingContext2D::scrollPathIntoView() | |
| 1082 { | |
| 1083 scrollPathIntoViewInternal(m_path); | |
| 1084 } | |
| 1085 | |
| 1086 void CanvasRenderingContext2D::scrollPathIntoView(Path2D* path2d) | |
| 1087 { | |
| 1088 scrollPathIntoViewInternal(path2d->path()); | |
| 1089 } | |
| 1090 | |
| 1091 void CanvasRenderingContext2D::scrollPathIntoViewInternal(const Path& path) | |
| 1092 { | |
| 1093 RenderObject* renderer = canvas()->renderer(); | |
| 1094 RenderBox* renderBox = canvas()->renderBox(); | |
| 1095 if (!renderer || !renderBox || !state().m_invertibleCTM || path.isEmpty()) | |
| 1096 return; | |
| 1097 | |
| 1098 canvas()->document().updateLayout(); | |
| 1099 | |
| 1100 // Apply transformation and get the bounding rect | |
| 1101 Path transformedPath = path; | |
| 1102 transformedPath.transform(state().m_transform); | |
| 1103 FloatRect boundingRect = transformedPath.boundingRect(); | |
| 1104 | |
| 1105 // Offset by the canvas rect | |
| 1106 LayoutRect pathRect(boundingRect); | |
| 1107 IntRect canvasRect = renderBox->absoluteContentBox(); | |
| 1108 pathRect.move(canvasRect.x(), canvasRect.y()); | |
| 1109 | |
| 1110 renderer->scrollRectToVisible( | |
| 1111 pathRect, ScrollAlignment::alignCenterAlways, ScrollAlignment::alignTopA
lways); | |
| 1112 | |
| 1113 // TODO: should implement "inform the user" that the caret and/or | |
| 1114 // selection the specified rectangle of the canvas. See http://crbug.com/357
987 | |
| 1115 } | |
| 1116 | |
| 1117 void CanvasRenderingContext2D::clearRect(float x, float y, float width, float he
ight) | 1081 void CanvasRenderingContext2D::clearRect(float x, float y, float width, float he
ight) |
| 1118 { | 1082 { |
| 1119 if (!validateRectForCanvas(x, y, width, height)) | 1083 if (!validateRectForCanvas(x, y, width, height)) |
| 1120 return; | 1084 return; |
| 1121 GraphicsContext* context = drawingContext(); | 1085 GraphicsContext* context = drawingContext(); |
| 1122 if (!context) | 1086 if (!context) |
| 1123 return; | 1087 return; |
| 1124 if (!state().m_invertibleCTM) | 1088 if (!state().m_invertibleCTM) |
| 1125 return; | 1089 return; |
| 1126 FloatRect rect(x, y, width, height); | 1090 FloatRect rect(x, y, width, height); |
| (...skipping 1117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2244 | 2208 |
| 2245 unsigned CanvasRenderingContext2D::hitRegionsCount() const | 2209 unsigned CanvasRenderingContext2D::hitRegionsCount() const |
| 2246 { | 2210 { |
| 2247 if (m_hitRegionManager) | 2211 if (m_hitRegionManager) |
| 2248 return m_hitRegionManager->getHitRegionsCount(); | 2212 return m_hitRegionManager->getHitRegionsCount(); |
| 2249 | 2213 |
| 2250 return 0; | 2214 return 0; |
| 2251 } | 2215 } |
| 2252 | 2216 |
| 2253 } // namespace blink | 2217 } // namespace blink |
| OLD | NEW |