internal override CssBox GetPrincipalBox(CssBox parentCssBox, HtmlHost host) { if (this.CurrentPrincipalBox != null) { return(this.CurrentPrincipalBox); } else { _lazyCreator(parentCssBox.GetInternalRootGfx(), out RenderElement re, out object controller); CssBox wrapper = CustomCssBoxGenerator.CreateWrapper(((HtmlDocument)this.OwnerDocument).Host, controller, re, this.Spec, false); this.SetPrincipalBox(wrapper); return(wrapper); } }
static void InvalidateCssBox(CssBox cssbox) { var rootGfx = cssbox.GetInternalRootGfx(); var rootCssBox = cssbox.GetTopRootCssBox() as RenderElementBridgeCssBox; if (rootCssBox != null) { //---------------------------------------- //TODO: fix here //we not need to update entire HtmlBox //we should update only invalidate area //---------------------------------------- rootCssBox.ContainerElement.InvalidateGraphics(); } }