<Swing Dev> [10] RFR JDK-8178025:HiDPI with non-integer scale factor - SPANs in HTML are rendered overlapping each other

Prasanta Sadhukhan prasanta.sadhukhan at oracle.com
Fri Oct 27 05:20:13 UTC 2017



On 10/23/2017 11:53 AM, Prasanta Sadhukhan wrote:
>
>
> On 10/19/2017 3:42 PM, Prasanta Sadhukhan wrote:
>>
>>
>> On 10/19/2017 3:49 AM, Sergey Bylokhov wrote:
>>> On 17/10/2017 03:48, Prasanta Sadhukhan wrote:
>>>> It seems for JLabel, Component.updateGraphicsData() with proper 
>>>> GraphicsConfiguraiton is never called which it does for 
>>>> JTextComponent or JDialog. Do you know why? Because of this, 
>>>> correct FRC is not created.
>>>> I am not sure what else I can do to create correct FRC.
>>>
>>> But at some point we will get a correct GraphicsConfiguraiton for a 
>>> component, right? It should be called for the window and child when 
>>> we show the window on the screen, when we move the window to another 
>>> screen, etc.
>>>
>>>
>> Yes, it seems to be called when JLabel is added to JFrame but not 
>> before.
>> Span is calculated in GlyphPainter1.getSpan() which is called when 
>> JLabel is created and
>> as it seems, not when JLabel is added to JFrame (which is when we get 
>> the correct graphics configuration and therefore correct transform).
>>
>> So, we need to make sure spans are recalculated when the JLabel is 
>> added to frame, which is what modified webrev does by calling 
>> JLabel.updateUI()
>> http://cr.openjdk.java.net/~psadhukhan/8178025/webrev.01/
>>
> Modified webrev to only update html renderer when JLabel is added to 
> frame by listening to property "ancestor" which implies component is 
> added/made visible, at which point correct graphics configuration is set.
> http://cr.openjdk.java.net/~psadhukhan/8178025/webrev.02/
>
Any comments about this fix? Is it ok to commit?
> Regards
> Prasanta
>> Regards
>> Prasana
>>
>




More information about the swing-dev mailing list