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

Side by Side Diff: webkit/glue/webview_impl.cc

Issue 173414: On a middle click, check if the mouse is over a scrollbar before pasting the ... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 4 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2007-2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2007-2009 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "config.h" 5 #include "config.h"
6 #include "build/build_config.h" 6 #include "build/build_config.h"
7 7
8 #include "base/compiler_specific.h" 8 #include "base/compiler_specific.h"
9 MSVC_PUSH_WARNING_LEVEL(0); 9 MSVC_PUSH_WARNING_LEVEL(0);
10 #include "CSSStyleSelector.h" 10 #include "CSSStyleSelector.h"
(...skipping 531 matching lines...) Expand 10 before | Expand all | Expand 10 after
542 // Firefox: pastes on up. 542 // Firefox: pastes on up.
543 // Midori: couldn't paste at all with 0.1.2 543 // Midori: couldn't paste at all with 0.1.2
544 // 544 //
545 // There is something of a webcompat angle to this well, as highlighted by 545 // There is something of a webcompat angle to this well, as highlighted by
546 // crbug.com/14608. Pages can clear text boxes 'onclick' and, if we paste on 546 // crbug.com/14608. Pages can clear text boxes 'onclick' and, if we paste on
547 // down then the text is pasted just before the onclick handler runs and 547 // down then the text is pasted just before the onclick handler runs and
548 // clears the text box. So it's important this happens after the 548 // clears the text box. So it's important this happens after the
549 // handleMouseReleaseEvent() earlier in this function 549 // handleMouseReleaseEvent() earlier in this function
550 if (event.button == WebMouseEvent::ButtonMiddle) { 550 if (event.button == WebMouseEvent::ButtonMiddle) {
551 Frame* focused = GetFocusedWebCoreFrame(); 551 Frame* focused = GetFocusedWebCoreFrame();
552 if (focused) { 552 IntPoint click_point(last_mouse_down_point_.x, last_mouse_down_point_.y);
553 HitTestResult hit_test_result =
554 focused->eventHandler()->hitTestResultAtPoint(click_point, false, false,
555 ShouldHitTestScrollbars);
556 if (!hit_test_result.scrollbar() && focused) {
553 Editor* editor = focused->editor(); 557 Editor* editor = focused->editor();
554 if (editor && editor->canEdit()) 558 if (editor && editor->canEdit())
555 delegate_->PasteFromSelectionClipboard(); 559 delegate_->PasteFromSelectionClipboard();
556 } 560 }
557 } 561 }
558 #endif 562 #endif
559 563
560 mouseCaptureLost(); 564 mouseCaptureLost();
561 main_frame()->frame()->eventHandler()->handleMouseReleaseEvent( 565 main_frame()->frame()->eventHandler()->handleMouseReleaseEvent(
562 PlatformMouseEventBuilder(main_frame()->frameview(), event)); 566 PlatformMouseEventBuilder(main_frame()->frameview(), event));
(...skipping 1317 matching lines...) Expand 10 before | Expand all | Expand 10 after
1880 1884
1881 return document->focusedNode(); 1885 return document->focusedNode();
1882 } 1886 }
1883 1887
1884 HitTestResult WebViewImpl::HitTestResultForWindowPos(const IntPoint& pos) { 1888 HitTestResult WebViewImpl::HitTestResultForWindowPos(const IntPoint& pos) {
1885 IntPoint doc_point( 1889 IntPoint doc_point(
1886 page_->mainFrame()->view()->windowToContents(pos)); 1890 page_->mainFrame()->view()->windowToContents(pos));
1887 return page_->mainFrame()->eventHandler()-> 1891 return page_->mainFrame()->eventHandler()->
1888 hitTestResultAtPoint(doc_point, false); 1892 hitTestResultAtPoint(doc_point, false);
1889 } 1893 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698