<Swing Dev> [9] Review request for 8027639: JComboBox's popup leaves tracks after closing

Sergey Bylokhov Sergey.Bylokhov at oracle.com
Mon Nov 7 16:01:55 UTC 2016


On 07.11.16 18:31, Semyon Sadetsky wrote:
>> If it is src-over mean that in the window you will get a composite of
>> colors, which was drawn to the backbuffer and the colors which was
>> drawn in the window(which was drawn by the window itself). And in this
>> case you will get a different results when you paint via backbuffer or
>> when you skip it.
> I did not get this. You've state if JRootPane has own different
> transparent color than it may be painted twice.

I am talking about the color of the window, you said that it is always 
painted.
http://mail.openjdk.java.net/pipermail/swing-dev/2016-October/006854.html
So if it always painted in case of non-opaque windows and you paint it 
to the backbuffer means that you paint it twice, no?

> At first, I'm not sure that JRootPane may have such color. Because we
> only support window translucency if window is non-opaque and having
> non-opaque window with opaque JRootPane seems incorrect usage.

The components can be opaque/non-opaque even if the window is 
opaque/non-opaque. They have a different meaning. For window this means 
that it has a transparent background, for components it means that 
before the component is painted all its containers should be painted first.

> But anyway I don't see the way how the JRootPane transparent color may
> be pained twice. For non-opaque JRootPane it's background color is not
> painted, regardless of transparency. With opaque JRootPane the parent
> window paint() method will not be called and  window background will not
> be painted.
>>
>>>>>>>>   Should the previous composite be restored after the rect filling?
>>>>>>> SRC should be the default composite type.
>>>>>>
>>>>>> default composite type should be srcOver, and it should be restored
>>>>>> before call paintToOffscreen().
>>>>
>>>>
>>>
>>
>>
>


-- 
Best regards, Sergey.



More information about the swing-dev mailing list