rootConnectorTracker.markAllComponentsDirty();
- dirtyVisibleConnectors.addAll(rootConnectorTracker
- .getDirtyComponents());
-
// Reset sent locales
locales = null;
requireLocale(application.getLocale().toString());
-
- } else {
- // TODO second list/stack for those whose state needs to be sent?
- dirtyVisibleConnectors
- .addAll(getDirtyVisibleComponents(rootConnectorTracker));
}
+ dirtyVisibleConnectors
+ .addAll(getDirtyVisibleComponents(rootConnectorTracker));
+
System.out.println("* Found " + dirtyVisibleConnectors.size()
+ " dirty connectors to paint");
rootConnectorTracker.markAllComponentsClean();
* if the paint operation failed.
*/
public void paint(PaintTarget target) throws PaintException {
+ // Only paint content of visible components.
if (!isVisibleInContext()) {
return;
}
target.addAttribute("deferred", true);
} else {
// Paint the contents of the component
+ paintContent(target);
- // Only paint content of visible components.
- if (isVisibleInContext()) {
-
- paintContent(target);
-
- final ErrorMessage error = getErrorMessage();
- if (error != null) {
- error.paint(target);
- }
- } else {
- target.addAttribute("invisible", true);
+ final ErrorMessage error = getErrorMessage();
+ if (error != null) {
+ error.paint(target);
}
}
target.endPaintable(this);
}
p = p.getParent();
}
+ if (getParent() != null && !getParent().isComponentVisible(this)) {
+ return false;
+ }
+
// All parents visible, return this state
return isVisible();
}