Show
Ignore:
Timestamp:
08/04/08 12:23:14 (5 months ago)
Author:
mbensi
Message:

merge with webkit revision 35534

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/WebCore/page/EventHandler.cpp

    r424 r429  
    599599        } 
    600600#if PLATFORM(WIN) 
     601        setPanScrollCursor(); 
    601602        r->panScroll(m_panScrollStartPos); 
    602603#endif 
    603604    } 
     605} 
     606 
     607void EventHandler::setPanScrollCursor() 
     608{ 
     609    // At the original click location we draw a 4 arrowed icon. Over this icon there won't be any scroll 
     610    // So we don't want to change the cursor over this area 
     611    const int noScrollRadius = 9; 
     612    bool east = m_panScrollStartPos.x() < (m_currentMousePosition.x() - noScrollRadius); 
     613    bool west = m_panScrollStartPos.x() > (m_currentMousePosition.x() + noScrollRadius); 
     614    bool north = m_panScrollStartPos.y() > (m_currentMousePosition.y() + noScrollRadius); 
     615    bool south = m_panScrollStartPos.y() < (m_currentMousePosition.y() - noScrollRadius); 
     616          
     617    if (north) { 
     618        if (east) 
     619            m_frame->view()->setCursor(northEastPanningCursor()); 
     620        else if (west) 
     621            m_frame->view()->setCursor(northWestPanningCursor()); 
     622        else 
     623            m_frame->view()->setCursor(northPanningCursor()); 
     624    } else if (south) { 
     625        if (east) 
     626            m_frame->view()->setCursor(southEastPanningCursor()); 
     627        else if (west) 
     628            m_frame->view()->setCursor(southWestPanningCursor()); 
     629        else 
     630            m_frame->view()->setCursor(southPanningCursor()); 
     631    } else if (east) 
     632        m_frame->view()->setCursor(eastPanningCursor()); 
     633    else if (west) 
     634        m_frame->view()->setCursor(westPanningCursor()); 
     635    else 
     636        m_frame->view()->setCursor(middlePanningCursor()); 
    604637} 
    605638 
     
    11381171        if (scrollbar && !m_mousePressed) 
    11391172            scrollbar->handleMouseMoveEvent(mouseEvent); // Handle hover effects on platforms that support visual feedback on scrollbar hovering. 
    1140         if ((!m_resizeLayer || !m_resizeLayer->inResizeMode()) && m_frame->view()) 
     1173        if ((!m_resizeLayer || !m_resizeLayer->inResizeMode()) && !m_frame->page()->mainFrame()->eventHandler()->panScrollInProgress() && m_frame->view()) 
    11411174            m_frame->view()->setCursor(selectCursor(mev, scrollbar)); 
    11421175    }