void (final @NotNull BalloonImpl balloon) { if (balloon.myLayeredPane == null || balloon.component == null) return; Insets shadow = balloon.component.getInsets(); Dimension prefSize = balloon.component.getPreferredSize(); JBInsets.removeFrom(prefSize, shadow); Rectangle bounds = getUpdatedBounds(balloon, prefSize, shadow); if (balloon.myShadowBorderProvider == null && balloon.myForcedBounds != null) { bounds = new Rectangle(getShiftedPoint(bounds.getLocation(), balloon.getShadowBorderInsets()), bounds.getSize()); } balloon.component._setBounds(bounds); }