Chromium Code Reviews| OLD | NEW | 
|---|---|
| 1 /* | 1 /* | 
| 2 * Copyright (C) 2011, 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2011, 2012 Google Inc. All rights reserved. | 
| 3 * | 3 * | 
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without | 
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are | 
| 6 * met: | 6 * met: | 
| 7 * | 7 * | 
| 8 * * Redistributions of source code must retain the above copyright | 8 * * 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 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above | 
| (...skipping 516 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 527 // immediately reopened the select popup. It needs to be closed. | 527 // immediately reopened the select popup. It needs to be closed. | 
| 528 hideSelectPopup(); | 528 hideSelectPopup(); | 
| 529 } | 529 } | 
| 530 | 530 | 
| 531 if (m_pagePopup && pagePopup && m_pagePopup->hasSamePopupClient(pagePopup.ge t())) { | 531 if (m_pagePopup && pagePopup && m_pagePopup->hasSamePopupClient(pagePopup.ge t())) { | 
| 532 // That click triggered a page popup that is the same as the one we just closed. | 532 // That click triggered a page popup that is the same as the one we just closed. | 
| 533 // It needs to be closed. | 533 // It needs to be closed. | 
| 534 closePagePopup(m_pagePopup.get()); | 534 closePagePopup(m_pagePopup.get()); | 
| 535 } | 535 } | 
| 536 | 536 | 
| 537 // Dispatch the contextmenu event regardless of if the click was swallowed. | 537 if (!page()->settings().showContextMenuOnMouseUp()) { | 
| 
 
Rick Byers
2014/12/02 19:33:06
This comment is still relevant - keep it.
 
zino
2014/12/03 12:32:24
Done.
 
 | |
| 538 #if OS(WIN) | 538 #if OS(MACOSX) | 
| 539 // On Windows, we handle it on mouse up, not down. | 539 if (event.button == WebMouseEvent::ButtonRight | 
| 540 #elif OS(MACOSX) | 540 || (event.button == WebMouseEvent::ButtonLeft | 
| 541 if (event.button == WebMouseEvent::ButtonRight | 541 && event.modifiers & WebMouseEvent::ControlKey)) | 
| 542 || (event.button == WebMouseEvent::ButtonLeft | 542 mouseContextMenu(event); | 
| 543 && event.modifiers & WebMouseEvent::ControlKey)) | |
| 544 mouseContextMenu(event); | |
| 545 #else | 543 #else | 
| 546 if (event.button == WebMouseEvent::ButtonRight) | 544 if (event.button == WebMouseEvent::ButtonRight) | 
| 547 mouseContextMenu(event); | 545 mouseContextMenu(event); | 
| 548 #endif | 546 #endif | 
| 547 } | |
| 549 } | 548 } | 
| 550 | 549 | 
| 551 void WebViewImpl::mouseContextMenu(const WebMouseEvent& event) | 550 void WebViewImpl::mouseContextMenu(const WebMouseEvent& event) | 
| 552 { | 551 { | 
| 553 if (!mainFrameImpl() || !mainFrameImpl()->frameView()) | 552 if (!mainFrameImpl() || !mainFrameImpl()->frameView()) | 
| 554 return; | 553 return; | 
| 555 | 554 | 
| 556 m_page->contextMenuController().clearContextMenu(); | 555 m_page->contextMenuController().clearContextMenu(); | 
| 557 | 556 | 
| 558 PlatformMouseEventBuilder pme(mainFrameImpl()->frameView(), event); | 557 PlatformMouseEventBuilder pme(mainFrameImpl()->frameView(), event); | 
| (...skipping 19 matching lines...) Expand all Loading... | |
| 578 targetLocalFrame->eventHandler().sendContextMenuEvent(pme); | 577 targetLocalFrame->eventHandler().sendContextMenuEvent(pme); | 
| 579 m_contextMenuAllowed = false; | 578 m_contextMenuAllowed = false; | 
| 580 // Actually showing the context menu is handled by the ContextMenuClient | 579 // Actually showing the context menu is handled by the ContextMenuClient | 
| 581 // implementation... | 580 // implementation... | 
| 582 } | 581 } | 
| 583 | 582 | 
| 584 void WebViewImpl::handleMouseUp(LocalFrame& mainFrame, const WebMouseEvent& even t) | 583 void WebViewImpl::handleMouseUp(LocalFrame& mainFrame, const WebMouseEvent& even t) | 
| 585 { | 584 { | 
| 586 PageWidgetEventHandler::handleMouseUp(mainFrame, event); | 585 PageWidgetEventHandler::handleMouseUp(mainFrame, event); | 
| 587 | 586 | 
| 588 #if OS(WIN) | 587 if (page()->settings().showContextMenuOnMouseUp()) { | 
| 589 // Dispatch the contextmenu event regardless of if the click was swallowed. | 588 // Dispatch the contextmenu event regardless of if the click was swallow ed. | 
| 590 // On Mac/Linux, we handle it on mouse down, not up. | 589 // On Mac/Linux, we handle it on mouse down, not up. | 
| 591 if (event.button == WebMouseEvent::ButtonRight) | 590 if (event.button == WebMouseEvent::ButtonRight) | 
| 592 mouseContextMenu(event); | 591 mouseContextMenu(event); | 
| 593 #endif | 592 } | 
| 594 } | 593 } | 
| 595 | 594 | 
| 596 bool WebViewImpl::handleMouseWheel(LocalFrame& mainFrame, const WebMouseWheelEve nt& event) | 595 bool WebViewImpl::handleMouseWheel(LocalFrame& mainFrame, const WebMouseWheelEve nt& event) | 
| 597 { | 596 { | 
| 598 hidePopups(); | 597 hidePopups(); | 
| 599 return PageWidgetEventHandler::handleMouseWheel(mainFrame, event); | 598 return PageWidgetEventHandler::handleMouseWheel(mainFrame, event); | 
| 600 } | 599 } | 
| 601 | 600 | 
| 602 bool WebViewImpl::scrollBy(const WebFloatSize& delta, const WebFloatSize& veloci ty) | 601 bool WebViewImpl::scrollBy(const WebFloatSize& delta, const WebFloatSize& veloci ty) | 
| 603 { | 602 { | 
| (...skipping 3947 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 4551 return mainFrameImpl()->frameView()->layoutSize().width() == m_size.width | 4550 return mainFrameImpl()->frameView()->layoutSize().width() == m_size.width | 
| 4552 || (constraints.minimumScale == constraints.maximumScale && constraints. minimumScale != -1); | 4551 || (constraints.minimumScale == constraints.maximumScale && constraints. minimumScale != -1); | 
| 4553 } | 4552 } | 
| 4554 | 4553 | 
| 4555 void WebViewImpl::forceNextWebGLContextCreationToFail() | 4554 void WebViewImpl::forceNextWebGLContextCreationToFail() | 
| 4556 { | 4555 { | 
| 4557 WebGLRenderingContext::forceNextWebGLContextCreationToFail(); | 4556 WebGLRenderingContext::forceNextWebGLContextCreationToFail(); | 
| 4558 } | 4557 } | 
| 4559 | 4558 | 
| 4560 } // namespace blink | 4559 } // namespace blink | 
| OLD | NEW |