Index: fpdfsdk/src/fsdk_mgr.cpp |
diff --git a/fpdfsdk/src/fsdk_mgr.cpp b/fpdfsdk/src/fsdk_mgr.cpp |
index 5e847b78e51f7c45314659257b4d43fef4f5efd1..86278b589de6028cfe684a2d5726c049dce18c57 100644 |
--- a/fpdfsdk/src/fsdk_mgr.cpp |
+++ b/fpdfsdk/src/fsdk_mgr.cpp |
@@ -1119,6 +1119,18 @@ void CPDFSDK_PageView::LoadFXAnnots() { |
SetLock(FALSE); |
} |
+void CPDFSDK_PageView::ClearFXAnnots() { |
+ SetLock(TRUE); |
+ if (m_pSDKDoc && GetFocusAnnot()) |
Lei Zhang
2015/12/21 17:47:59
Why bother calling GetFocusAnnot() ?
|
+ m_pSDKDoc->SetFocusAnnot(nullptr); |
+ m_CaptureWidget = nullptr; |
+ for (CPDFSDK_Annot* pAnnot : m_fxAnnotArray) |
+ m_pSDKDoc->GetEnv()->GetAnnotHandlerMgr()->ReleaseAnnot(pAnnot); |
+ m_fxAnnotArray.clear(); |
+ m_pAnnotList.reset(); |
+ SetLock(FALSE); |
+} |
+ |
void CPDFSDK_PageView::UpdateRects(CFX_RectArray& rects) { |
for (int i = 0; i < rects.GetSize(); i++) { |
CPDF_Rect rc = rects.GetAt(i); |