Changeset 20677 in webkit


Ignore:
Timestamp:
Apr 3, 2007 5:51:55 AM (17 years ago)
Author:
bdash
Message:

2007-04-03 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

  • manual-tests/stale-currentEvent.html: Added.
  • page/EventHandler.cpp: (WebCore::EventHandler::hoverTimerFired): Instead of faking a mouse event, just hit-test the last mouse event coordinates and update for hover state changes. This eliminates the use of currentEvent, which can be a non-mouse event or even a stale event.
Location:
trunk/WebCore
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r20675 r20677  
     12007-04-03  Mitz Pettel  <mitz@webkit.org>
     2
     3        Reviewed by Darin.
     4
     5        - fix http://bugs.webkit.org/show_bug.cgi?id=13218
     6          <rdar://problem/5095977>
     7          Reproducible crash after call to window.close()
     8
     9        * manual-tests/stale-currentEvent.html: Added.
     10        * page/EventHandler.cpp:
     11        (WebCore::EventHandler::hoverTimerFired): Instead of faking a mouse event,
     12        just hit-test the last mouse event coordinates and update for hover state
     13        changes. This eliminates the use of currentEvent, which can be a non-mouse
     14        event or even a stale event.
     15
    1162007-04-02  Adele Peterson  <adele@apple.com>
    217
  • trunk/WebCore/page/EventHandler.cpp

    r20545 r20677  
    12441244{
    12451245    m_hoverTimer.stop();
    1246     prepareMouseEvent(HitTestRequest(false, false, true), PlatformMouseEvent(PlatformMouseEvent::currentEvent));
     1246
     1247    ASSERT(m_frame);
     1248    ASSERT(m_frame->document());
     1249
     1250    if (RenderObject* renderer = m_frame->renderer()) {
     1251        IntPoint documentPoint = m_frame->view()->windowToContents(m_currentMousePosition);
     1252        HitTestResult result(documentPoint);
     1253        renderer->layer()->hitTest(HitTestRequest(false, false, true), result);
     1254        m_frame->document()->updateRendering();
     1255    }
    12471256}
    12481257
Note: See TracChangeset for help on using the changeset viewer.