private boolean needsRepaintAfterBlit(){
  Component heavyParent=getParent();
  while (heavyParent != null && heavyParent.isLightweight()) {
    heavyParent=heavyParent.getParent();
  }
  if (heavyParent != null) {
    ComponentPeer peer=heavyParent.getPeer();
    if (peer != null && peer.canDetermineObscurity() && !peer.isObscured()) {
      return false;
    }
  }
  return true;
}

private boolean needsRepaintAfterBlit ( ) { Component heavyParent = getParent ( ) ; while ( heavyParent != null && heavyParent . isLightweight ( ) ) { heavyParent = heavyParent . getParent ( ) ; } if ( heavyParent != null ) { ComponentPeer peer = heavyParent . getPeer ( ) ; if ( peer != null && peer . canDetermineObscurity ( ) && ! peer . isObscured ( ) ) { return false ; } } return true ; }
returns true if the component needs to be completely repainted after a blit and a paint is received .
