summaryrefslogtreecommitdiff
path: root/xfa/fxfa/cxfa_ffwidgethandler.cpp
diff options
context:
space:
mode:
authorHenrique Nakashima <hnakashima@chromium.org>2018-04-10 16:10:36 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-04-10 16:10:36 +0000
commitd27f392c79ce53390f9de36778bb20f73f3e9324 (patch)
tree0e1b34a82134a0e170146e573414cf0461683047 /xfa/fxfa/cxfa_ffwidgethandler.cpp
parent4027887ee29a7f4920b03041068bff9bde239782 (diff)
downloadpdfium-d27f392c79ce53390f9de36778bb20f73f3e9324.tar.xz
Break down CXFA_FFWidget::On{L|R}ButtonDown() into two steps.
The first step, AcceptsFocusOnButtonDown(), returns whether the widget wants focus on a mouse click. The second step, On{L|R}ButtonDown(), handles the click after focus has been assigned. Bug: chromium:820256 Change-Id: I9da1f1a930f198fc17b24acb7f1e3e6ef7f12ae4 Reviewed-on: https://pdfium-review.googlesource.com/29951 Reviewed-by: Ryan Harrison <rharrison@chromium.org> Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
Diffstat (limited to 'xfa/fxfa/cxfa_ffwidgethandler.cpp')
-rw-r--r--xfa/fxfa/cxfa_ffwidgethandler.cpp25
1 files changed, 17 insertions, 8 deletions
diff --git a/xfa/fxfa/cxfa_ffwidgethandler.cpp b/xfa/fxfa/cxfa_ffwidgethandler.cpp
index 566923e590..f2bce57ea4 100644
--- a/xfa/fxfa/cxfa_ffwidgethandler.cpp
+++ b/xfa/fxfa/cxfa_ffwidgethandler.cpp
@@ -47,10 +47,14 @@ bool CXFA_FFWidgetHandler::OnLButtonDown(CXFA_FFWidget* hWidget,
uint32_t dwFlags,
const CFX_PointF& point) {
m_pDocView->LockUpdate();
- bool bRet = hWidget->OnLButtonDown(dwFlags, hWidget->Rotate2Normal(point));
- if (bRet && m_pDocView->SetFocus(hWidget)) {
- m_pDocView->GetDoc()->GetDocEnvironment()->SetFocusWidget(
- m_pDocView->GetDoc(), hWidget);
+ bool bRet = hWidget->AcceptsFocusOnButtonDown(
+ dwFlags, hWidget->Rotate2Normal(point), FWL_MouseCommand::LeftButtonDown);
+ if (bRet) {
+ if (m_pDocView->SetFocus(hWidget)) {
+ m_pDocView->GetDoc()->GetDocEnvironment()->SetFocusWidget(
+ m_pDocView->GetDoc(), hWidget);
+ }
+ hWidget->OnLButtonDown(dwFlags, hWidget->Rotate2Normal(point));
}
m_pDocView->UnlockUpdate();
m_pDocView->UpdateDocView();
@@ -94,10 +98,15 @@ bool CXFA_FFWidgetHandler::OnMouseWheel(CXFA_FFWidget* hWidget,
bool CXFA_FFWidgetHandler::OnRButtonDown(CXFA_FFWidget* hWidget,
uint32_t dwFlags,
const CFX_PointF& point) {
- bool bRet = hWidget->OnRButtonDown(dwFlags, hWidget->Rotate2Normal(point));
- if (bRet && m_pDocView->SetFocus(hWidget)) {
- m_pDocView->GetDoc()->GetDocEnvironment()->SetFocusWidget(
- m_pDocView->GetDoc(), hWidget);
+ bool bRet =
+ hWidget->AcceptsFocusOnButtonDown(dwFlags, hWidget->Rotate2Normal(point),
+ FWL_MouseCommand::RightButtonDown);
+ if (bRet) {
+ if (m_pDocView->SetFocus(hWidget)) {
+ m_pDocView->GetDoc()->GetDocEnvironment()->SetFocusWidget(
+ m_pDocView->GetDoc(), hWidget);
+ }
+ hWidget->OnRButtonDown(dwFlags, hWidget->Rotate2Normal(point));
}
return bRet;
}