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

Reply via email to