Bug 103081 - [EFL][WK2] Mouse over on images on Google search shows artifacts
Summary: [EFL][WK2] Mouse over on images on Google search shows artifacts
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit EFL (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on: 101911
Blocks: 103105
  Show dependency treegraph
 
Reported: 2012-11-22 10:02 PST by Kenneth Rohde Christiansen
Modified: 2012-11-26 17:05 PST (History)
11 users (show)

See Also:


Attachments
The issue (162.05 KB, image/png)
2012-11-22 10:03 PST, Kenneth Rohde Christiansen
no flags Details
Test case (5.02 KB, text/html)
2012-11-26 03:57 PST, Kenneth Rohde Christiansen
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kenneth Rohde Christiansen 2012-11-22 10:02:14 PST
SSIA
Comment 1 Kenneth Rohde Christiansen 2012-11-22 10:03:26 PST
Created attachment 175690 [details]
The issue
Comment 2 Thiago Marcos P. Santos 2012-11-22 11:56:43 PST
Do you see the same issue on the Qt minibrowser?
Comment 3 Kenneth Rohde Christiansen 2012-11-22 11:58:02 PST
(In reply to comment #2)
> Do you see the same issue on the Qt minibrowser?

I don't have it buildable right now. You need to move over at least two images for this issue to show
Comment 4 Kalyan 2012-11-23 08:40:13 PST
(In reply to comment #1)
> Created an attachment (id=175690) [details]
> The issue

The problem seems to be as follows:

We always seem to draw two layers being on top of each other. The first time you hover on a image the background is like a white layer. From there on the background is always the previous image (Atleast most of the times). I tried it on Firefox and chrome, I don't see any two layers there.
Comment 5 Kalyan 2012-11-23 09:28:57 PST
The following error is shown in command prompt when ever I hover over an image:

elm_label.c:400 elm_label_add() could not add 0x9859f68 as sub object of 0x91a1770

Any thoughts on why we might be getting this??
Comment 6 Chris Dumez 2012-11-23 09:45:07 PST
(In reply to comment #5)
> The following error is shown in command prompt when ever I hover over an image:
> 
> elm_label.c:400 elm_label_add() could not add 0x9859f68 as sub object of 0x91a1770
> 
> Any thoughts on why we might be getting this??

Yes, we know about this warning. It is caused by the tooltip code (printed every time we show a tooltip). However, since tooltips seem to show fine, we haven't really looked into it yet.
Comment 7 Kenneth Rohde Christiansen 2012-11-26 02:18:17 PST
(In reply to comment #4)
> (In reply to comment #1)
> > Created an attachment (id=175690) [details] [details]
> > The issue
> 
> The problem seems to be as follows:
> 
> We always seem to draw two layers being on top of each other. The first time you hover on a image the background is like a white layer. From there on the background is always the previous image (Atleast most of the times). I tried it on Firefox and chrome, I don't see any two layers there.

Actually it seems to create a layer and immediately destroy it

hover:
create layer 18
delete layer 18
create layer 19
unhover:
delete layer 19
Comment 8 Kenneth Rohde Christiansen 2012-11-26 03:57:47 PST
Created attachment 175962 [details]
Test case

This just adds the blurry border like on google, on hover and removed it on unhover. It is easy to see that resources are being reused.
Comment 9 Kenneth Rohde Christiansen 2012-11-26 04:54:20 PST
Funny fact, if I resize the window to create more content tiles (use WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS=1 for debugging) then the texture is reset
Comment 10 Kenneth Rohde Christiansen 2012-11-26 04:56:19 PST
Same test, make the window smaller than one tile, then resize it to at least 3 tiles in width... the 3rd tile in width is black, until scroll or hover on the image
Comment 11 Kenneth Rohde Christiansen 2012-11-26 09:32:52 PST
This bugs goes away every 3 seconds due to 

Source/WebKit2/WebProcess/WebPage/UpdateAtlas.h 

59     bool isInactive() const
60     {
61         const double inactiveSecondsTolerance = 3;
62         return m_inactivityInSeconds > inactiveSecondsTolerance;
63     }

So it definitely has something to do with the SharedSurface in WK2
Comment 12 Kenneth Rohde Christiansen 2012-11-26 10:00:40 PST
Ok, the bug is that we fail to clear the update atlas area when we will with transparent as the cairo context doesn't support that

https://bugs.webkit.org/show_bug.cgi?id=101911
Comment 13 Kenneth Rohde Christiansen 2012-11-26 15:18:45 PST
Solved by 101911
Comment 14 Kalyan 2012-11-26 17:05:02 PST
(In reply to comment #8)
> Created an attachment (id=175962) [details]
> Test case
> 
> This just adds the blurry border like on google, on hover and removed it on unhover. It is easy to see that resources are being reused.

Note:

We are using Drop Shadow with these images. I haven't checked the blur radius though. 

Anyway its fixed :)