void WebPopupMenuProxyWin::invalidateItem(int index) { if (!m_popup) return; IntRect damageRect(clientRect()); damageRect.setY(m_itemHeight * (index - m_scrollOffset)); damageRect.setHeight(m_itemHeight); if (m_scrollbar) damageRect.setWidth(damageRect.width() - m_scrollbar->frameRect().width()); RECT r = damageRect; ::InvalidateRect(m_popup, &r, TRUE); }
void PopupMenu::invalidateItem(int index) { if (!m_popup) return; IntRect damageRect(clientRect()); damageRect.setY(m_itemHeight * (index - m_scrollOffset)); damageRect.setHeight(m_itemHeight); if (m_scrollBar) damageRect.setWidth(damageRect.width() - m_scrollBar->frameGeometry().width()); IntRect r = damageRect; //::InvalidateRect(m_popup, &r, TRUE); }
nsresult nsIFrame::Redraw(nsBoxLayoutState& aState, const nsRect* aDamageRect, PRBool aImmediate) { if (aState.PaintingDisabled()) return NS_OK; nsRect damageRect(0,0,0,0); if (aDamageRect) damageRect = *aDamageRect; else damageRect = GetOverflowRect(); InvalidateWithFlags(damageRect, aImmediate ? INVALIDATE_IMMEDIATE : 0); return NS_OK; }
void CompositeWindow::addDamageRect (const CompRect &rect) { if (priv->cScreen->damageMask () & COMPOSITE_SCREEN_DAMAGE_ALL_MASK) return; if (!damageRect (false, rect)) { int x, y; x = rect.x (); y = rect.y (); const CompWindow::Geometry &geom = priv->window->geometry (); x += geom.x () + geom.border (); y += geom.y () + geom.border (); priv->cScreen->damageRegion (CompRegion (CompRect (x, y, rect.width (), rect.height ()))); } }