[Libreoffice-commits] core.git: sw/source

Niklas Johansson sleeping.pillow at gmail.com
Wed Mar 19 03:31:49 PDT 2014


 sw/source/core/access/accpara.cxx |   59 --------------------------------------
 1 file changed, 59 deletions(-)

New commits:
commit 3fa4b0a00f78e940b32d546bac410890719502fd
Author: Niklas Johansson <sleeping.pillow at gmail.com>
Date:   Fri Mar 14 15:39:30 2014 +0100

    fdo#74983: Instability in A11y after integration of IA2-branch
    
    The IA2-integration added some special cases for calculating textbounds for
    attributeruns when automatic spellchecking is active. This does not seem to
    effect linux but messes up accessibility on mac. This patch removes the special
    cases avoids the problem on Mac. When daily builds gets available for Windows
    I will do some testing there to see if I can find any problems.
    
    Change-Id: I203da4fe1c6e5d4915d19e1704073e58f8aa88c9
    Reviewed-on: https://gerrit.libreoffice.org/8591
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/sw/source/core/access/accpara.cxx b/sw/source/core/access/accpara.cxx
index 8ff2410..77817ec 100644
--- a/sw/source/core/access/accpara.cxx
+++ b/sw/source/core/access/accpara.cxx
@@ -916,65 +916,6 @@ sal_Bool SwAccessibleParagraph::GetTextBoundary(
 
         case AccessibleTextType::ATTRIBUTE_RUN:
             bRet = GetAttributeBoundary( rBound, rText, nPos );
-            if(bRet)
-            {
-                SwCrsrShell* pCrsrShell = GetCrsrShell();
-                if( pCrsrShell != NULL && pCrsrShell->GetViewOptions() && pCrsrShell->GetViewOptions()->IsOnlineSpell())
-                {
-                    SwTxtNode* pTxtNode = const_cast<SwTxtNode*>( GetTxtNode() );
-                    if(pTxtNode)
-                    {
-                        const SwWrongList* pWrongList = pTxtNode->GetWrong();
-                        if( NULL != pWrongList )
-                        {
-                            sal_Int32 nBegin = nPos;
-                            sal_Int32 nLen = 1;
-                            const sal_Int32 nNext = pWrongList->NextWrong(nBegin);
-                            sal_Int32 nLast = 0;
-                            sal_uInt16 nWrongPos = pWrongList->GetWrongPos( nBegin );
-                            if ( nWrongPos >= pWrongList->Count() ||
-                                 ( nLast = pWrongList->Pos( nWrongPos ) ) >= nBegin )
-                            {
-                                nLast = nWrongPos
-                                        ? pWrongList->Pos( --nWrongPos )
-                                        : COMPLETE_STRING;
-                            }
-                            if ( nBegin > pWrongList->GetBeginInv() &&
-                                 ( nLast == COMPLETE_STRING || nLast < pWrongList->GetEndInv() ) )
-                            {
-                                nLast = min(nBegin, pWrongList->GetEndInv());
-                            }
-                            else if ( nLast < COMPLETE_STRING )
-                            {
-                                nLast += pWrongList->Len( nWrongPos );
-                            }
-
-                            const bool bIn = pWrongList->InWrongWord(nBegin, nLen); // && !pTxtNode->IsSymbol(nBegin) )
-                            if(bIn)
-                            {
-                                rBound.startPos = max(nNext, rBound.startPos);
-                                rBound.endPos = min(nNext+nLen, rBound.endPos);
-                            }
-                            else
-                            {
-                                if (COMPLETE_STRING == nLast)//first
-                                {
-                                    rBound.endPos = min(nNext, rBound.endPos);
-                                }
-                                else if(COMPLETE_STRING == nNext)
-                                {
-                                    rBound.startPos = max(nLast, rBound.startPos);
-                                }
-                                else
-                                {
-                                    rBound.startPos = max(nLast, rBound.startPos);
-                                    rBound.endPos = min(nNext, rBound.endPos);
-                                }
-                            }
-                        }
-                    }
-                }
-            }
             break;
 
         case AccessibleTextType::GLYPH:


More information about the Libreoffice-commits mailing list