summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fpdfsdk/cpdfsdk_widget.cpp6
-rw-r--r--xfa/fxfa/cxfa_ffdocview.cpp7
-rw-r--r--xfa/fxfa/cxfa_ffdocview.h2
-rw-r--r--xfa/fxfa/cxfa_widgetacc.cpp8
-rw-r--r--xfa/fxfa/cxfa_widgetacc.h1
5 files changed, 13 insertions, 11 deletions
diff --git a/fpdfsdk/cpdfsdk_widget.cpp b/fpdfsdk/cpdfsdk_widget.cpp
index ff82283516..9911370dfc 100644
--- a/fpdfsdk/cpdfsdk_widget.cpp
+++ b/fpdfsdk/cpdfsdk_widget.cpp
@@ -319,8 +319,10 @@ void CPDFSDK_Widget::Synchronize(bool bSynchronizeElse) {
}
}
- if (bSynchronizeElse)
- pWidgetAcc->ProcessValueChanged();
+ if (bSynchronizeElse) {
+ CPDFXFA_Context* context = m_pPageView->GetFormFillEnv()->GetXFAContext();
+ context->GetXFADocView()->ProcessValueChanged(pWidgetAcc);
+ }
}
void CPDFSDK_Widget::SynchronizeXFAValue() {
diff --git a/xfa/fxfa/cxfa_ffdocview.cpp b/xfa/fxfa/cxfa_ffdocview.cpp
index e5d2fe12dc..cb4c72d0b3 100644
--- a/xfa/fxfa/cxfa_ffdocview.cpp
+++ b/xfa/fxfa/cxfa_ffdocview.cpp
@@ -672,6 +672,13 @@ void CXFA_FFDocView::InitCalculate(CXFA_Node* pNode) {
nullptr);
}
+void CXFA_FFDocView::ProcessValueChanged(CXFA_WidgetAcc* widgetAcc) {
+ AddValidateWidget(widgetAcc);
+ AddCalculateWidgetAcc(widgetAcc);
+ RunCalculateWidgets();
+ RunValidate();
+}
+
bool CXFA_FFDocView::InitValidate(CXFA_Node* pNode) {
if (!m_pDoc->GetDocEnvironment()->IsValidationsEnabled(m_pDoc.Get()))
return false;
diff --git a/xfa/fxfa/cxfa_ffdocview.h b/xfa/fxfa/cxfa_ffdocview.h
index f980ad2feb..fcaa7162dd 100644
--- a/xfa/fxfa/cxfa_ffdocview.h
+++ b/xfa/fxfa/cxfa_ffdocview.h
@@ -79,6 +79,8 @@ class CXFA_FFDocView {
void RunDocClose();
void DestroyDocView();
+ void ProcessValueChanged(CXFA_WidgetAcc* widgetAcc);
+
bool InitValidate(CXFA_Node* pNode);
bool RunValidate();
diff --git a/xfa/fxfa/cxfa_widgetacc.cpp b/xfa/fxfa/cxfa_widgetacc.cpp
index 47a9c942b0..f735633abe 100644
--- a/xfa/fxfa/cxfa_widgetacc.cpp
+++ b/xfa/fxfa/cxfa_widgetacc.cpp
@@ -376,14 +376,6 @@ CXFA_Node* CXFA_WidgetAcc::GetDatasets() {
return m_pNode->GetBindData();
}
-bool CXFA_WidgetAcc::ProcessValueChanged() {
- m_pDocView->AddValidateWidget(this);
- m_pDocView->AddCalculateWidgetAcc(this);
- m_pDocView->RunCalculateWidgets();
- m_pDocView->RunValidate();
- return true;
-}
-
void CXFA_WidgetAcc::ResetData() {
WideString wsValue;
XFA_Element eUIType = GetUIType();
diff --git a/xfa/fxfa/cxfa_widgetacc.h b/xfa/fxfa/cxfa_widgetacc.h
index 29c78d9576..2736f59139 100644
--- a/xfa/fxfa/cxfa_widgetacc.h
+++ b/xfa/fxfa/cxfa_widgetacc.h
@@ -68,7 +68,6 @@ class CXFA_WidgetAcc {
CXFA_WidgetAcc* GetExclGroup();
CXFA_FFDoc* GetDoc();
- bool ProcessValueChanged();
int32_t ProcessEvent(XFA_AttributeEnum iActivity,
CXFA_EventParam* pEventParam);
int32_t ProcessEvent(CXFA_Event* event, CXFA_EventParam* pEventParam);