summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@suse.cz>2013-01-14 10:55:55 +0100
committerNoel Power <noel.power@suse.com>2013-01-14 18:52:14 +0000
commitf39fa5aad48dc93bf24a328297635e5e46a65cff (patch)
tree878615bce8faa7c2dc9c3be9dbe5601ab166c5be
parentd75d7a5108346c3e84859e5946d49f11f8d7d785 (diff)
fdo#57938 SwPaM::HasReadonlySel allow editing before commented text ranges
(cherry picked from commit 50b6dc0099ff61050b82a2e37e70d643151e7ce7) Change-Id: I229602e7783c76e7fc57b78a408f90c1f6a8cda5 Reviewed-on: https://gerrit.libreoffice.org/1673 Reviewed-by: Noel Power <noel.power@suse.com> Tested-by: Noel Power <noel.power@suse.com>
-rw-r--r--sw/source/core/crsr/pam.cxx9
1 files changed, 8 insertions, 1 deletions
diff --git a/sw/source/core/crsr/pam.cxx b/sw/source/core/crsr/pam.cxx
index 6d7f07a7b5e9..e122212e2fc5 100644
--- a/sw/source/core/crsr/pam.cxx
+++ b/sw/source/core/crsr/pam.cxx
@@ -699,6 +699,13 @@ sal_Bool SwPaM::HasReadonlySel( bool bFormView ) const
if (!bUnhandledMark)
bCommentrangeMark = pFieldmark->GetFieldname() == ODF_COMMENTRANGE;
}
+ // Allow editing selection right before a commented range.
+ if (!bCommentrangeMark && GetMark())
+ {
+ pFieldmark = pMarksAccess->getFieldmarkFor(*GetMark());
+ if (pFieldmark)
+ bCommentrangeMark = pFieldmark->GetFieldname() == ODF_COMMENTRANGE;
+ }
}
if (!bRet)
@@ -707,7 +714,7 @@ sal_Bool SwPaM::HasReadonlySel( bool bFormView ) const
if ( ( pA == pB ) && bUnhandledMark )
bRet = sal_True;
// Allow editing of commented ranges.
- else if (!((pA == pB) && bCommentrangeMark))
+ else if (!bCommentrangeMark)
{
// Form protection case
bool bAtStartA = pA != NULL && pA->GetMarkStart() == *GetPoint();