summaryrefslogtreecommitdiff
path: root/fpdfsdk/formfiller
diff options
context:
space:
mode:
authorLei Zhang <thestig@chromium.org>2017-08-29 11:34:12 -0700
committerChromium commit bot <commit-bot@chromium.org>2017-08-29 20:37:23 +0000
commit77f9bff2c229df771a43448a9d5087e042235936 (patch)
tree3bdc3d70491248a301c53275ccfe583b074d9184 /fpdfsdk/formfiller
parentc9d6d68e9b91a0373d8aac42cdde5dac1925ec42 (diff)
downloadpdfium-77f9bff2c229df771a43448a9d5087e042235936.tar.xz
Reduce rounding errors when Invalidating rects.
Instead of using CFX_FloatRect::ToFxRect(), which always rounds down, use GetOuterRect() which correctly rounds up / down depending on the side of the rectangle. Change-Id: I7abd3a65e8c0467ed4303292f26a72737a5d553b Reviewed-on: https://pdfium-review.googlesource.com/12312 Commit-Queue: dsinclair <dsinclair@chromium.org> Reviewed-by: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'fpdfsdk/formfiller')
-rw-r--r--fpdfsdk/formfiller/cffl_formfiller.h3
-rw-r--r--fpdfsdk/formfiller/cffl_textfield.cpp2
2 files changed, 3 insertions, 2 deletions
diff --git a/fpdfsdk/formfiller/cffl_formfiller.h b/fpdfsdk/formfiller/cffl_formfiller.h
index 2b276c242e..b5bf1c8197 100644
--- a/fpdfsdk/formfiller/cffl_formfiller.h
+++ b/fpdfsdk/formfiller/cffl_formfiller.h
@@ -140,7 +140,6 @@ class CFFL_FormFiller : public IPWL_Provider, public CPWL_TimerHandler {
CPDFSDK_PageView* GetCurPageView(bool renew);
void SetChangeMark();
- virtual void InvalidateRect(const FX_RECT& rect);
CPDFSDK_Annot* GetSDKAnnot() { return m_pWidget.Get(); }
protected:
@@ -154,6 +153,8 @@ class CFFL_FormFiller : public IPWL_Provider, public CPWL_TimerHandler {
// until the PWL_Edit is done with it. pdfium:566
void DestroyWindows();
+ void InvalidateRect(const FX_RECT& rect);
+
CFX_UnownedPtr<CPDFSDK_FormFillEnvironment> const m_pFormFillEnv;
CFX_UnownedPtr<CPDFSDK_Widget> m_pWidget;
bool m_bValid;
diff --git a/fpdfsdk/formfiller/cffl_textfield.cpp b/fpdfsdk/formfiller/cffl_textfield.cpp
index d26b4a5599..f6f768a049 100644
--- a/fpdfsdk/formfiller/cffl_textfield.cpp
+++ b/fpdfsdk/formfiller/cffl_textfield.cpp
@@ -101,7 +101,7 @@ bool CFFL_TextField::OnChar(CPDFSDK_Annot* pAnnot,
ASSERT(pPageView);
m_bValid = !m_bValid;
m_pFormFillEnv->Invalidate(pAnnot->GetUnderlyingPage(),
- pAnnot->GetRect().ToFxRect());
+ pAnnot->GetRect().GetOuterRect());
if (m_bValid) {
if (CPWL_Wnd* pWnd = GetPDFWindow(pPageView, true))