diff --git a/src/share/classes/javax/swing/plaf/nimbus/skin.laf b/src/share/classes/javax/swing/plaf/nimbus/skin.laf index b44da311e2bd1f20807f06724db891538b20eed4..15532781cf22f2360d81511a71a5842048f366c9 100644 --- a/src/share/classes/javax/swing/plaf/nimbus/skin.laf +++ b/src/share/classes/javax/swing/plaf/nimbus/skin.laf @@ -14824,7 +14824,9 @@ false NO_CACHING - + + + diff --git a/src/share/classes/javax/swing/plaf/synth/SynthGraphicsUtils.java b/src/share/classes/javax/swing/plaf/synth/SynthGraphicsUtils.java index a8ec7728a6421134687caf0a109b19da3ce7e714..c775a4b18b91d9e6444d070cfbe5b5c836b1542b 100644 --- a/src/share/classes/javax/swing/plaf/synth/SynthGraphicsUtils.java +++ b/src/share/classes/javax/swing/plaf/synth/SynthGraphicsUtils.java @@ -475,11 +475,11 @@ public class SynthGraphicsUtils { return result; } - static void applyInsets(Rectangle rect, Insets insets) { + static void applyInsets(Rectangle rect, Insets insets, boolean leftToRight) { if (insets != null) { - rect.x += insets.left; + rect.x += (leftToRight ? insets.left : insets.right); rect.y += insets.top; - rect.width -= (insets.right + rect.x); + rect.width -= (leftToRight ? insets.right : insets.left) + rect.x; rect.height -= (insets.bottom + rect.y); } } @@ -492,12 +492,12 @@ public class SynthGraphicsUtils { g.setFont(style.getFont(context)); Rectangle viewRect = new Rectangle(0, 0, mi.getWidth(), mi.getHeight()); - applyInsets(viewRect, mi.getInsets()); + boolean leftToRight = SynthLookAndFeel.isLeftToRight(mi); + applyInsets(viewRect, mi.getInsets(), leftToRight); SynthMenuItemLayoutHelper lh = new SynthMenuItemLayoutHelper( - context, accContext, mi, checkIcon, - arrowIcon, viewRect, defaultTextIconGap, acceleratorDelimiter, - SynthLookAndFeel.isLeftToRight(mi), + context, accContext, mi, checkIcon, arrowIcon, viewRect, + defaultTextIconGap, acceleratorDelimiter, leftToRight, MenuItemLayoutHelper.useCheckAndArrow(mi), propertyPrefix); MenuItemLayoutHelper.LayoutResult lr = lh.layoutMenuItem();