Bug 73738

Summary: Question related with HitTest.
Product: WebKit Reporter: KwangHyuk <hyuki.kim>
Component: UI EventsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED WORKSFORME    
Severity: Normal CC: simon.fraser
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Simple test page for this issue.
none
Include style into html page. none

KwangHyuk
Reported 2011-12-02 23:44:00 PST
Created attachment 117747 [details] Simple test page for this issue. I tested attached example page by use safari and chrome browser. - chrome : Ver 15.0.874.121 m (window machine) - safari : Ver 5.1.2 (window machine) But, they don't seem to support successful hit test for any region which overlapping with both text label ("Put Your Password") and input field. In fact, they seem to detect only label when finger is on that region. So, it doesn't provide context popup includes paste item which input related node can have. According to my initial investigation through source code, It seems to stop doing HitTest as soon as it meets label if 3d transform related property is not specified since label is positioned on the separate RenderLayer. As a result, It doesn't seem to do hit test for input field no longer. So, I would like to know whether this is a normal webkit's policy for the hit test. If it will be a intended operation, I would like to know the thing that application should do additionally in order to detect this case as a hit case which hit by touch. Will it be fine if application check focused node too in addition to HitTest via WebCore ? I am sincerely hoping to get any good idea for this. :)
Attachments
Simple test page for this issue. (794 bytes, application/octet-stream)
2011-12-02 23:44 PST, KwangHyuk
no flags
Include style into html page. (1.09 KB, text/html)
2011-12-05 17:09 PST, KwangHyuk
no flags
Simon Fraser (smfr)
Comment 1 2011-12-05 08:47:51 PST
Can you attach an HTML-only testcase?
KwangHyuk
Comment 2 2011-12-05 17:06:29 PST
(In reply to comment #1) > Can you attach an HTML-only testcase? Sure. Thank you very much for your attention. :)
KwangHyuk
Comment 3 2011-12-05 17:09:59 PST
Created attachment 117959 [details] Include style into html page.
Simon Fraser (smfr)
Comment 4 2011-12-05 17:16:00 PST
The page works fine for me on Mac in a nightly build. Why don't you use the placeholder attribute for the grayed out text?
KwangHyuk
Comment 5 2011-12-05 17:22:13 PST
(In reply to comment #4) > The page works fine for me on Mac in a nightly build. > > Why don't you use the placeholder attribute for the grayed out text? Hi, Simon. But the attached file is just generated according to twitter's first page after the mobile authentication. I would like to know whether attached page provides the contextual popup over the grayed out text without placeholder attribute ?
Simon Fraser (smfr)
Comment 6 2011-12-05 17:25:30 PST
The hit testing looks correct to me. The <label> is position: absolute, so paints (and hit-tests) in front of the form field.
KwangHyuk
Comment 7 2011-12-05 17:31:57 PST
(In reply to comment #6) > The hit testing looks correct to me. The <label> is position: absolute, so paints (and hit-tests) in front of the form field. Yes, this is the thing that I have found after the code review. :) In fact, my question is why webkit is not considering focused node when it does hit testing. IMO, If input field has focus and event occurs over input field area, user may want to get a hit test result for the input field although label is covered some of input field area. What do you think of it ?
Simon Fraser (smfr)
Comment 8 2011-12-06 10:05:50 PST
I disagree. Hit testing shouldn't be affected by focus.
Note You need to log in before you can comment on or make changes to this bug.