This covers getting the basics working. Stuff still needs to update when attributes change.
Created attachment 32092 [details] Patch
Comment on attachment 32092 [details] Patch id HTMLDataGridColElement::removedFromTree(bool deep) > +{ > + HTMLElement::removedFromTree(deep); > + if (datagrid() && datagrid()->dataSource()->isDOMDataGridDataSource()) { > + HTMLDataGridElement* grid = findDatagridAncestor(); > + if (!grid && column()) { > + datagrid()->columns()->remove(column()); > + m_datagrid = 0; > + } > + } > +} I find this a little confusing. What is the difference between datagrid() and the result of findDatagridAncestor().I would expect them to be the same. r=me!
This is kind of like forms.... how stuff is cached in m_form, but you aren't really leaving the form unless you are truly disconnected from it in the ancestor chain... so you have to have a separate find method to test this out.
Fixed in r45397.