Changeset 23983 in webkit
- Timestamp:
- Jul 4, 2007 3:56:08 AM (17 years ago)
- Location:
- trunk/WebCore
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r23982 r23983 1 2007-07-04 Mitz Pettel <mitz@webkit.org> 2 3 Reviewed by Maciej. 4 5 - fix http://bugs.webkit.org/show_bug.cgi?id=14495 6 REGRESSION: Wrong cursor is displayed during drag and drop when text is selected 7 <rdar://problem/5312384> 8 9 No test possible because DumpRenderTree cannot query the current cursor. 10 11 * page/EventHandler.cpp: 12 (WebCore::EventHandler::selectCursor): Changed into a member function and 13 added that if the last mouse down event could not have started a 14 selection, then the cursor should not change to an I-beam unconditionally. 15 (WebCore::EventHandler::handleMouseMoveEvent): 16 * page/EventHandler.h: 17 1 18 2007-07-04 Holger Hans Peter Freyther <zecke@selfish.org> 2 19 -
trunk/WebCore/page/EventHandler.cpp
r21925 r23983 637 637 } 638 638 639 // FIXME: We should consider making this a member function now that we're passing in more info about the object. 640 static Cursor selectCursor(const MouseEventWithHitTestResults& event, Frame* frame, bool mousePressed, PlatformScrollbar* scrollbar, bool capturingMouseEvents) 639 Cursor EventHandler::selectCursor(const MouseEventWithHitTestResults& event, PlatformScrollbar* scrollbar) 641 640 { 642 641 // During selection, use an I-beam no matter what we're over. 643 642 // If you're capturing mouse events for a particular node, don't treat this as a selection. 644 if (m ousePressed && frame->selectionController()->isCaretOrRange() && !capturingMouseEvents)643 if (m_mousePressed && m_mouseDownMayStartSelect && m_frame->selectionController()->isCaretOrRange() && !m_capturingMouseEventsNode) 645 644 return iBeamCursor(); 646 645 … … 680 679 // If the link is editable, then we need to check the settings to see whether or not the link should be followed 681 680 if (editable) { 682 ASSERT( frame->settings());683 switch( frame->settings()->editableLinkBehavior()) {681 ASSERT(m_frame->settings()); 682 switch(m_frame->settings()->editableLinkBehavior()) { 684 683 default: 685 684 case EditableLinkDefaultBehavior: … … 693 692 694 693 case EditableLinkLiveWhenNotFocused: 695 editableLinkEnabled = nodeIsNotBeingEdited(node, frame) || event.event().shiftKey();694 editableLinkEnabled = nodeIsNotBeingEdited(node, m_frame) || event.event().shiftKey(); 696 695 break; 697 696 … … 706 705 RenderLayer* layer = renderer ? renderer->enclosingLayer() : 0; 707 706 bool inResizer = false; 708 if ( frame->view() && layer && layer->isPointInResizeControl(frame->view()->windowToContents(event.event().pos())))707 if (m_frame->view() && layer && layer->isPointInResizeControl(m_frame->view()->windowToContents(event.event().pos()))) 709 708 inResizer = true; 710 709 if ((editable || (renderer && renderer->isText() && renderer->canSelect())) && !inResizer && !scrollbar) … … 963 962 scrollbar->handleMouseMoveEvent(mouseEvent); // Handle hover effects on platforms that support visual feedback on scrollbar hovering. 964 963 if ((!m_resizeLayer || !m_resizeLayer->inResizeMode()) && m_frame->view()) 965 m_frame->view()->setCursor(selectCursor(mev, m_frame, m_mousePressed, scrollbar, m_capturingMouseEventsNode));964 m_frame->view()->setCursor(selectCursor(mev, scrollbar)); 966 965 } 967 966 -
trunk/WebCore/page/EventHandler.h
r21925 r23983 49 49 class AtomicString; 50 50 class Clipboard; 51 class Cursor; 51 52 class EventTargetNode; 52 53 class Event; … … 188 189 bool handleMouseReleaseEvent(const MouseEventWithHitTestResults&); 189 190 191 Cursor selectCursor(const MouseEventWithHitTestResults&, PlatformScrollbar*); 192 190 193 void hoverTimerFired(Timer<EventHandler>*); 191 194
Note: See TracChangeset
for help on using the changeset viewer.