diff --git a/src/share/classes/java/awt/Container.java b/src/share/classes/java/awt/Container.java index 4f51dabce8ab0db33114209fdceaa39176c9e598..e3372409c0689ec324cc812f19c60799a1743e32 100644 --- a/src/share/classes/java/awt/Container.java +++ b/src/share/classes/java/awt/Container.java @@ -4111,16 +4111,16 @@ public class Container extends Component { mixingLog.fine("this = " + this); } - if (!isMixingNeeded()) { - return; - } - boolean isLightweight = isLightweight(); if (isLightweight && isRecursivelyVisibleUpToHeavyweightContainer()) { recursiveShowHeavyweightChildren(); } + if (!isMixingNeeded()) { + return; + } + if (!isLightweight || (isLightweight && hasHeavyweightDescendants())) { recursiveApplyCurrentShape(); }