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

Unified Diff: third_party/WebKit/Source/core/dom/PseudoElement.cpp

Issue 2107233002: Reland "Implement FullScreen using top layer." (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: new untested DCHECK Created 4 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/dom/PseudoElement.cpp
diff --git a/third_party/WebKit/Source/core/dom/PseudoElement.cpp b/third_party/WebKit/Source/core/dom/PseudoElement.cpp
index 1672b8600b09a7c432d66599f8dce9bbf0f2a27a..424e89ef1ae320566eedb4c4c705890a6fa2b75a 100644
--- a/third_party/WebKit/Source/core/dom/PseudoElement.cpp
+++ b/third_party/WebKit/Source/core/dom/PseudoElement.cpp
@@ -29,6 +29,7 @@
#include "core/dom/FirstLetterPseudoElement.h"
#include "core/frame/UseCounter.h"
#include "core/inspector/InspectorInstrumentation.h"
+#include "core/layout/GeneratedChildren.h"
#include "core/layout/LayoutObject.h"
#include "core/layout/LayoutQuote.h"
#include "core/style/ContentData.h"
@@ -124,6 +125,13 @@ void PseudoElement::attach(const AttachContext& context)
if (!layoutObject)
return;
+ // This is to ensure that bypassing the canHaveGeneratedChildren check in
+ // StyleResolver::createPseudoElementIfNeeded does not result in the
+ // backdrop pseudo element's layout object becoming the child of a layout
+ // object that doesn't allow children.
+ DCHECK(layoutObject->parent());
+ DCHECK(canHaveGeneratedChildren(*layoutObject->parent()));
+
ComputedStyle& style = layoutObject->mutableStyleRef();
if (style.styleType() != PseudoIdBefore && style.styleType() != PseudoIdAfter)
return;
« no previous file with comments | « third_party/WebKit/Source/core/dom/LayoutTreeBuilder.cpp ('k') | third_party/WebKit/Source/core/frame/FrameView.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698