Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(293)

Side by Side Diff: third_party/WebKit/WebCore/page/EventHandler.cpp

Issue 21184: WebKit merge 40722:40785 (part 1) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 11 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
3 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) 3 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org)
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 607 matching lines...) Expand 10 before | Expand all | Expand 10 after
618 stopAutoscrollTimer(); 618 stopAutoscrollTimer();
619 return; 619 return;
620 } 620 }
621 #if ENABLE(PAN_SCROLLING) 621 #if ENABLE(PAN_SCROLLING)
622 setPanScrollCursor(); 622 setPanScrollCursor();
623 toRenderBox(r)->panScroll(m_panScrollStartPos); 623 toRenderBox(r)->panScroll(m_panScrollStartPos);
624 #endif 624 #endif
625 } 625 }
626 } 626 }
627 627
628 #if ENABLE(PAN_SCROLLING)
628 void EventHandler::setPanScrollCursor() 629 void EventHandler::setPanScrollCursor()
629 { 630 {
630 // At the original click location we draw a 4 arrowed icon. Over this icon t here won't be any scroll 631 // At the original click location we draw a 4 arrowed icon. Over this icon t here won't be any scroll
631 // So we don't want to change the cursor over this area 632 // So we don't want to change the cursor over this area
632 const int noScrollRadius = 9; 633 const int noScrollRadius = 9;
633 bool east = m_panScrollStartPos.x() < (m_currentMousePosition.x() - noScroll Radius); 634 bool east = m_panScrollStartPos.x() < (m_currentMousePosition.x() - noScroll Radius);
634 bool west = m_panScrollStartPos.x() > (m_currentMousePosition.x() + noScroll Radius); 635 bool west = m_panScrollStartPos.x() > (m_currentMousePosition.x() + noScroll Radius);
635 bool north = m_panScrollStartPos.y() > (m_currentMousePosition.y() + noScrol lRadius); 636 bool north = m_panScrollStartPos.y() > (m_currentMousePosition.y() + noScrol lRadius);
636 bool south = m_panScrollStartPos.y() < (m_currentMousePosition.y() - noScrol lRadius); 637 bool south = m_panScrollStartPos.y() < (m_currentMousePosition.y() - noScrol lRadius);
637 638
(...skipping 11 matching lines...) Expand all
649 m_frame->view()->setCursor(southWestPanningCursor()); 650 m_frame->view()->setCursor(southWestPanningCursor());
650 else 651 else
651 m_frame->view()->setCursor(southPanningCursor()); 652 m_frame->view()->setCursor(southPanningCursor());
652 } else if (east) 653 } else if (east)
653 m_frame->view()->setCursor(eastPanningCursor()); 654 m_frame->view()->setCursor(eastPanningCursor());
654 else if (west) 655 else if (west)
655 m_frame->view()->setCursor(westPanningCursor()); 656 m_frame->view()->setCursor(westPanningCursor());
656 else 657 else
657 m_frame->view()->setCursor(middlePanningCursor()); 658 m_frame->view()->setCursor(middlePanningCursor());
658 } 659 }
660 #endif // ENABLE(PAN_SCROLLING)
659 661
660 RenderObject* EventHandler::autoscrollRenderer() const 662 RenderObject* EventHandler::autoscrollRenderer() const
661 { 663 {
662 return m_autoscrollRenderer; 664 return m_autoscrollRenderer;
663 } 665 }
664 666
665 void EventHandler::updateAutoscrollRenderer() 667 void EventHandler::updateAutoscrollRenderer()
666 { 668 {
667 if (!m_autoscrollRenderer) 669 if (!m_autoscrollRenderer)
668 return; 670 return;
(...skipping 896 matching lines...) Expand 10 before | Expand all | Expand 10 after
1565 while (renderer) { 1567 while (renderer) {
1566 node = renderer->element(); 1568 node = renderer->element();
1567 if (node && node->isFocusable()) { 1569 if (node && node->isFocusable()) {
1568 // To fix <rdar://problem/4895428> Can't drag selected ToDo, we don't focus a 1570 // To fix <rdar://problem/4895428> Can't drag selected ToDo, we don't focus a
1569 // node on mouse down if it's selected and inside a focused node . It will be 1571 // node on mouse down if it's selected and inside a focused node . It will be
1570 // focused if the user does a mouseup over it, however, because the mouseup 1572 // focused if the user does a mouseup over it, however, because the mouseup
1571 // will set a selection inside it, which will call setFocuseNode IfNeeded. 1573 // will set a selection inside it, which will call setFocuseNode IfNeeded.
1572 ExceptionCode ec = 0; 1574 ExceptionCode ec = 0;
1573 Node* n = node->isShadowNode() ? node->shadowParentNode() : node ; 1575 Node* n = node->isShadowNode() ? node->shadowParentNode() : node ;
1574 if (m_frame->selection()->isRange() && 1576 if (m_frame->selection()->isRange() &&
1575 m_frame->selection()->toRange()->compareNode(n, ec) == Range ::NODE_INSIDE && 1577 m_frame->selection()->toNormalizedRange()->compareNode(n, ec ) == Range::NODE_INSIDE &&
1576 n->isDescendantOf(m_frame->document()->focusedNode())) 1578 n->isDescendantOf(m_frame->document()->focusedNode()))
1577 return false; 1579 return false;
1578 1580
1579 break; 1581 break;
1580 } 1582 }
1581 1583
1582 renderer = renderer->parent(); 1584 renderer = renderer->parent();
1583 } 1585 }
1584 // If focus shift is blocked, we eat the event. Note we should never cl ear swallowEvent 1586 // If focus shift is blocked, we eat the event. Note we should never cl ear swallowEvent
1585 // if the page already set it (e.g., by canceling default behavior). 1587 // if the page already set it (e.g., by canceling default behavior).
(...skipping 728 matching lines...) Expand 10 before | Expand all | Expand 10 after
2314 } 2316 }
2315 2317
2316 bool EventHandler::passMousePressEventToScrollbar(MouseEventWithHitTestResults& mev, Scrollbar* scrollbar) 2318 bool EventHandler::passMousePressEventToScrollbar(MouseEventWithHitTestResults& mev, Scrollbar* scrollbar)
2317 { 2319 {
2318 if (!scrollbar || !scrollbar->enabled()) 2320 if (!scrollbar || !scrollbar->enabled())
2319 return false; 2321 return false;
2320 return scrollbar->mouseDown(mev.event()); 2322 return scrollbar->mouseDown(mev.event());
2321 } 2323 }
2322 2324
2323 } 2325 }
OLDNEW
« no previous file with comments | « third_party/WebKit/WebCore/page/EventHandler.h ('k') | third_party/WebKit/WebCore/page/Frame.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698