[Webkit-unassigned] [Bug 101857] Updating mouse cursor on style changes without emitting fake mousemove event

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Mar 5 11:40:10 PST 2013


https://bugs.webkit.org/show_bug.cgi?id=101857





--- Comment #114 from Aivo Paas <aivopaas at gmail.com>  2013-03-05 11:42:32 PST ---
(In reply to comment #113)
> Calling this "internal" makes it sounds like the timer repeats. It would be better as "delay".

I'd say it's still interval, because it doesn't get infinitely delayed, but cursor will indeed be changed with that interval when requested frequently enough.

> > Source/WebCore/page/EventHandler.cpp:1254
> > +    HitTestRequest request(HitTestRequest::ReadOnly);
> > +    HitTestResult result(view->windowToContents(m_lastKnownMousePosition));
> > +    m_frame->document()->renderView()->hitTest(request, result);
> 
> I think you should call  m_frame->document()->updateLayoutIgnorePendingStylesheets(); before this code. Layout can be delayed on timers, and you need to ensure that layout is up to date before hit testing.
> 
> Alternatively (perhaps preferably), you could just bail if FrameView::needsLayout() returns true, butI wonder if that would result in cases where the cursor update would be postponed forever.

Will add m_frame->document()->updateLayoutIgnorePendingStylesheets();
Bailing would be practically the same as doing nothing about it, because there won't be another EventHandler::cupdateCursor() call for the same same change and another change may never come.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list