Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(72)

Side by Side Diff: third_party/WebKit/Source/core/layout/LayoutGeometryMap.cpp

Issue 2733593002: Text control elements should contain all (shadow DOM) children. (Closed)
Patch Set: Improve documentation. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2012 Apple 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 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after
189 ASSERT(m_mapping.isEmpty() || 189 ASSERT(m_mapping.isEmpty() ||
190 isTopmostLayoutView(m_mapping[0].m_layoutObject)); 190 isTopmostLayoutView(m_mapping[0].m_layoutObject));
191 } 191 }
192 192
193 static bool canMapBetweenLayoutObjects(const LayoutObject& layoutObject, 193 static bool canMapBetweenLayoutObjects(const LayoutObject& layoutObject,
194 const LayoutObject& ancestor) { 194 const LayoutObject& ancestor) {
195 for (const LayoutObject* current = &layoutObject;; 195 for (const LayoutObject* current = &layoutObject;;
196 current = current->parent()) { 196 current = current->parent()) {
197 const ComputedStyle& style = current->styleRef(); 197 const ComputedStyle& style = current->styleRef();
198 if (style.position() == EPosition::kFixed || 198 if (style.position() == EPosition::kFixed ||
199 style.isFlippedBlocksWritingMode()) 199 style.isFlippedBlocksWritingMode() ||
200 style.hasTransformRelatedProperty())
200 return false; 201 return false;
201 202
202 if (current->style()->canContainFixedPositionObjects() || 203 if (current->canContainFixedPositionObjects() ||
203 current->isLayoutFlowThread() || current->isSVGRoot()) 204 current->isLayoutFlowThread() || current->isSVGRoot())
204 return false; 205 return false;
205 206
206 if (current == &ancestor) 207 if (current == &ancestor)
207 break; 208 break;
208 209
209 if (current->isFloatingWithNonContainingBlockParent()) 210 if (current->isFloatingWithNonContainingBlockParent())
210 return false; 211 return false;
211 } 212 }
212 213
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
373 // If we're not working with multiple LayoutViews, then any view is considered 374 // If we're not working with multiple LayoutViews, then any view is considered
374 // "topmost" (to preserve original behavior). 375 // "topmost" (to preserve original behavior).
375 if (!(m_mapCoordinatesFlags & TraverseDocumentBoundaries)) 376 if (!(m_mapCoordinatesFlags & TraverseDocumentBoundaries))
376 return true; 377 return true;
377 378
378 return layoutObject->frame()->isMainFrame(); 379 return layoutObject->frame()->isMainFrame();
379 } 380 }
380 #endif 381 #endif
381 382
382 } // namespace blink 383 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698