void RenderLayerModelObject::createLayer(LayerType type) { ASSERT(!m_layer); m_layer = adoptPtr(new RenderLayer(this, type)); setHasLayer(true); m_layer->insertOnlyThisLayer(); }
RenderView::RenderView(Node* node, FrameView* view) : RenderBlock(node) , m_frameView(view) , m_selectionStart(0) , m_selectionEnd(0) , m_selectionStartPos(-1) , m_selectionEndPos(-1) , m_printImages(true) , m_maximalOutlineSize(0) , m_layoutState(0) , m_layoutStateDisableCount(0) { // Clear our anonymous bit, set because RenderObject assumes // any renderer with document as the node is anonymous. setIsAnonymous(false); // init RenderObject attributes setInline(false); m_minPrefWidth = 0; m_maxPrefWidth = 0; setPrefWidthsDirty(true, false); setPositioned(true); // to 0,0 :) // Create a new root layer for our layer hierarchy. m_layer = new (node->document()->renderArena()) RenderLayer(this); setHasLayer(true); }
void RenderLayerModelObject::createLayer() { ASSERT(!m_layer); m_layer = std::make_unique<RenderLayer>(*this); setHasLayer(true); m_layer->insertOnlyThisLayer(); }
void RenderLayerModelObject::ensureLayer() { if (m_layer) return; m_layer = new (renderArena()) RenderLayer(this); setHasLayer(true); m_layer->insertOnlyThisLayer(); }
void RenderWidget::destroy() { // We can't call the base class's destroy because we don't // want to unconditionally delete ourselves (we're ref-counted). // So the code below includes copied and pasted contents of // both RenderBox::destroy() and RenderObject::destroy(). // Fix originally made for <rdar://problem/4228818>. animation()->cancelAnimations(this); if (RenderView* v = view()) v->removeWidget(this); if (AXObjectCache::accessibilityEnabled()) { document()->axObjectCache()->childrenChanged(this->parent()); document()->axObjectCache()->remove(this); } remove(); if (m_widget) { if (m_frameView) m_frameView->removeChild(m_widget.get()); widgetRendererMap().remove(m_widget.get()); } // removes from override size map if (hasOverrideSize()) setOverrideSize(-1); if (style() && (style()->height().isPercent() || style()->minHeight().isPercent() || style()->maxHeight().isPercent())) RenderBlock::removePercentHeightDescendant(this); if (hasLayer()) { layer()->clearClipRects(); setHasLayer(false); destroyLayer(); } // Grab the arena from node()->document()->renderArena() before clearing the node pointer. // Clear the node before deref-ing, as this may be deleted when deref is called. RenderArena* arena = renderArena(); setNode(0); deref(arena); }
void RenderLayerModelObject::destroyLayer() { setHasLayer(false); m_layer = nullptr; }