diff options
Diffstat (limited to 'xfa/fxfa/cxfa_ffpageview.cpp')
-rw-r--r-- | xfa/fxfa/cxfa_ffpageview.cpp | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/xfa/fxfa/cxfa_ffpageview.cpp b/xfa/fxfa/cxfa_ffpageview.cpp index cb9743972e..351f576e5c 100644 --- a/xfa/fxfa/cxfa_ffpageview.cpp +++ b/xfa/fxfa/cxfa_ffpageview.cpp @@ -381,39 +381,39 @@ void CXFA_FFTabOrderPageWidgetIterator::OrderContainer( CXFA_LayoutItemIterator* sIterator, CXFA_LayoutItem* pContainerItem, CXFA_TabParam* pContainer, - bool& bCurrentItem, - bool& bContentArea, - bool bMarsterPage) { + bool* bCurrentItem, + bool* bContentArea, + bool bMasterPage) { std::vector<std::unique_ptr<CXFA_TabParam>> tabParams; CXFA_LayoutItem* pSearchItem = sIterator->MoveToNext(); while (pSearchItem) { if (!pSearchItem->IsContentLayoutItem()) { - bContentArea = true; + *bContentArea = true; pSearchItem = sIterator->MoveToNext(); continue; } - if (bMarsterPage && bContentArea) { + if (bMasterPage && *bContentArea) { break; } - if (bMarsterPage || bContentArea) { + if (bMasterPage || *bContentArea) { CXFA_FFWidget* hWidget = GetWidget(pSearchItem); if (!hWidget) { pSearchItem = sIterator->MoveToNext(); continue; } if (pContainerItem && (pSearchItem->GetParent() != pContainerItem)) { - bCurrentItem = true; + *bCurrentItem = true; break; } tabParams.push_back(pdfium::MakeUnique<CXFA_TabParam>(hWidget)); if (IsLayoutElement(pSearchItem->GetFormNode()->GetElementType(), true)) { OrderContainer(sIterator, pSearchItem, tabParams.back().get(), - bCurrentItem, bContentArea, bMarsterPage); + bCurrentItem, bContentArea, bMasterPage); } } - if (bCurrentItem) { + if (*bCurrentItem) { pSearchItem = sIterator->GetCurrent(); - bCurrentItem = false; + *bCurrentItem = false; } else { pSearchItem = sIterator->MoveToNext(); } @@ -437,7 +437,8 @@ void CXFA_FFTabOrderPageWidgetIterator::CreateSpaceOrderWidgetArray( auto pParam = pdfium::MakeUnique<CXFA_TabParam>(nullptr); bool bCurrentItem = false; bool bContentArea = false; - OrderContainer(&sIterator, nullptr, pParam.get(), bCurrentItem, bContentArea); + OrderContainer(&sIterator, nullptr, pParam.get(), &bCurrentItem, + &bContentArea, false); WidgetArray->insert(WidgetArray->end(), pParam->GetChildren().begin(), pParam->GetChildren().end()); @@ -445,8 +446,8 @@ void CXFA_FFTabOrderPageWidgetIterator::CreateSpaceOrderWidgetArray( bCurrentItem = false; bContentArea = false; pParam->ClearChildren(); - OrderContainer(&sIterator, nullptr, pParam.get(), bCurrentItem, bContentArea, - true); + OrderContainer(&sIterator, nullptr, pParam.get(), &bCurrentItem, + &bContentArea, true); WidgetArray->insert(WidgetArray->end(), pParam->GetChildren().begin(), pParam->GetChildren().end()); } |