sw/source/core/text/portxt.cxx | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+)
New commits: commit bb3743dae784bdab66117a83ac65ded221440774 Author: Serge Krot <serge.k...@cib.de> AuthorDate: Fri Jun 19 13:06:33 2020 +0200 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Jun 25 13:05:43 2020 +0200 tdf#101830 sw: highlight empty 'invisible' input fields Change-Id: Ibcf4f7ce88c7bf364510c522e224028aa4737790 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96717 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behr...@cib.de> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97098 Tested-by: Thorsten Behrens <thorsten.behr...@cib.de> diff --git a/sw/source/core/text/portxt.cxx b/sw/source/core/text/portxt.cxx index f520130458e2..40f7223ab97a 100644 --- a/sw/source/core/text/portxt.cxx +++ b/sw/source/core/text/portxt.cxx @@ -42,6 +42,7 @@ #include <pam.hxx> #include <doc.hxx> #include <xmloff/odffields.hxx> +#include <viewopt.hxx> using namespace ::sw::mark; using namespace ::com::sun::star; @@ -691,6 +692,28 @@ void SwTextInputFieldPortion::Paint( const SwTextPaintInfo &rInf ) const SwTextSlot aPaintText( &rInf, this, true, true, OUString() ); SwTextPortion::Paint( rInf ); } + else + { + // highlight empty input field, elsewhere they are completely invisible for the user + SwRect aIntersect; + rInf.CalcRect(*this, &aIntersect); + const sal_uInt16 aAreaWidth = rInf.GetTextSize(OUString(' ')).Width(); + aIntersect.Left(aIntersect.Left() - aAreaWidth/2); + aIntersect.Width(aAreaWidth); + + if (aIntersect.HasArea() + && rInf.OnWin() + && SwViewOption::IsFieldShadings() + && !rInf.GetOpt().IsPagePreview()) + { + OutputDevice* pOut = const_cast<OutputDevice*>(rInf.GetOut()); + pOut->Push(PushFlags::LINECOLOR | PushFlags::FILLCOLOR); + pOut->SetFillColor(SwViewOption::GetFieldShadingsColor()); + pOut->SetLineColor(); + pOut->DrawRect(aIntersect.SVRect()); + pOut->Pop(); + } + } } bool SwTextInputFieldPortion::GetExpText( const SwTextSizeInfo &rInf, OUString &rText ) const _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits