diff options
author | Bo Xu <bo_xu@foxitsoftware.com> | 2014-09-24 10:49:52 -0700 |
---|---|---|
committer | Bo Xu <bo_xu@foxitsoftware.com> | 2014-09-24 10:49:52 -0700 |
commit | facd0157ce975158da1659fb58a16c1308bd553b (patch) | |
tree | b3100d2df0b64e62169ab51aaf3bbbff008996e9 /fpdfsdk/include | |
parent | 0c53324519762525e17ebbacc02cd33f7f1c837d (diff) | |
download | pdfium-facd0157ce975158da1659fb58a16c1308bd553b.tar.xz |
Lock page in LoadFXAnnot to prevent unintended page closing
BUG=410326
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/594403003
Diffstat (limited to 'fpdfsdk/include')
-rw-r--r-- | fpdfsdk/include/fsdk_mgr.h | 25 |
1 files changed, 8 insertions, 17 deletions
diff --git a/fpdfsdk/include/fsdk_mgr.h b/fpdfsdk/include/fsdk_mgr.h index 95d1a79352..a6f990c36f 100644 --- a/fpdfsdk/include/fsdk_mgr.h +++ b/fpdfsdk/include/fsdk_mgr.h @@ -460,15 +460,12 @@ private: CPDF_OCContext * m_pOccontent; FX_BOOL m_bChangeMask; }; - class CPDFSDK_PageView FX_FINAL { public: CPDFSDK_PageView(CPDFSDK_Document* pSDKDoc,CPDF_Page* page); ~CPDFSDK_PageView(); -public: void PageView_OnDraw(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device,CPDF_RenderOptions* pOptions) ; -public: CPDF_Annot* GetPDFAnnotAtPoint(FX_FLOAT pageX, FX_FLOAT pageY); CPDFSDK_Annot* GetFXAnnotAtPoint(FX_FLOAT pageX, FX_FLOAT pageY); CPDF_Annot* GetPDFWidgetAtPoint(FX_FLOAT pageX, FX_FLOAT pageY); @@ -489,7 +486,6 @@ public: CPDF_Page* GetPDFPage(){return m_page;} CPDF_Document* GetPDFDocument(); CPDFSDK_Document* GetSDKDocument() {return m_pSDKDoc;} -public: FX_BOOL OnLButtonDown(const CPDF_Point & point, FX_UINT nFlag); FX_BOOL OnLButtonUp(const CPDF_Point & point, FX_UINT nFlag); FX_BOOL OnChar(int nChar, FX_UINT nFlag); @@ -499,39 +495,34 @@ public: FX_BOOL OnMouseMove(const CPDF_Point & point, int nFlag); FX_BOOL OnMouseWheel(double deltaX, double deltaY,const CPDF_Point& point, int nFlag); FX_BOOL IsValidAnnot(FX_LPVOID p); -public: void GetCurrentMatrix(CPDF_Matrix& matrix) {matrix = m_curMatrix;} void UpdateRects(CFX_RectArray& rects); void UpdateView(CPDFSDK_Annot* pAnnot); CFX_PtrArray* GetAnnotList(){ return &m_fxAnnotArray; } -public: int GetPageIndex(); void LoadFXAnnots(); -private: - CPDF_Matrix m_curMatrix; + void SetValid(FX_BOOL bValid) {m_bValid = bValid;} + FX_BOOL IsValid() {return m_bValid;} + void SetLock(FX_BOOL bLocked) {m_bLocked= bLocked;} + FX_BOOL IsLocked() {return m_bLocked;} + void TakeOverPage() {m_bTakeOverPage = TRUE;} private: void PageView_OnHighlightFormFields(CFX_RenderDevice* pDevice, CPDFSDK_Widget* pWidget); - -private: + CPDF_Matrix m_curMatrix; CPDF_Page* m_page; CPDF_AnnotList* m_pAnnotList; - //CPDFSDK_Annot* m_pFocusAnnot; CFX_PtrArray m_fxAnnotArray; - CPDFSDK_Document* m_pSDKDoc; -private: CPDFSDK_Widget* m_CaptureWidget; FX_BOOL m_bEnterWidget; FX_BOOL m_bExitWidget; FX_BOOL m_bOnWidget; -public: - void SetValid(FX_BOOL bValid) {m_bValid = bValid;} - FX_BOOL IsValid() {return m_bValid;} -private: FX_BOOL m_bValid; + FX_BOOL m_bLocked; + FX_BOOL m_bTakeOverPage; }; |