From 0c53b008b4f2f7a790f756d706a00e8de98dfedd Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Mon, 8 Jan 2018 14:30:00 -0500 Subject: Change the FFWidgets to store the node This CL changes the various CXFA_FF* widgets to hold a CXFA_Node instead of a CXFA_WidgetAcc wrapper. Change-Id: I7e31633d5ffd3b61abcdcdfeee7822514c5b28da Reviewed-on: https://pdfium-review.googlesource.com/22410 Reviewed-by: Ryan Harrison Commit-Queue: dsinclair --- xfa/fxfa/cxfa_ffdocview.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'xfa/fxfa/cxfa_ffdocview.cpp') diff --git a/xfa/fxfa/cxfa_ffdocview.cpp b/xfa/fxfa/cxfa_ffdocview.cpp index 75397bfc2b..e702036aee 100644 --- a/xfa/fxfa/cxfa_ffdocview.cpp +++ b/xfa/fxfa/cxfa_ffdocview.cpp @@ -373,7 +373,7 @@ bool CXFA_FFDocView::SetFocus(CXFA_FFWidget* hWidget) { pNewFocus->LoadWidget(); pNewFocus->OnSetFocus(m_pFocusWidget.Get()); } - m_pFocusAcc = pNewFocus ? pNewFocus->GetDataAcc() : nullptr; + m_pFocusAcc = pNewFocus ? pNewFocus->GetNode()->GetWidgetAcc() : nullptr; m_pFocusWidget = pNewFocus; m_pOldFocusWidget = m_pFocusWidget; return true; @@ -395,7 +395,7 @@ void CXFA_FFDocView::SetFocusWidgetAcc(CXFA_WidgetAcc* pWidgetAcc) { } void CXFA_FFDocView::DeleteLayoutItem(CXFA_FFWidget* pWidget) { - if (m_pFocusAcc != pWidget->GetDataAcc()) + if (m_pFocusAcc && m_pFocusAcc->GetNode() != pWidget->GetNode()) return; m_pFocusAcc = nullptr; @@ -493,7 +493,8 @@ int32_t CXFA_FFDocView::ExecEventActivityByDeepFirst(CXFA_Node* pFormNode, CXFA_FFWidget* CXFA_FFDocView::GetWidgetByName(const WideString& wsName, CXFA_FFWidget* pRefWidget) { - CXFA_WidgetAcc* pRefAcc = pRefWidget ? pRefWidget->GetDataAcc() : nullptr; + CXFA_WidgetAcc* pRefAcc = + pRefWidget ? pRefWidget->GetNode()->GetWidgetAcc() : nullptr; CXFA_WidgetAcc* pAcc = GetWidgetAccByName(wsName, pRefAcc); if (!pAcc) return nullptr; @@ -636,9 +637,9 @@ void CXFA_FFDocView::AddCalculateNodeNotify(CXFA_Node* pNodeChange) { if (!pGlobalData) return; - for (auto* pResultAcc : pGlobalData->m_Globals) { - if (!pResultAcc->GetNode()->HasRemovedChildren()) - AddCalculateWidgetAcc(pResultAcc); + for (auto* pResult : pGlobalData->m_Globals) { + if (!pResult->HasRemovedChildren()) + AddCalculateWidgetAcc(pResult->GetWidgetAcc()); } } -- cgit v1.2.3