[ooo-build-commit] .: 4 commits - editeng/inc editeng/source officecfg/registry sfx2/source svx/source

Kohei Yoshida kohei at kemper.freedesktop.org
Wed Sep 29 13:23:09 PDT 2010


 editeng/inc/editeng/editeng.hxx                                |    3 
 editeng/inc/editeng/editview.hxx                               |    4 
 editeng/inc/editeng/outliner.hxx                               |    2 
 editeng/inc/editeng/svxacorr.hxx                               |    7 -
 editeng/source/editeng/editeng.cxx                             |   11 -
 editeng/source/editeng/editview.cxx                            |    9 -
 editeng/source/editeng/impedit.cxx                             |    4 
 editeng/source/editeng/impedit.hxx                             |    6 
 editeng/source/editeng/impedit2.cxx                            |    5 
 editeng/source/misc/acorrcfg.cxx                               |   13 +-
 editeng/source/misc/svxacorr.cxx                               |   61 +++++++++-
 editeng/source/outliner/outlvw.cxx                             |    4 
 officecfg/registry/data/org/openoffice/Office/Accelerators.xcu |    7 -
 officecfg/registry/schema/org/openoffice/Office/Common.xcs     |    9 +
 sfx2/source/doc/objstor.cxx                                    |    2 
 svx/source/svdraw/svdedxv.cxx                                  |    2 
 16 files changed, 121 insertions(+), 28 deletions(-)

New commits:
commit 4cff762f5d1c4e61786b8ca49cf86b47289f1cf4
Author: Kohei Yoshida <kyoshida at novell.com>
Date:   Wed Sep 29 16:20:12 2010 -0400

    Ported autocorrect-accidental-caps-lock-svx.diff from ooo-build.

diff --git a/editeng/inc/editeng/editeng.hxx b/editeng/inc/editeng/editeng.hxx
index 797cd85..7bf5df6 100755
--- a/editeng/inc/editeng/editeng.hxx
+++ b/editeng/inc/editeng/editeng.hxx
@@ -53,6 +53,7 @@ class Rectangle;
 class SvStream;
 class Link;
 class OutputDevice;
+class Window;
 class SvUShorts;
 class SfxPoolItem;
 class SvxNumBulletItem;
@@ -124,7 +125,7 @@ private:
     EDITENG_DLLPRIVATE EditEngine&		operator=( const EditEngine& );
 
 //#if 0 // _SOLAR__PRIVATE
-    EDITENG_DLLPRIVATE BOOL				PostKeyEvent( const KeyEvent& rKeyEvent, EditView* pView );
+    EDITENG_DLLPRIVATE BOOL				PostKeyEvent( const KeyEvent& rKeyEvent, EditView* pView, Window* pFrameWin = NULL );
 //#endif
 
 protected:
diff --git a/editeng/inc/editeng/editview.hxx b/editeng/inc/editeng/editview.hxx
index 761f282..8450c44 100644
--- a/editeng/inc/editeng/editview.hxx
+++ b/editeng/inc/editeng/editview.hxx
@@ -145,7 +145,7 @@ public:
 
     void			InsertText( const String& rNew, BOOL bSelect = FALSE );
 
-    BOOL			PostKeyEvent( const KeyEvent& rKeyEvent );
+    BOOL			PostKeyEvent( const KeyEvent& rKeyEvent, Window* pFrameWin = NULL );
 
     BOOL			MouseButtonUp( const MouseEvent& rMouseEvent );
     BOOL			MouseButtonDown( const MouseEvent& rMouseEvent );
@@ -208,7 +208,7 @@ public:
 
     BOOL			MatchGroup();
 
-    void			CompleteAutoCorrect();
+    void			CompleteAutoCorrect( Window* pFrameWin = NULL );
 
     EESpellState	StartSpeller( BOOL bMultipleDoc = FALSE );
     EESpellState	StartThesaurus();
diff --git a/editeng/inc/editeng/outliner.hxx b/editeng/inc/editeng/outliner.hxx
index 44c2a71..1134188 100644
--- a/editeng/inc/editeng/outliner.hxx
+++ b/editeng/inc/editeng/outliner.hxx
@@ -259,7 +259,7 @@ public:
     void        Scroll( long nHorzScroll, long nVertScroll );
 
     void        Paint( const Rectangle& rRect );
-    BOOL        PostKeyEvent( const KeyEvent& rKEvt );
+    BOOL        PostKeyEvent( const KeyEvent& rKEvt, Window* pFrameWin = NULL );
     BOOL        MouseButtonDown( const MouseEvent& );
     BOOL        MouseButtonUp( const MouseEvent& );
     BOOL        MouseMove( const MouseEvent& );
diff --git a/editeng/inc/editeng/svxacorr.hxx b/editeng/inc/editeng/svxacorr.hxx
index 333235b..d344e26 100644
--- a/editeng/inc/editeng/svxacorr.hxx
+++ b/editeng/inc/editeng/svxacorr.hxx
@@ -47,6 +47,7 @@ class SvxAutoCorrLanguageTable_Impl;
 class SvxAutoCorrLastFileAskTable_Impl;
 class SotStorageRef;
 class SotStorage;
+class Window;
 
 // Flags fuer die AutoKorrekt-Flags
 const long CptlSttSntnc		= 0x00000001;	// Gross-Buchstaben am SatzAnfang
@@ -62,6 +63,7 @@ const long SaveWordCplSttLst= 0x00000200;	// GrB. am SatzAnf. auto. aufnehmen
 const long SaveWordWrdSttLst= 0x00000400;	// 2 GrB. am WortAnf. auto. aufnehmen
 const long IgnoreDoubleSpace= 0x00000800;	// 2 Spaces ignorieren
 const long ChgSglQuotes		= 0x00001000;	// einfache Quotes ersetzen
+const long CorrectCapsLock  = 0x00002000;   // Correct accidental use of cAPS LOCK key
 
 const long ChgWordLstLoad	= 0x20000000;	// Ersetzungsliste geladen
 const long CplSttLstLoad	= 0x40000000;	// Exceptionlist fuer CplStart geladen
@@ -250,7 +252,7 @@ public:
     // fuehre eine AutoKorrektur aus.
     // returnt was ausgefuehrt wurde; entsprechend den obigen Flags
     ULONG AutoCorrect( SvxAutoCorrDoc& rDoc, const String& rTxt,
-                        xub_StrLen nPos, sal_Unicode cInsChar, BOOL bInsert );
+                        xub_StrLen nPos, sal_Unicode cInsChar, BOOL bInsert, Window* pFrameWin = NULL );
 
     // return fuer die Autotext Expandierung das vorherige Wort, was dem
     // AutoCorrect - Algorythmus entspricht.
@@ -375,6 +377,9 @@ public:
     BOOL FnCptlSttSntnc( SvxAutoCorrDoc&, const String&, BOOL bNormalPos,
                                 xub_StrLen nSttPos, xub_StrLen nEndPos,
                                 LanguageType eLang  = LANGUAGE_SYSTEM);
+    bool FnCorrectCapsLock( SvxAutoCorrDoc&, const String&,
+                            xub_StrLen nSttPos, xub_StrLen nEndPos,
+                            LanguageType eLang  = LANGUAGE_SYSTEM );
 
     bool                HasRunNext() { return bRunNext; }
 
diff --git a/editeng/source/editeng/editeng.cxx b/editeng/source/editeng/editeng.cxx
index 1956cff..3d3f4b1 100644
--- a/editeng/source/editeng/editeng.cxx
+++ b/editeng/source/editeng/editeng.cxx
@@ -821,7 +821,7 @@ ESelection EditEngine::SelectSentence( const ESelection& rCurSel ) const
     return pE->pImpEditEngine->CreateESel( aSentenceSel );
 }
 
-sal_Bool EditEngine::PostKeyEvent( const KeyEvent& rKeyEvent, EditView* pEditView )
+sal_Bool EditEngine::PostKeyEvent( const KeyEvent& rKeyEvent, EditView* pEditView, Window* pFrameWin )
 {
     DBG_CHKTHIS( EditEngine, 0 );
     DBG_CHKOBJ( pEditView, EditView, 0 );
@@ -1081,7 +1081,7 @@ sal_Bool EditEngine::PostKeyEvent( const KeyEvent& rKeyEvent, EditView* pEditVie
                         if ( bSel )
                             pImpEditEngine->UndoActionStart( EDITUNDO_INSERT );
                         if ( pImpEditEngine->GetStatus().DoAutoCorrect() )
-                            aCurSel = pImpEditEngine->AutoCorrect( aCurSel, 0, !pEditView->IsInsertMode() );
+                            aCurSel = pImpEditEngine->AutoCorrect( aCurSel, 0, !pEditView->IsInsertMode(), pFrameWin );
                         aCurSel = pImpEditEngine->InsertTab( aCurSel );
                         if ( bSel )
                             pImpEditEngine->UndoActionEnd( EDITUNDO_INSERT );
@@ -1102,7 +1102,7 @@ sal_Bool EditEngine::PostKeyEvent( const KeyEvent& rKeyEvent, EditView* pEditVie
                         pImpEditEngine->UndoActionStart( EDITUNDO_INSERT );
                         if ( rKeyEvent.GetKeyCode().IsShift() )
                         {
-                            aCurSel = pImpEditEngine->AutoCorrect( aCurSel, 0, !pEditView->IsInsertMode() );
+                            aCurSel = pImpEditEngine->AutoCorrect( aCurSel, 0, !pEditView->IsInsertMode(), pFrameWin );
                             aCurSel = pImpEditEngine->InsertLineBreak( aCurSel );
                         }
                         else
@@ -1110,7 +1110,7 @@ sal_Bool EditEngine::PostKeyEvent( const KeyEvent& rKeyEvent, EditView* pEditVie
                             if ( !aAutoText.Len() )
                             {
                                 if ( pImpEditEngine->GetStatus().DoAutoCorrect() )
-                                    aCurSel = pImpEditEngine->AutoCorrect( aCurSel, 0, !pEditView->IsInsertMode() );
+                                    aCurSel = pImpEditEngine->AutoCorrect( aCurSel, 0, !pEditView->IsInsertMode(), pFrameWin );
                                 aCurSel = pImpEditEngine->InsertParaBreak( aCurSel );
                             }
                             else
@@ -1158,7 +1158,8 @@ sal_Bool EditEngine::PostKeyEvent( const KeyEvent& rKeyEvent, EditView* pEditVie
                         ( SvxAutoCorrect::IsAutoCorrectChar( nCharCode ) ||
                           pAutoCorrect->HasRunNext() ) )
                     {
-                        aCurSel = pImpEditEngine->AutoCorrect( aCurSel, nCharCode, !pEditView->IsInsertMode() );
+                        aCurSel = pImpEditEngine->AutoCorrect(
+                            aCurSel, nCharCode, !pEditView->IsInsertMode(), pFrameWin );
                     }
                     else
                     {
diff --git a/editeng/source/editeng/editview.cxx b/editeng/source/editeng/editview.cxx
index decb2dd..4258d7c 100755
--- a/editeng/source/editeng/editview.cxx
+++ b/editeng/source/editeng/editview.cxx
@@ -60,6 +60,7 @@
 #include <helpid.hrc>
 #include <i18npool/lang.h>
 #include <vcl/menu.hxx>
+#include <vcl/window.hxx>
 #include <editeng/acorrcfg.hxx>
 #include <editeng/unolingu.hxx>
 #include <editeng/fontitem.hxx>
@@ -419,11 +420,11 @@ void EditView::InsertText( const XubString& rStr, sal_Bool bSelect )
     pImpEE->FormatAndUpdate( this );
 }
 
-sal_Bool EditView::PostKeyEvent( const KeyEvent& rKeyEvent )
+sal_Bool EditView::PostKeyEvent( const KeyEvent& rKeyEvent, Window* pFrameWin )
 {
     DBG_CHKTHIS( EditView, 0 );
     DBG_CHKOBJ( pImpEditView->pEditEngine, EditEngine, 0 );
-    return pImpEditView->PostKeyEvent( rKeyEvent );
+    return pImpEditView->PostKeyEvent( rKeyEvent, pFrameWin );
 }
 
 sal_Bool EditView::MouseButtonUp( const MouseEvent& rMouseEvent )
@@ -920,7 +921,7 @@ sal_Bool EditView::MatchGroup()
     return sal_False;
 }
 
-void EditView::CompleteAutoCorrect()
+void EditView::CompleteAutoCorrect( Window* pFrameWin )
 {
     DBG_CHKTHIS( EditView, 0 );
     DBG_CHKOBJ( pImpEditView->pEditEngine, EditEngine, 0 );
@@ -930,7 +931,7 @@ void EditView::CompleteAutoCorrect()
         EditSelection aSel = pImpEditView->GetEditSelection();
         aSel = PIMPEE->EndOfWord( aSel.Max() );
         // MT 06/00: Why pass EditSelection to AutoCorrect, not EditPaM?!
-        aSel = PIMPEE->AutoCorrect( aSel, 0, !IsInsertMode() );
+        aSel = PIMPEE->AutoCorrect( aSel, 0, !IsInsertMode(), pFrameWin );
         pImpEditView->SetEditSelection( aSel );
         if ( PIMPEE->IsModified() )
             PIMPEE->FormatAndUpdate( this );
diff --git a/editeng/source/editeng/impedit.cxx b/editeng/source/editeng/impedit.cxx
index dd38c4c..a6c4be7 100755
--- a/editeng/source/editeng/impedit.cxx
+++ b/editeng/source/editeng/impedit.cxx
@@ -993,7 +993,7 @@ Pair ImpEditView::Scroll( long ndX, long ndY, BYTE nRangeCheck )
     return Pair( nRealDiffX, nRealDiffY );
 }
 
-sal_Bool ImpEditView::PostKeyEvent( const KeyEvent& rKeyEvent )
+sal_Bool ImpEditView::PostKeyEvent( const KeyEvent& rKeyEvent, Window* pFrameWin )
 {
     BOOL bDone = FALSE;
 
@@ -1037,7 +1037,7 @@ sal_Bool ImpEditView::PostKeyEvent( const KeyEvent& rKeyEvent )
     }
 
     if( !bDone )
-        bDone = pEditEngine->PostKeyEvent( rKeyEvent, GetEditViewPtr() );
+        bDone = pEditEngine->PostKeyEvent( rKeyEvent, GetEditViewPtr(), pFrameWin );
 
     return bDone;
 }
diff --git a/editeng/source/editeng/impedit.hxx b/editeng/source/editeng/impedit.hxx
index 709475a..c8147d8 100755
--- a/editeng/source/editeng/impedit.hxx
+++ b/editeng/source/editeng/impedit.hxx
@@ -92,6 +92,8 @@ class TextRanger;
 class SvKeyValueIterator;
 class SvxForbiddenCharactersTable;
 class SvtCTLOptions;
+class Window;
+
 #include <editeng/SpellPortions.hxx>
 
 #include <editeng/eedata.hxx>
@@ -289,7 +291,7 @@ public:
 
     BOOL			IsVertical() const;
 
-    BOOL			PostKeyEvent( const KeyEvent& rKeyEvent );
+    BOOL			PostKeyEvent( const KeyEvent& rKeyEvent, Window* pFrameWin = NULL );
 
     BOOL			MouseButtonUp( const MouseEvent& rMouseEvent );
     BOOL			MouseButtonDown( const MouseEvent& rMouseEvent );
@@ -781,7 +783,7 @@ public:
     EditPaM			DeleteSelected( EditSelection aEditSelection);
     EditPaM         InsertText( const EditSelection& rCurEditSelection, sal_Unicode c, sal_Bool bOverwrite, sal_Bool bIsUserInput = sal_False );
     EditPaM			InsertText( EditSelection aCurEditSelection, const String& rStr );
-    EditPaM			AutoCorrect( const EditSelection& rCurEditSelection, sal_Unicode c, sal_Bool bOverwrite );
+    EditPaM			AutoCorrect( const EditSelection& rCurEditSelection, sal_Unicode c, bool bOverwrite, Window* pFrameWin = NULL );
     EditPaM			DeleteLeftOrRight( const EditSelection& rEditSelection, BYTE nMode, BYTE nDelMode = DELMODE_SIMPLE );
     EditPaM			InsertParaBreak( EditSelection aEditSelection );
     EditPaM			InsertLineBreak( EditSelection aEditSelection );
diff --git a/editeng/source/editeng/impedit2.cxx b/editeng/source/editeng/impedit2.cxx
index fedfb0d..401983d 100755
--- a/editeng/source/editeng/impedit2.cxx
+++ b/editeng/source/editeng/impedit2.cxx
@@ -2576,7 +2576,8 @@ void ImpEditEngine::ImpRemoveParagraph( USHORT nPara )
     }
 }
 
-EditPaM ImpEditEngine::AutoCorrect( const EditSelection& rCurSel, xub_Unicode c, BOOL bOverwrite )
+EditPaM ImpEditEngine::AutoCorrect( const EditSelection& rCurSel, xub_Unicode c,
+                                    bool bOverwrite, Window* pFrameWin )
 {
     EditSelection aSel( rCurSel );
 #ifndef SVX_LIGHT
@@ -2626,7 +2627,7 @@ EditPaM ImpEditEngine::AutoCorrect( const EditSelection& rCurSel, xub_Unicode c,
         ContentNode* pNode = aSel.Max().GetNode();
         USHORT nIndex = aSel.Max().GetIndex();
         EdtAutoCorrDoc aAuto( this, pNode, nIndex, c );
-        pAutoCorrect->AutoCorrect( aAuto, *pNode, nIndex, c, !bOverwrite );
+        pAutoCorrect->AutoCorrect( aAuto, *pNode, nIndex, c, !bOverwrite, pFrameWin );
         aSel.Max().SetIndex( aAuto.GetCursor() );
 
         // #i78661 since the SvxAutoCorrect object used here is
diff --git a/editeng/source/misc/acorrcfg.cxx b/editeng/source/misc/acorrcfg.cxx
index 3bf26ec..7bf1a3b 100644
--- a/editeng/source/misc/acorrcfg.cxx
+++ b/editeng/source/misc/acorrcfg.cxx
@@ -118,9 +118,10 @@ Sequence<OUString> 	SvxBaseAutoCorrCfg::GetPropertyNames()
         "SingleQuoteAtEnd",						// 13
         "ReplaceDoubleQuote",					// 14
         "DoubleQuoteAtStart",					// 15
-        "DoubleQuoteAtEnd"						// 16
+        "DoubleQuoteAtEnd",						// 16
+        "CorrectAccidentalCapsLock"             // 17
     };
-    const int nCount = 17;
+    const int nCount = 18;
     Sequence<OUString> aNames(nCount);
     OUString* pNames = aNames.getArray();
     for(int i = 0; i < nCount; i++)
@@ -220,6 +221,10 @@ void SvxBaseAutoCorrCfg::Load(sal_Bool bInit)
                         rParent.pAutoCorrect->SetEndDoubleQuote(
                             sal::static_int_cast< sal_Unicode >( nTemp ) );
                     break;//"DoubleQuoteAtEnd"
+                    case 17:
+                        if(*(sal_Bool*)pValues[nProp].getValue())
+                            nFlags |= CorrectCapsLock;
+                    break;//"CorrectAccidentalCapsLock"
                 }
             }
         }
@@ -324,6 +329,10 @@ void SvxBaseAutoCorrCfg::Commit()
             case 16:
                 pValues[nProp] <<= (sal_Int32) rParent.pAutoCorrect->GetEndDoubleQuote();
             break;//"DoubleQuoteAtEnd"
+            case 17:
+                bVal = 0 != (nFlags & CorrectCapsLock);
+                pValues[nProp].setValue(&bVal, rType);
+            break;//"CorrectAccidentalCapsLock"
         }
     }
     PutProperties(aNames, aValues);
diff --git a/editeng/source/misc/svxacorr.cxx b/editeng/source/misc/svxacorr.cxx
index 89a33ea..9977667 100644
--- a/editeng/source/misc/svxacorr.cxx
+++ b/editeng/source/misc/svxacorr.cxx
@@ -60,6 +60,7 @@
 #include <editeng/escpitem.hxx>
 #include <editeng/svxacorr.hxx>
 #include <editeng/unolingu.hxx>
+#include "vcl/window.hxx"
 #include <helpid.hrc>
 #include <comphelper/processfactory.hxx>
 #include <com/sun/star/xml/sax/InputSource.hpp>
@@ -336,7 +337,8 @@ long SvxAutoCorrect::GetDefaultFlags()
                     | SetINetAttr
                     | ChgQuotes
                     | SaveWordCplSttLst
-                    | SaveWordWrdSttLst;
+                    | SaveWordWrdSttLst
+                    | CorrectCapsLock;
     LanguageType eLang = GetAppLang();
     switch( eLang )
     {
@@ -1073,6 +1075,49 @@ BOOL SvxAutoCorrect::FnCptlSttSntnc( SvxAutoCorrDoc& rDoc,
 
     return bRet;
 }
+
+bool SvxAutoCorrect::FnCorrectCapsLock( SvxAutoCorrDoc& rDoc, const String& rTxt,
+                                        xub_StrLen nSttPos, xub_StrLen nEndPos,
+                                        LanguageType eLang )
+{
+    if (nEndPos - nSttPos < 2)
+        // string must be at least 2-character long.
+        return false;
+
+    CharClass& rCC = GetCharClass( eLang );
+
+    // Check the first 2 letters.
+    if ( !IsLowerLetter(rCC.getCharacterType(rTxt, nSttPos)) )
+        return false;
+
+    if ( !IsUpperLetter(rCC.getCharacterType(rTxt, nSttPos+1)) )
+        return false;
+
+    String aConverted;
+    aConverted.Append( rCC.upper(rTxt.GetChar(nSttPos)) );
+    aConverted.Append( rCC.lower(rTxt.GetChar(nSttPos+1)) );
+
+    for (xub_StrLen i = nSttPos+2; i < nEndPos; ++i)
+    {
+        if ( IsLowerLetter(rCC.getCharacterType(rTxt, i)) )
+            // A lowercase letter disqualifies the whole text.
+            return false;
+
+        if ( IsUpperLetter(rCC.getCharacterType(rTxt, i)) )
+            // Another uppercase letter.  Convert it.
+            aConverted.Append( rCC.lower(rTxt.GetChar(i)) );
+        else
+            // This is not an alphabetic letter.  Leave it as-is.
+            aConverted.Append(rTxt.GetChar(i));
+    }
+
+    // Replace the word.
+    rDoc.Delete(nSttPos, nEndPos);
+    rDoc.Insert(nSttPos, aConverted);
+
+    return true;
+}
+
 //The method below is renamed from _GetQuote to GetQuote by BerryJia for Bug95846 Time:2002-8-13 15:50
 sal_Unicode SvxAutoCorrect::GetQuote( sal_Unicode cInsChar, BOOL bSttQuote,
                                         LanguageType eLang ) const
@@ -1186,7 +1231,7 @@ String SvxAutoCorrect::GetQuote( SvxAutoCorrDoc& rDoc, xub_StrLen nInsPos,
 
 ULONG SvxAutoCorrect::AutoCorrect( SvxAutoCorrDoc& rDoc, const String& rTxt,
                                     xub_StrLen nInsPos, sal_Unicode cChar,
-                                    BOOL bInsert )
+                                    BOOL bInsert, Window* pFrameWin )
 {
     ULONG nRet = 0;
     bool bIsNextRun = bRunNext;
@@ -1364,7 +1409,19 @@ ULONG SvxAutoCorrect::AutoCorrect( SvxAutoCorrDoc& rDoc, const String& rTxt,
             ;
         else
         {
+            bool bLockKeyOn = pFrameWin && (pFrameWin->GetIndicatorState() & INDICATOR_CAPSLOCK);
+
             nRet = 0;
+            if ( bLockKeyOn && IsAutoCorrFlag( CorrectCapsLock ) &&
+                 FnCorrectCapsLock( rDoc, rTxt, nCapLttrPos, nInsPos, eLang ) )
+            {
+                // Correct accidental use of cAPS LOCK key (do this only when
+                // the caps or shift lock key is pressed).  Turn off the caps
+                // lock afterwords.
+                nRet |= CorrectCapsLock;
+                pFrameWin->SimulateKeyPress( KEY_CAPSLOCK );
+            }
+
             // Grossbuchstabe am Satz-Anfang ??
             if( IsAutoCorrFlag( CptlSttSntnc ) &&
                 FnCptlSttSntnc( rDoc, rTxt, TRUE, nCapLttrPos, nInsPos, eLang ) )
diff --git a/editeng/source/outliner/outlvw.cxx b/editeng/source/outliner/outlvw.cxx
index 4034b03..bf98d8b 100755
--- a/editeng/source/outliner/outlvw.cxx
+++ b/editeng/source/outliner/outlvw.cxx
@@ -103,7 +103,7 @@ void OutlinerView::Paint( const Rectangle& rRect )
     pEditView->Paint( rRect );
 }
 
-BOOL OutlinerView::PostKeyEvent( const KeyEvent& rKEvt )
+BOOL OutlinerView::PostKeyEvent( const KeyEvent& rKEvt, Window* pFrameWin )
 {
     DBG_CHKTHIS( OutlinerView, 0 );
 
@@ -268,7 +268,7 @@ BOOL OutlinerView::PostKeyEvent( const KeyEvent& rKEvt )
         }
     }
 
-    return bKeyProcessed ? TRUE : pEditView->PostKeyEvent( rKEvt );
+    return bKeyProcessed ? TRUE : pEditView->PostKeyEvent( rKEvt, pFrameWin );
 }
 
 
diff --git a/svx/source/svdraw/svdedxv.cxx b/svx/source/svdraw/svdedxv.cxx
index c494a5b..aaeb777 100644
--- a/svx/source/svdraw/svdedxv.cxx
+++ b/svx/source/svdraw/svdedxv.cxx
@@ -1160,7 +1160,7 @@ BOOL SdrObjEditView::KeyInput(const KeyEvent& rKEvt, Window* pWin)
                 ShowItemBrowser();
         }
 #endif
-        if (pTextEditOutlinerView->PostKeyEvent(rKEvt))
+        if (pTextEditOutlinerView->PostKeyEvent(rKEvt, pWin))
         {
             if( pMod /* && !pMod->IsChanged() */ )
             {
commit df1aef50340cffcb585d64377a0d2527b6fa7668
Author: Kohei Yoshida <kyoshida at novell.com>
Date:   Wed Sep 29 16:12:04 2010 -0400

    Ported autocorrect-accidental-caps-lock-officecfg.diff from ooo-build.

diff --git a/officecfg/registry/schema/org/openoffice/Office/Common.xcs b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
index ec18a75..113ecdc 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Common.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
@@ -1359,6 +1359,15 @@
 				</info>
 				<value>false</value>
 			</prop>
+            <prop oor:name="CorrectAccidentalCapsLock" oor:type="xs:boolean">
+                <!-- UIHints: Tools  AutoCorrect/AutoFormat  Options  Correct accidental use of cAPS LOCK key -->
+                <info>
+                    <author>Kohei Yoshida</author>
+                    <desc>Specifies whether or not to correct accidental use of CAPS lock key.</desc>
+                    <label>Correct accidental use of cAPS LOCK key</label>
+                </info>
+                <value>true</value>
+            </prop>
 			<prop oor:name="ReplaceSingleQuote" oor:type="xs:boolean">
 				<!-- OldPath: AutoCorrect/Options/All -->
 				<!-- OldLocation: Soffice.cfg -->
commit e59823557bdebe9c4a3baaf93097c4dd017a7766
Author: Kohei Yoshida <kyoshida at novell.com>
Date:   Wed Sep 29 14:29:56 2010 -0400

    Ported sc-default-delete-backspace-key.diff from ooo-build.

diff --git a/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu b/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu
index 179fc4b..2964bc4 100755
--- a/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu
@@ -377,7 +377,7 @@
     </node>
     <node oor:name="BACKSPACE" oor:op="replace">
      <prop oor:name="Command"><value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value>
-      <value xml:lang="en-US">.uno:ClearContents</value>
+      <value xml:lang="en-US">.uno:Delete</value>
      </prop>
     </node>
     <node oor:name="BACKSPACE_MOD1" oor:op="replace">
@@ -402,6 +402,11 @@
       <value xml:lang="en-US">.uno:SubScript</value>
      </prop>
     </node>
+    <node oor:name="DELETE" oor:op="replace">
+     <prop oor:name="Command"><value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value>
+      <value xml:lang="en-US">.uno:ClearContents</value>
+     </prop>
+    </node>
     <node oor:name="DIVIDE_MOD1" oor:op="replace">
      <prop oor:name="Command"><value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value>
       <value xml:lang="en-US">.uno:SelectArrayFormula</value>
commit 1a905e64cf1ab692654245dff2f448f9031f3487
Author: Kohei Yoshida <kyoshida at novell.com>
Date:   Wed Sep 29 14:25:29 2010 -0400

    Ported sfx2-remove-check-update-on-fileload.diff from ooo-build.

diff --git a/sfx2/source/doc/objstor.cxx b/sfx2/source/doc/objstor.cxx
index 234c17b..6c36c14 100644
--- a/sfx2/source/doc/objstor.cxx
+++ b/sfx2/source/doc/objstor.cxx
@@ -796,6 +796,7 @@ sal_Bool SfxObjectShell::DoLoad( SfxMedium *pMed )
             }
         }
 
+#if 0
         if ( pMedium->HasStorage_Impl() )
         {
             uno::Reference< XInteractionHandler > xHandler( pMedium->GetInteractionHandler() );
@@ -849,6 +850,7 @@ sal_Bool SfxObjectShell::DoLoad( SfxMedium *pMed )
                 }
             }
         }
+#endif
     }
     else
         GetpApp()->HideStatusText();


More information about the ooo-build-commit mailing list