Note that you shouldn't replace the clip, but should apply the new clip on top of the old. This is necessary if the old clip is smaller than new.
----- sergey.bylok...@oracle.com wrote: > Hi, Prasanta. > > BasicTabbedPaneUI.paintIcon() as well as > SynthGraphicsUtils.paintText() are called in SynthTabbedPaneUI. > - paintText() at line 681 > - paintIcon() at line 634 > Both methods have a rectangle as a parameter, but it is ignored. > > ----- prasanta.sadhuk...@oracle.com wrote: > > > Hi Sergey, > > > > I could get your concern for paintText() but could not find > > paintIcon() > > in SynthGraphicsUtils() so not sure how icon drawing contradicts > > spec. > > Modified webrev: > > http://cr.openjdk.java.net/~psadhukhan/8075918/webrev.01/ > > > > Also, if we are not calling SwingUtilities2.clipStringIfNecessary() > > then > > we are not going to get "..." at the end which this test expects. > But > > I > > could not find anything in spec, that mandates ending with "..." for > > > long tab outside > > tab bounds. If source change is ok, I guess we then need to modify > the > > > > html file modifying the expected result for NimbusL&F. > > > > Regards > > Prasanta > > On 5/25/2017 3:11 AM, Sergey Bylokhov wrote: > > > Hi, Prasanta. > > > Please take a look to my comments at: > > > > > > http://mail.openjdk.java.net/pipermail/swing-dev/2016-November/006931.html > > > > > > http://mail.openjdk.java.net/pipermail/swing-dev/2016-November/006902.html > > > > > > The two methods paintText() and paintIcon() are contradict the > spec > > and draw the text and icons outside of the tab. > > > > > > ----- prasanta.sadhuk...@oracle.com wrote: > > > > > >> Hi All, > > >> > > >> Please review a fix for an issue where long Tab titiles are not > > >> clipped > > >> with dots at end for NimbusLookAndFeel L&F. > > >> Other L&Fs works ok. > > >> > > >> Issue was in SynthTabbedPaneUI#paintTab(), the title is not > > clipped > > >> but > > >> passed to paintText() as it is received. > > >> Other L&F such as Metal, Motif, Windows which uses > > >> BasicTabbedPaneUI#paintTab(), the title is clipped > > >> > > > http://hg.openjdk.java.net/jdk9/client/jdk/file/e748c6a2d2e6/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTabbedPaneUI.java#l950 > > >> before it is passed to paintText(). > > >> > > >> Proposed fix is to do the same for SynthTabbedPaneUI#paintTab(). > > >> > > >> Bug: https://bugs.openjdk.java.net/browse/JDK-8075918 > > >> webrev: > http://cr.openjdk.java.net/~psadhukhan/8075918/webrev.00/ > > >> > > >> Regards > > >> Prasanta