[Libreoffice-commits] core.git: Branch 'aoo/trunk' - sw/source
sw/source/core/access/acccontext.cxx |3 ++- sw/source/core/access/accpara.cxx|3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) New commits: commit 5802b1bd0725151d3fa0ea311cf4405fb58ff409 Author: Steve Yin Date: Wed Dec 4 10:09:58 2013 + i121761 - [ia2] Writer crashes on exit with an msvcrt runtime error diff --git a/sw/source/core/access/acccontext.cxx b/sw/source/core/access/acccontext.cxx index 039512a..da80a18 100644 --- a/sw/source/core/access/acccontext.cxx +++ b/sw/source/core/access/acccontext.cxx @@ -588,7 +588,8 @@ SwAccessibleContext::SwAccessibleContext( SwAccessibleMap *pM, SwAccessibleContext::~SwAccessibleContext() { -vos::OGuard aGuard(Application::GetSolarMutex()); +if(Application::GetUnoWrapper()) +vos::OGuard aGuard(Application::GetSolarMutex()); DBG_MSG_CD( "destructed" ) RemoveFrmFromAccessibleMap(); diff --git a/sw/source/core/access/accpara.cxx b/sw/source/core/access/accpara.cxx index ac0c5f1..5dff84d 100644 --- a/sw/source/core/access/accpara.cxx +++ b/sw/source/core/access/accpara.cxx @@ -594,7 +594,8 @@ SwAccessibleParagraph::SwAccessibleParagraph( SwAccessibleParagraph::~SwAccessibleParagraph() { -vos::OGuard aGuard(Application::GetSolarMutex()); +if(Application::GetUnoWrapper()) +vos::OGuard aGuard(Application::GetSolarMutex()); delete pPortionData; delete pHyperTextData; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - extensions/source
extensions/source/ole/oleobjw.cxx | 73 ++ 1 file changed, 43 insertions(+), 30 deletions(-) New commits: commit b0fa50814d9f5b5900df7bd8c00b54d57a010a20 Author: Steve Yin Date: Mon Dec 9 06:15:26 2013 + Bug 123816 - Cannot send email with attachment via VBA code taking Notes as mail application diff --git a/extensions/source/ole/oleobjw.cxx b/extensions/source/ole/oleobjw.cxx index b4688c0..578c308 100644 --- a/extensions/source/ole/oleobjw.cxx +++ b/extensions/source/ole/oleobjw.cxx @@ -2333,56 +2333,69 @@ void IUnknownWrapper_Impl::getPropDesc(const OUString & sFuncName, FUNCDESC ** p //else no entry for sFuncName, pFuncDesc will not be filled in } -VARTYPE IUnknownWrapper_Impl::getElementTypeDesc(const TYPEDESC *desc) +VARTYPE lcl_getUserDefinedElementType( ITypeInfo* pTypeInfo, const DWORD nHrefType ) { VARTYPE _type( VT_NULL ); - -if (desc->vt == VT_PTR) -{ -_type = getElementTypeDesc(desc->lptdesc); -_type |= VT_BYREF; -} -else if (desc->vt == VT_SAFEARRAY) +if ( pTypeInfo ) { -_type = getElementTypeDesc(desc->lptdesc); -_type |= VT_ARRAY; -} -else if (desc->vt == VT_USERDEFINED) -{ -ITypeInfo* thisInfo = getTypeInfo(); //kept by this instance -CComPtr spRefInfo; -thisInfo->GetRefTypeInfo(desc->hreftype, & spRefInfo.p); -if (spRefInfo) +CComPtr spRefInfo; +pTypeInfo->GetRefTypeInfo( nHrefType, &spRefInfo.p ); +if ( spRefInfo ) { -TypeAttr attr(spRefInfo); -spRefInfo->GetTypeAttr( & attr); -if (attr->typekind == TKIND_ENUM) +TypeAttr attr( spRefInfo ); +spRefInfo->GetTypeAttr( &attr ); +if ( attr->typekind == TKIND_ENUM ) { -//We use the type of the first enum value. -if (attr->cVars == 0) +// We use the type of the first enum value. +if ( attr->cVars == 0 ) { -throw BridgeRuntimeError(OUSTR("[automation bridge] Could " -"not obtain type description")); +throw BridgeRuntimeError(OUSTR("[automation bridge] Could not obtain type description")); } -VarDesc var(spRefInfo); -spRefInfo->GetVarDesc(0, & var); +VarDesc var( spRefInfo ); +spRefInfo->GetVarDesc( 0, &var ); _type = var->lpvarValue->vt; } -else if (attr->typekind == TKIND_INTERFACE) +else if ( attr->typekind == TKIND_INTERFACE ) { _type = VT_UNKNOWN; } -else if (attr->typekind == TKIND_DISPATCH) +else if ( attr->typekind == TKIND_DISPATCH ) { _type = VT_DISPATCH; } +else if ( attr->typekind == TKIND_ALIAS ) +{ +// TKIND_ALIAS is a type that is an alias for another type. So get that alias type. +_type = lcl_getUserDefinedElementType( pTypeInfo, attr->tdescAlias.hreftype ); +} else { -throw BridgeRuntimeError(OUSTR("[automation bridge] " -"Unhandled user defined type.")); +throw BridgeRuntimeError( OUSTR("[automation bridge] Unhandled user defined type.") ); } } } +return _type; +} + +VARTYPE IUnknownWrapper_Impl::getElementTypeDesc(const TYPEDESC *desc) +{ +VARTYPE _type( VT_NULL ); + +if (desc->vt == VT_PTR) +{ +_type = getElementTypeDesc(desc->lptdesc); +_type |= VT_BYREF; +} +else if (desc->vt == VT_SAFEARRAY) +{ +_type = getElementTypeDesc(desc->lptdesc); +_type |= VT_ARRAY; +} +else if (desc->vt == VT_USERDEFINED) +{ +ITypeInfo* thisInfo = getTypeInfo(); //kept by this instance +_type = lcl_getUserDefinedElementType( thisInfo, desc->hreftype ); +} else { _type = desc->vt; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - editeng/source
editeng/source/accessibility/AccessibleEditableTextPara.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 552e71c2482b5911ac485c9331a4f354ba7150b5 Author: Steve Yin Date: Tue Dec 10 07:58:01 2013 + Bug 123620 - [ia2] IAccessibleHypertext::hyperlinkIndex returns 0 when editing a cell/object where there is no link diff --git a/editeng/source/accessibility/AccessibleEditableTextPara.cxx b/editeng/source/accessibility/AccessibleEditableTextPara.cxx index a9cc3b16..26139e7 100644 --- a/editeng/source/accessibility/AccessibleEditableTextPara.cxx +++ b/editeng/source/accessibility/AccessibleEditableTextPara.cxx @@ -3005,7 +3005,7 @@ namespace accessibility //const sal_uInt16 nEEIndex = aIndex.GetEEIndex(); const sal_uInt16 nEEIndex = rT.CalcEditEngineIndex( nPara, nCharIndex ); -sal_Int32 nHLIndex = 0; +sal_Int32 nHLIndex = -1; //i123620 sal_uInt16 nHyperLink = 0; sal_uInt16 nFields = rT.GetFieldCount( nPara ); for ( sal_uInt16 n = 0; n < nFields; n++ ) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: editeng/source
editeng/source/accessibility/AccessibleEditableTextPara.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit e446b4a598acf0e76eebf99d33d6691741c4cbba Author: Steve Yin Date: Tue Dec 10 07:58:01 2013 + Resolves: #i123620# IAccessibleHypertext::hyperlinkIndex returns 0... when editing a cell/object where there is no link (cherry picked from commit 552e71c2482b5911ac485c9331a4f354ba7150b5) Change-Id: I9be20b045d3472f15c98352928d45a1349cec5c4 diff --git a/editeng/source/accessibility/AccessibleEditableTextPara.cxx b/editeng/source/accessibility/AccessibleEditableTextPara.cxx index 814b8ba..b041172 100644 --- a/editeng/source/accessibility/AccessibleEditableTextPara.cxx +++ b/editeng/source/accessibility/AccessibleEditableTextPara.cxx @@ -2907,7 +2907,7 @@ namespace accessibility //const sal_uInt16 nEEIndex = aIndex.GetEEIndex(); const sal_uInt16 nEEIndex = rT.CalcEditEngineIndex( nPara, nCharIndex ); -sal_Int32 nHLIndex = 0; +sal_Int32 nHLIndex = -1; //i123620 sal_uInt16 nHyperLink = 0; sal_uInt16 nFields = rT.GetFieldCount( nPara ); for ( sal_uInt16 n = 0; n < nFields; n++ ) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - svx/source
svx/source/accessibility/AccessibleShape.cxx | 17 +++-- svx/source/table/accessibletableshape.cxx|2 +- 2 files changed, 8 insertions(+), 11 deletions(-) New commits: commit 6f53c4f2f46691d41ccf2c2a99ae40105606e489 Author: Steve Yin Date: Fri Dec 13 05:20:32 2013 + fixes for issues checked out by coverity diff --git a/svx/source/accessibility/AccessibleShape.cxx b/svx/source/accessibility/AccessibleShape.cxx index c34397d..ca55eb2 100644 --- a/svx/source/accessibility/AccessibleShape.cxx +++ b/svx/source/accessibility/AccessibleShape.cxx @@ -436,18 +436,17 @@ uno::Reference SAL_CALL { ::osl::MutexGuard aGuard (maMutex); ::utl::AccessibleRelationSetHelper* pRelationSet = new utl::AccessibleRelationSetHelper; -uno::Sequence< uno::Reference< uno::XInterface > > aSequence(1); -aSequence[0] = mpParent->GetAccessibleCaption(mxShape); //this mxshape is the captioned shape, only for sw -if(aSequence[0].get()) -{ -pRelationSet->AddRelation( -AccessibleRelation( AccessibleRelationType::DESCRIBED_BY, aSequence ) ); -} - if (pRelationSet != NULL) { +uno::Sequence< uno::Reference< uno::XInterface > > aSequence(1); +aSequence[0] = mpParent->GetAccessibleCaption(mxShape); +if(aSequence[0].get()) +{ +pRelationSet->AddRelation( +AccessibleRelation( AccessibleRelationType::DESCRIBED_BY, aSequence ) ); +} return uno::Reference ( new ::utl::AccessibleRelationSetHelper (*pRelationSet)); } @@ -455,8 +454,6 @@ uno::Reference SAL_CALL { return uno::Reference(NULL); } - -return uno::Reference(); } /** Return a copy of the state set. diff --git a/svx/source/table/accessibletableshape.cxx b/svx/source/table/accessibletableshape.cxx index d148740..eba58ba 100644 --- a/svx/source/table/accessibletableshape.cxx +++ b/svx/source/table/accessibletableshape.cxx @@ -328,6 +328,7 @@ void SAL_CALL AccessibleTableShapeImpl::disposing( const EventObject& /*Source*/ AccessibleTableShape::AccessibleTableShape( const AccessibleShapeInfo& rShapeInfo, const AccessibleShapeTreeInfo& rShapeTreeInfo) : AccessibleTableShape_Base(rShapeInfo, rShapeTreeInfo) , mxImpl( new AccessibleTableShapeImpl( maShapeTreeInfo ) ) +, mnPreviousSelectionCount(0) { } @@ -343,7 +344,6 @@ void AccessibleTableShape::Init() { try { -mnPreviousSelectionCount = 0; Reference< XPropertySet > xSet( mxShape, UNO_QUERY_THROW ); Reference< XTable > xTable( xSet->getPropertyValue(C2U("Model")), UNO_QUERY_THROW ); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: svx/source
svx/source/accessibility/AccessibleShape.cxx | 15 +++ svx/source/table/accessibletableshape.cxx|2 +- 2 files changed, 8 insertions(+), 9 deletions(-) New commits: commit e9c08cfed475a61ef5612262a43eab27c96fc9bd Author: Steve Yin Date: Fri Dec 13 05:20:32 2013 + fixes for issues checked out by coverity (cherry picked from commit 6f53c4f2f46691d41ccf2c2a99ae40105606e489) Change-Id: I76e21409fee4f39bd6f048636e4fbc392807a486 diff --git a/svx/source/accessibility/AccessibleShape.cxx b/svx/source/accessibility/AccessibleShape.cxx index 4da0e3f..a72ebef 100644 --- a/svx/source/accessibility/AccessibleShape.cxx +++ b/svx/source/accessibility/AccessibleShape.cxx @@ -422,18 +422,17 @@ uno::Reference SAL_CALL { ::osl::MutexGuard aGuard (maMutex); ::utl::AccessibleRelationSetHelper* pRelationSet = new utl::AccessibleRelationSetHelper; -uno::Sequence< uno::Reference< uno::XInterface > > aSequence(1); -aSequence[0] = mpParent->GetAccessibleCaption(mxShape); //this mxshape is the captioned shape, only for sw -if(aSequence[0].get()) -{ -pRelationSet->AddRelation( -AccessibleRelation( AccessibleRelationType::DESCRIBED_BY, aSequence ) ); -} - if (pRelationSet != NULL) { +uno::Sequence< uno::Reference< uno::XInterface > > aSequence(1); +aSequence[0] = mpParent->GetAccessibleCaption(mxShape); +if(aSequence[0].get()) +{ +pRelationSet->AddRelation( +AccessibleRelation( AccessibleRelationType::DESCRIBED_BY, aSequence ) ); +} return uno::Reference ( new ::utl::AccessibleRelationSetHelper (*pRelationSet)); } diff --git a/svx/source/table/accessibletableshape.cxx b/svx/source/table/accessibletableshape.cxx index 9d1ab93..d0cddf6 100644 --- a/svx/source/table/accessibletableshape.cxx +++ b/svx/source/table/accessibletableshape.cxx @@ -313,6 +313,7 @@ void SAL_CALL AccessibleTableShapeImpl::disposing( const EventObject& /*Source*/ AccessibleTableShape::AccessibleTableShape( const AccessibleShapeInfo& rShapeInfo, const AccessibleShapeTreeInfo& rShapeTreeInfo) : AccessibleTableShape_Base(rShapeInfo, rShapeTreeInfo) , mxImpl( new AccessibleTableShapeImpl( maShapeTreeInfo ) ) +, mnPreviousSelectionCount(0) { } @@ -328,7 +329,6 @@ void AccessibleTableShape::Init() { try { -mnPreviousSelectionCount = 0; Reference< XPropertySet > xSet( mxShape, UNO_QUERY_THROW ); Reference< XTable > xTable( xSet->getPropertyValue("Model"), UNO_QUERY_THROW ); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - oox/source
oox/source/xls/worksheethelper.cxx | 20 1 file changed, 20 insertions(+) New commits: commit 81912caea58b89f9490ba4b9e3a3127071e23190 Author: Steve Yin Date: Fri Dec 27 05:30:08 2013 + Bug 123910 - The reference in validation condition change to #REF! in exported xls file diff --git a/oox/source/xls/worksheethelper.cxx b/oox/source/xls/worksheethelper.cxx index 17dff76..8174341 100644 --- a/oox/source/xls/worksheethelper.cxx +++ b/oox/source/xls/worksheethelper.cxx @@ -1073,6 +1073,26 @@ void WorksheetGlobals::finalizeValidationRanges() const { PropertySet aValProps( xValidation ); +try +{ +sal_Int32 nIndex = 0; +OUString aToken = aIt->msRef.getToken( 0, ' ', nIndex ); + +Reference xSheet = getSheetFromDoc( getCurrentSheetIndex() ); +Reference xDBCellRange; +Reference xCell; +xDBCellRange = xSheet->getCellRangeByName( aToken ); + +xCell = xDBCellRange->getCellByPosition( 0, 0 ); +Reference xCellAddressable( xCell, UNO_QUERY_THROW ); +CellAddress aFirstCell = xCellAddressable->getCellAddress(); +Reference xCondition( xValidation, UNO_QUERY_THROW ); +xCondition->setSourcePosition( aFirstCell ); +} +catch( Exception& ) +{ +} + // convert validation type to API enum ValidationType eType = ValidationType_ANY; switch( aIt->mnType ) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - oox/inc oox/source
oox/inc/oox/xls/worksheethelper.hxx |1 + oox/source/xls/worksheetfragment.cxx |1 + oox/source/xls/worksheethelper.cxx | 20 3 files changed, 22 insertions(+) New commits: commit 7e7e0c820f442e3a7ee1b5f6ad80fe7999a75f0b Author: Steve Yin Date: Mon Dec 30 05:52:36 2013 + Bug 123910 - The reference in validation condition change to #REF! in exported xls file Build break fix diff --git a/oox/inc/oox/xls/worksheethelper.hxx b/oox/inc/oox/xls/worksheethelper.hxx index f32f53a..c0b8b2e 100644 --- a/oox/inc/oox/xls/worksheethelper.hxx +++ b/oox/inc/oox/xls/worksheethelper.hxx @@ -154,6 +154,7 @@ struct ValidationModel ApiCellRangeListmaRanges; ApiTokenSequencemaTokens1; ApiTokenSequencemaTokens2; +::rtl::OUString msRef; ::rtl::OUString maInputTitle; ::rtl::OUString maInputMessage; ::rtl::OUString maErrorTitle; diff --git a/oox/source/xls/worksheetfragment.cxx b/oox/source/xls/worksheetfragment.cxx index 5c28866..cff0363 100644 --- a/oox/source/xls/worksheetfragment.cxx +++ b/oox/source/xls/worksheetfragment.cxx @@ -158,6 +158,7 @@ void DataValidationsContext::importDataValidation( const AttributeList& rAttribs { mxValModel.reset( new ValidationModel ); getAddressConverter().convertToCellRangeList( mxValModel->maRanges, rAttribs.getString( XML_sqref, OUString() ), getSheetIndex(), true ); +mxValModel->msRef = rAttribs.getString( XML_sqref, OUString() ); mxValModel->maInputTitle = rAttribs.getXString( XML_promptTitle, OUString() ); mxValModel->maInputMessage = rAttribs.getXString( XML_prompt, OUString() ); mxValModel->maErrorTitle = rAttribs.getXString( XML_errorTitle, OUString() ); diff --git a/oox/source/xls/worksheethelper.cxx b/oox/source/xls/worksheethelper.cxx index 8174341..0f84cad 100644 --- a/oox/source/xls/worksheethelper.cxx +++ b/oox/source/xls/worksheethelper.cxx @@ -1093,6 +1093,26 @@ void WorksheetGlobals::finalizeValidationRanges() const { } +try +{ +sal_Int32 nIndex = 0; +OUString aToken = aIt->msRef.getToken( 0, ' ', nIndex ); + +Reference xSheet = getSheetFromDoc( getCurrentSheetIndex() ); +Reference xDBCellRange; +Reference xCell; +xDBCellRange = xSheet->getCellRangeByName( aToken ); + +xCell = xDBCellRange->getCellByPosition( 0, 0 ); +Reference xCellAddressable( xCell, UNO_QUERY_THROW ); +CellAddress aFirstCell = xCellAddressable->getCellAddress(); +Reference xCondition( xValidation, UNO_QUERY_THROW ); +xCondition->setSourcePosition( aFirstCell ); +} +catch( Exception& ) +{ +} + // convert validation type to API enum ValidationType eType = ValidationType_ANY; switch( aIt->mnType ) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/source
sc/source/filter/inc/worksheethelper.hxx |1 + sc/source/filter/oox/worksheetfragment.cxx |1 + sc/source/filter/oox/worksheethelper.cxx | 20 3 files changed, 22 insertions(+) New commits: commit 5249a2022aa7152cba5bb6541eade43b9e77b755 Author: Steve Yin Date: Fri Dec 27 05:30:08 2013 + Resolves: #i123910# reference in validation condition changed... to #REF! in exported xls file (cherry picked from commit 81912caea58b89f9490ba4b9e3a3127071e23190) Change-Id: Iab560847f4528ffdcc68b365951cc6c55ca9075c diff --git a/sc/source/filter/inc/worksheethelper.hxx b/sc/source/filter/inc/worksheethelper.hxx index 9e23161..d93ccc4 100644 --- a/sc/source/filter/inc/worksheethelper.hxx +++ b/sc/source/filter/inc/worksheethelper.hxx @@ -152,6 +152,7 @@ struct ValidationModel ApiCellRangeListmaRanges; ApiTokenSequencemaTokens1; ApiTokenSequencemaTokens2; +OUString msRef; OUString maInputTitle; OUString maInputMessage; OUString maErrorTitle; diff --git a/sc/source/filter/oox/worksheetfragment.cxx b/sc/source/filter/oox/worksheetfragment.cxx index 927eb2b..81b6411b 100644 --- a/sc/source/filter/oox/worksheetfragment.cxx +++ b/sc/source/filter/oox/worksheetfragment.cxx @@ -147,6 +147,7 @@ void DataValidationsContext::importDataValidation( const AttributeList& rAttribs { mxValModel.reset( new ValidationModel ); getAddressConverter().convertToCellRangeList( mxValModel->maRanges, rAttribs.getString( XML_sqref, OUString() ), getSheetIndex(), true ); +mxValModel->msRef = rAttribs.getString( XML_sqref, OUString() ); mxValModel->maInputTitle = rAttribs.getXString( XML_promptTitle, OUString() ); mxValModel->maInputMessage = rAttribs.getXString( XML_prompt, OUString() ); mxValModel->maErrorTitle = rAttribs.getXString( XML_errorTitle, OUString() ); diff --git a/sc/source/filter/oox/worksheethelper.cxx b/sc/source/filter/oox/worksheethelper.cxx index 5974560..47b759d 100644 --- a/sc/source/filter/oox/worksheethelper.cxx +++ b/sc/source/filter/oox/worksheethelper.cxx @@ -1103,6 +1103,26 @@ void WorksheetGlobals::finalizeValidationRanges() const { PropertySet aValProps( xValidation ); +try +{ +sal_Int32 nIndex = 0; +OUString aToken = aIt->msRef.getToken( 0, ' ', nIndex ); + +Reference xSheet = getSheetFromDoc( getCurrentSheetIndex() ); +Reference xDBCellRange; +Reference xCell; +xDBCellRange = xSheet->getCellRangeByName( aToken ); + +xCell = xDBCellRange->getCellByPosition( 0, 0 ); +Reference xCellAddressable( xCell, UNO_QUERY_THROW ); +CellAddress aFirstCell = xCellAddressable->getCellAddress(); +Reference xCondition( xValidation, UNO_QUERY_THROW ); +xCondition->setSourcePosition( aFirstCell ); +} +catch(const Exception&) +{ +} + // convert validation type to API enum ValidationType eType = ValidationType_ANY; switch( aIt->mnType ) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'feature/ia2.2'
New branch 'feature/ia2.2' available with the following commits: commit 4bb0e8c032ed027025012611262233d0a6ce7512 Author: Steve Yin Date: Thu Nov 14 08:18:05 2013 + Integrate branch of IAccessible2 Just the winaccessibility directory initially. Change-Id: Ia21abb8d7088646ad6c1f83b3a03e7add716b0c0 ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: 2 commits - include/vcl vcl/inc vcl/source
include/vcl/combobox.hxx|5 ++-- include/vcl/lstbox.hxx |4 ++- include/vcl/menu.hxx|9 +++ vcl/inc/ilstbox.hxx | 14 ++- vcl/source/control/combobox.cxx | 12 +- vcl/source/control/edit.cxx | 31 - vcl/source/control/ilstbox.cxx | 21 + vcl/source/control/lstbox.cxx | 33 +++ vcl/source/control/morebtn.cxx |5 +--- vcl/source/control/tabctrl.cxx |3 -- vcl/source/window/btndlg.cxx|7 + vcl/source/window/dlgctrl.cxx | 10 ++-- vcl/source/window/menu.cxx | 48 +++- vcl/source/window/toolbox.cxx |5 +++- vcl/source/window/toolbox2.cxx |3 +- 15 files changed, 177 insertions(+), 33 deletions(-) New commits: commit 79c0027c88fb64ffa7bbefcab2e291852733c223 Author: Steve Yin Date: Mon Nov 25 13:15:27 2013 + Integrate branch of IAccessible2 Change-Id: I8c2fea0367ebfa53ce5e109ef48fd661cbfb78b3 diff --git a/include/vcl/combobox.hxx b/include/vcl/combobox.hxx index 6f9c534..76533ab 100644 --- a/include/vcl/combobox.hxx +++ b/include/vcl/combobox.hxx @@ -74,6 +74,7 @@ private: DECL_DLLPRIVATE_LINK( ImplSelectionChangedHdl, void* ); DECL_DLLPRIVATE_LINK( ImplUserDrawHdl, UserDrawEvent* ); DECL_DLLPRIVATE_LINK( ImplAutocompleteHdl, Edit* ); +DECL_DLLPRIVATE_LINK( ImplListItemSelectHdl , void* ); protected: using Window::ImplInit; @@ -178,8 +179,8 @@ public: voidSetMRUEntries( const OUString& rEntries, sal_Unicode cSep = ';' ); OUStringGetMRUEntries( sal_Unicode cSep = ';' ) const; voidSetMaxMRUCount( sal_uInt16 n ); -sal_uInt16 GetMaxMRUCount() const; - +sal_uInt16 GetMaxMRUCount() const; +sal_uInt16 GetMRUCount() const; voidSetEntryData( sal_uInt16 nPos, void* pNewData ); void* GetEntryData( sal_uInt16 nPos ) const; diff --git a/include/vcl/lstbox.hxx b/include/vcl/lstbox.hxx index 6b3ab8c..cc63c2f 100644 --- a/include/vcl/lstbox.hxx +++ b/include/vcl/lstbox.hxx @@ -63,7 +63,8 @@ private: DECL_DLLPRIVATE_LINK( ImplPopupModeEndHdl, void* ); DECL_DLLPRIVATE_LINK( ImplSelectionChangedHdl, void* ); DECL_DLLPRIVATE_LINK( ImplUserDrawHdl, UserDrawEvent* ); - +DECL_DLLPRIVATE_LINK( ImplFocusHdl, void* ); +DECL_DLLPRIVATE_LINK( ImplListItemSelectHdl, void* ); protected: using Window::ImplInit; SAL_DLLPRIVATE voidImplInit( Window* pParent, WinBits nStyle ); @@ -198,6 +199,7 @@ public: SizeCalcSize( sal_uInt16 nColumns, sal_uInt16 nLines ) const; voidGetMaxVisColumnsAndLines( sal_uInt16& rnCols, sal_uInt16& rnLines ) const; +sal_uInt16 GetMRUCount() const; sal_uInt16 GetDisplayLineCount() const; voidEnableMirroring(); diff --git a/include/vcl/menu.hxx b/include/vcl/menu.hxx index 637c701..5131872 100644 --- a/include/vcl/menu.hxx +++ b/include/vcl/menu.hxx @@ -134,6 +134,8 @@ private: sal_uInt16 nDefaultItem; // Id of default item sal_uInt16 nSelectedId; +sal_uInt16 nHighlightedItem; + // for output: sal_uInt16 nImgOrChkPos; sal_uInt16 nTextPos; @@ -234,6 +236,13 @@ public: sal_uInt16 GetCurItemId() const; OString GetCurItemIdent() const; +voidSetHightlightItem(sal_uInt16 nHighlightedItem); +sal_uInt16 GetHighlightItem() const; + +OUStringGetItemAccKeyStrFromPos(sal_uInt16 nPos) const; + +sal_BoolIsTemporaryItemFromPos(sal_uInt16 nPos) const; + voidSetDefaultItem( sal_uInt16 nItemId ){ nDefaultItem = nItemId; } sal_uInt16 GetDefaultItem() const { return nDefaultItem; } diff --git a/vcl/inc/ilstbox.hxx b/vcl/inc/ilstbox.hxx index 315f4ce..18dfee8 100644 --- a/vcl/inc/ilstbox.hxx +++ b/vcl/inc/ilstbox.hxx @@ -253,6 +253,8 @@ private: LinkmaDoubleClickHdl; LinkmaUserDrawHdl; LinkmaMRUChangedHdl; +LinkmaFocusHdl; +LinkmaListItemSelectHdl; ::vcl::QuickSelectionEngine maQuickSelectionEngine; @@ -266,7 +268,7 @@ protected: virtual voidGetFocus(); virtual voidLoseFocus(); -sal_BoolSelectEntries( sal_uInt16 nSelect, LB_EVENT_TYPE eLET, sal_Bool bShift = sal_False, sal_Bool bCtrl = sal_False ); +sal_BoolSelectEntries( sal_uInt16 nSelect, LB_EVENT_TYPE eLET, sal_Bool bShift = sal_False, sal_Bool bCtrl = sal_False, sal_Bool bSelectPosChange = sal_False ); voidImplPaint( sal_uInt16 nPos, sal_Bool bErase = sal_False, bool bLayout = false ); voidImplDoPaint( cons
[Libreoffice-commits] core.git: 2 commits - include/svl include/toolkit svl/source toolkit/source
include/svl/smplhint.hxx |6 +-- include/toolkit/awt/vclxwindows.hxx|4 ++ svl/source/notify/smplhint.cxx | 10 -- toolkit/source/awt/vclxaccessiblecomponent.cxx | 39 - toolkit/source/awt/vclxwindows.cxx | 22 ++ 5 files changed, 67 insertions(+), 14 deletions(-) New commits: commit 968a76817340cafaeb239b71164974e3c0c43f04 Author: Steve Yin Date: Tue Nov 26 10:51:41 2013 + Integrate branch of IAccessible2 Change-Id: I95b681a7aa171c321a876e6a38392e30583d7a5b diff --git a/include/toolkit/awt/vclxwindows.hxx b/include/toolkit/awt/vclxwindows.hxx index 74b6482..641383d 100644 --- a/include/toolkit/awt/vclxwindows.hxx +++ b/include/toolkit/awt/vclxwindows.hxx @@ -961,6 +961,8 @@ public: class TOOLKIT_DLLPUBLIC VCLXDateField : public ::com::sun::star::awt::XDateField, public VCLXFormattedSpinField { +protected: +virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > CreateAccessibleContext(); public: VCLXDateField(); ~VCLXDateField(); @@ -1007,6 +1009,8 @@ public: class VCLXTimeField : public ::com::sun::star::awt::XTimeField, public VCLXFormattedSpinField { +protected: +virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > CreateAccessibleContext(); public: VCLXTimeField(); ~VCLXTimeField(); diff --git a/toolkit/source/awt/vclxaccessiblecomponent.cxx b/toolkit/source/awt/vclxaccessiblecomponent.cxx index e1be4c1..c087b14 100644 --- a/toolkit/source/awt/vclxaccessiblecomponent.cxx +++ b/toolkit/source/awt/vclxaccessiblecomponent.cxx @@ -31,6 +31,7 @@ #include #include #include +#include #include #include #include @@ -436,13 +437,46 @@ void VCLXAccessibleComponent::FillAccessibleStateSet( utl::AccessibleStateSetHel if ( pWindow->GetStyle() & WB_SIZEABLE ) rStateSet.AddState( accessibility::AccessibleStateType::RESIZABLE ); - +// 6. frame doesn't have MOVABLE state +// 10. for password text, where is the sensitive state? +if( ( getAccessibleRole() == accessibility::AccessibleRole::FRAME ||getAccessibleRole() == accessibility::AccessibleRole::DIALOG )&& pWindow->GetStyle() & WB_MOVEABLE ) +rStateSet.AddState( accessibility::AccessibleStateType::MOVEABLE ); if( pWindow->IsDialog() ) { Dialog *pDlg = static_cast< Dialog* >( pWindow ); if( pDlg->IsInExecute() ) rStateSet.AddState( accessibility::AccessibleStateType::MODAL ); } +//If a combobox or list's edit child isn't read-only,EDITABLE state +//should be set. +if( pWindow && pWindow->GetType() == WINDOW_COMBOBOX ) +{ +if( !( pWindow->GetStyle() & WB_READONLY) || +!((Edit*)pWindow)->IsReadOnly() ) +rStateSet.AddState( accessibility::AccessibleStateType::EDITABLE ); +} + +Window* pChild = pWindow->GetWindow( WINDOW_FIRSTCHILD ); + +while( pWindow && pChild ) +{ +Window* pWinTemp = pChild->GetWindow( WINDOW_FIRSTCHILD ); +if( pWinTemp && pWinTemp->GetType() == WINDOW_EDIT ) +{ +if( !( pWinTemp->GetStyle() & WB_READONLY) || +!((Edit*)pWinTemp)->IsReadOnly() ) +rStateSet.AddState( accessibility::AccessibleStateType::EDITABLE ); +break; +} +if( pChild->GetType() == WINDOW_EDIT ) +{ +if( !( pChild->GetStyle() & WB_READONLY) || +!((Edit*)pChild)->IsReadOnly()) +rStateSet.AddState( accessibility::AccessibleStateType::EDITABLE ); +break; +} +pChild = pChild->GetWindow( WINDOW_NEXT ); +} } else { @@ -767,6 +801,9 @@ sal_Int32 SAL_CALL VCLXAccessibleComponent::getForeground( ) throw (uno::Runtim else aFont = pWindow->GetFont(); nColor = aFont.GetColor().GetColor(); +// COL_AUTO is not very meaningful for AT +if ( nColor == (sal_Int32)COL_AUTO) +nColor = pWindow->GetTextColor().GetColor(); } } diff --git a/toolkit/source/awt/vclxwindows.cxx b/toolkit/source/awt/vclxwindows.cxx index 84e0f66..e7a2e84 100644 --- a/toolkit/source/awt/vclxwindows.cxx +++ b/toolkit/source/awt/vclxwindows.cxx @@ -4798,6 +4798,17 @@ VCLXDateField::~VCLXDateField() { } +//change the window type here to match the role +::com::sun::star::uno::Reference< ::com::sun
[Libreoffice-commits] core.git: formula/source
formula/source/ui/dlg/ControlHelper.hxx |1 + formula/source/ui/dlg/formdlgs.src |3 ++- formula/source/ui/dlg/funcutl.cxx | 16 formula/source/ui/dlg/parawin.cxx |4 4 files changed, 23 insertions(+), 1 deletion(-) New commits: commit 2f973aa90d508cd88050b0273634482de2174a08 Author: Steve Yin Date: Tue Nov 26 12:06:30 2013 + Integrate branch of IAccessible2 Change-Id: Id8c4ff1d10eccda2d7279d625822759c1f520a46 diff --git a/formula/source/ui/dlg/ControlHelper.hxx b/formula/source/ui/dlg/ControlHelper.hxx index c2d6c8a..86f4f1d 100644 --- a/formula/source/ui/dlg/ControlHelper.hxx +++ b/formula/source/ui/dlg/ControlHelper.hxx @@ -176,6 +176,7 @@ public: void Hide(); void Show(); +void UpdateAccessibleNames(); }; } diff --git a/formula/source/ui/dlg/formdlgs.src b/formula/source/ui/dlg/formdlgs.src index 3095b82..83ef11b 100644 --- a/formula/source/ui/dlg/formdlgs.src +++ b/formula/source/ui/dlg/formdlgs.src @@ -189,11 +189,12 @@ ModalDialog RID_FORMULADLG_FORMULA_MODAL Right = TRUE ; Text [ en-US ] = "Function result" ; }; -Window WND_RESULT +FixedText WND_RESULT { Border = TRUE ; Pos = MAP_APPFONT ( 255 , 4 ) ; Size = MAP_APPFONT ( 60 , 12 ) ; +Text [ en-US ] = "Function result" ; }; FixedText FT_FORMULA_RESULT { diff --git a/formula/source/ui/dlg/funcutl.cxx b/formula/source/ui/dlg/funcutl.cxx index 890ac41..9b7be4c 100644 --- a/formula/source/ui/dlg/funcutl.cxx +++ b/formula/source/ui/dlg/funcutl.cxx @@ -26,6 +26,7 @@ #include "ControlHelper.hxx" #include "ModuleHelper.hxx" #include "ForResId.hrc" +#include "com/sun/star/accessibility/AccessibleRole.hpp" namespace formula @@ -61,6 +62,7 @@ ValWnd::ValWnd( Window* pParent, const ResId& rId ) : Window( pParent, rId ) aRectOut = Rectangle( Point( 1, ( nDiff<2 ) ? 1 : nDiff/2), Size ( aSzWnd.Width()-2, nHeight ) ); SetClipRegion( Region( aRectOut ) ); +SetAccessibleRole( ::com::sun::star::accessibility::AccessibleRole::LABEL ); } // @@ -421,6 +423,20 @@ void ArgInput::Show() } } +void ArgInput::UpdateAccessibleNames() +{ +OUString aArgName(":"); +aArgName += pFtArg->GetText(); + +OUString aName = pBtnFx->GetQuickHelpText(); +aName += aArgName; +pBtnFx->SetAccessibleName(aName); + +aName = pRefBtn->GetQuickHelpText(); +aName += aArgName; +pRefBtn->SetAccessibleName(aName); +} + /* #* Member: FxClick Date:13.01.97 #* diff --git a/formula/source/ui/dlg/parawin.cxx b/formula/source/ui/dlg/parawin.cxx index c209c37..24a22c2 100644 --- a/formula/source/ui/dlg/parawin.cxx +++ b/formula/source/ui/dlg/parawin.cxx @@ -353,6 +353,7 @@ void ParaWin::SetEditDesc(const OUString& aText) void ParaWin::SetArgName(sal_uInt16 no,const OUString& aText) { aArgInput[no].SetArgName(aText); +aArgInput[no].UpdateAccessibleNames(); } void ParaWin::SetArgNameFont(sal_uInt16 no,const Font& aFont) @@ -398,6 +399,7 @@ void ParaWin::InitArgInput( sal_uInt16 nPos, FixedText& rFtArg, ImageButton& rBt aArgInput[nPos].SetFxFocusHdl ( LINK( this, ParaWin, GetFxFocusHdl ) ); aArgInput[nPos].SetEdFocusHdl ( LINK( this, ParaWin, GetEdFocusHdl ) ); aArgInput[nPos].SetEdModifyHdl ( LINK( this, ParaWin, ModifyHdl ) ); +aArgInput[nPos].UpdateAccessibleNames(); } void ParaWin::ClearAll() @@ -494,6 +496,7 @@ void ParaWin::SliderMoved() aArgInput[nEdFocus].SetArgSelection(Selection(0,SELECTION_MAX )); nActiveLine=nEdFocus+nOffset; ArgumentModified(); +aArgInput[nEdFocus].UpdateAccessibleNames(); } aScrollLink.Call(this); } @@ -574,6 +577,7 @@ IMPL_LINK( ParaWin, GetEdFocusHdl, ArgInput*, pPtr ) UpdateArgDesc( nEdFocus ); nActiveLine=nEdFocus+nOffset; ArgumentModified(); +aArgInput[nEdFocus].UpdateAccessibleNames(); } return 0; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: chart2/source
chart2/source/controller/accessibility/AccessibleBase.cxx |2 +- chart2/source/controller/dialogs/tp_DataSource.cxx| 11 --- 2 files changed, 5 insertions(+), 8 deletions(-) New commits: commit b193123b8e658d2eb25af5debe9de9e1b2386ef8 Author: Steve Yin Date: Thu Nov 28 17:20:23 2013 + Integrate branch of IAccessible2 Change-Id: Ic7e0b943749266646722cf6525e77b006ae79232 diff --git a/chart2/source/controller/accessibility/AccessibleBase.cxx b/chart2/source/controller/accessibility/AccessibleBase.cxx index cc075f7..aa99cff 100644 --- a/chart2/source/controller/accessibility/AccessibleBase.cxx +++ b/chart2/source/controller/accessibility/AccessibleBase.cxx @@ -604,7 +604,7 @@ sal_Int32 SAL_CALL AccessibleBase::getAccessibleIndexInParent() sal_Int16 SAL_CALL AccessibleBase::getAccessibleRole() throw (RuntimeException) { -return AccessibleRole::LIST_ITEM; // #i73747# role SHAPE seems more appropriate, but is not read +return AccessibleRole::SHAPE; } Reference< XAccessibleRelationSet > SAL_CALL AccessibleBase::getAccessibleRelationSet() diff --git a/chart2/source/controller/dialogs/tp_DataSource.cxx b/chart2/source/controller/dialogs/tp_DataSource.cxx index 7132f4a..891ab40 100644 --- a/chart2/source/controller/dialogs/tp_DataSource.cxx +++ b/chart2/source/controller/dialogs/tp_DataSource.cxx @@ -58,12 +58,9 @@ const OUString lcl_aLabelRole( "label" ); OUString lcl_GetRoleLBEntry( const OUString & rRole, const OUString & rRange ) { -OUStringBuffer aEntry( rRole ); +OUStringBuffer aEntry(::chart::DialogModel::ConvertRoleFromInternalToUI(rRole)); aEntry.append( "\t" ); -aEntry.append( OUString( -::chart::DialogModel::ConvertRoleFromInternalToUI( rRole )) ); -aEntry.append( "\t" ); -aEntry.append(OUString( rRange )); +aEntry.append(rRange); return aEntry.makeStringAndClear(); } @@ -129,8 +126,8 @@ OUString lcl_GetSequenceNameForLabel( ::chart::SeriesEntry * pEntry ) } static long lcl_pRoleListBoxTabs[] = -{ 3,// Number of Tabs -0, 0, 75 +{ 2,// Number of Tabs +0, 75 }; void lcl_ShowChooserButton( ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: writerfilter/source
writerfilter/source/dmapper/DomainMapper_Impl.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 0ade1e4e60be7f6a644b92a138a79552cd6f0c62 Author: Steve Yin Date: Thu Jan 2 10:17:34 2014 + Resolves: #i119577# "file name" field change to "file name without extension" (cherry picked from commit e3a84634fd6a033b838485346c274552d5bd8d8c) Conflicts: writerfilter/source/dmapper/DomainMapper_Impl.cxx Change-Id: I07e4a85aae7b5c5be398de471739c5e6d57d2ff2 diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index e10ba5b..0e166c8 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -3097,7 +3097,7 @@ void DomainMapper_Impl::CloseFieldCommand() if (xFieldProperties.is()) xFieldProperties->setPropertyValue( rPropNameSupplier.GetName(PROP_FILE_FORMAT), -uno::makeAny( nNumberingTypeIndex > 0 ? text::FilenameDisplayFormat::FULL : text::FilenameDisplayFormat::NAME )); +uno::makeAny( nNumberingTypeIndex > 0 ? text::FilenameDisplayFormat::FULL : text::FilenameDisplayFormat::NAME_AND_EXT )); } break; case FIELD_FILESIZE : break; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - sc/inc sc/source
sc/inc/attarray.hxx |5 + sc/inc/column.hxx|3 +++ sc/inc/document.hxx |4 sc/inc/table.hxx |3 +++ sc/source/core/data/attarray.cxx | 30 ++ sc/source/core/data/column2.cxx | 14 -- sc/source/core/data/documen3.cxx | 24 sc/source/core/data/document.cxx | 35 +++ sc/source/core/data/table4.cxx | 24 +--- 9 files changed, 137 insertions(+), 5 deletions(-) New commits: commit acc76cb44c51fbefc8f34009300acb9382c3ad27 Author: Steve Yin Date: Fri Jan 3 08:48:02 2014 + Bug 123909 - Select one column, paste cell range with merged cell in, AOO will be not responding diff --git a/sc/inc/attarray.hxx b/sc/inc/attarray.hxx index c4914b2..6771b7c 100644 --- a/sc/inc/attarray.hxx +++ b/sc/inc/attarray.hxx @@ -188,6 +188,11 @@ public: voidDeleteHardAttr( SCROW nStartRow, SCROW nEndRow ); //UNUSED2008-05 voidConvertFontsAfterLoad(); // old binary file format + +/* i123909: Pre-calculate needed memory, and pre-reserve enough memory */ +boolReserve( SCSIZE nCount ); +SCSIZE Count() const{ return nCount; } +SCSIZE Count( SCROW nRw1, SCROW nRw2 ); }; diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx index 45c42f0..e856bf8 100644 --- a/sc/inc/column.hxx +++ b/sc/inc/column.hxx @@ -404,6 +404,9 @@ public: xub_StrLen GetMaxNumberStringLen( sal_uInt16& nPrecision, SCROW nRowStart, SCROW nRowEnd ) const; +SCSIZE GetPatternCount( ); +SCSIZE GetPatternCount( SCROW nRw1, SCROW nRw2 ); +boolReservedPatternCount( SCSIZE nReserved ); private: ScBaseCell* CloneCell(SCSIZE nIndex, sal_uInt16 nFlags, ScDocument& rDestDoc, const ScAddress& rDestPos); //UNUSED2008-05 void CorrectSymbolCells( CharSet eStreamCharSet ); diff --git a/sc/inc/document.hxx b/sc/inc/document.hxx index cf4ac16..88980a2 100644 --- a/sc/inc/document.hxx +++ b/sc/inc/document.hxx @@ -1908,6 +1908,10 @@ private: // CLOOK-Impl-Methoden public: voidFillDPCache( ScDPTableDataCache * pCache, SCTAB nDocTab, SCCOL nStartCol, SCCOL nEndCol, SCROW nStartRow, SCROW nEndRow ); +private: +SCSIZE GetPatternCount( SCTAB nTab, SCCOL nCol ); +SCSIZE GetPatternCount( SCTAB nTab, SCCOL nCol, SCROW nRw1, SCROW nRw2 ); +bool ReservedPatternCount( SCTAB nTab, SCCOL nCol, SCSIZE nReserved ); }; inline void ScDocument::GetSortParam( ScSortParam& rParam, SCTAB nTab ) { diff --git a/sc/inc/table.hxx b/sc/inc/table.hxx index 0363eda..052f873 100644 --- a/sc/inc/table.hxx +++ b/sc/inc/table.hxx @@ -311,6 +311,9 @@ public: SvNumberFormatter* pFormatter = NULL, bool bDetectNumberFormat = true ); voidSetValue( SCCOL nCol, SCROW nRow, const double& rVal ); voidSetError( SCCOL nCol, SCROW nRow, sal_uInt16 nError); +SCSIZE GetPatternCount( SCCOL nCol ); +SCSIZE GetPatternCount( SCCOL nCol, SCROW nRw1, SCROW nRw2 ); +boolReservedPatternCount( SCCOL nCol, SCSIZE nReserved ); voidGetString( SCCOL nCol, SCROW nRow, String& rString ); voidFillDPCache( ScDPTableDataCache * pCache, SCCOL nStartCol, SCCOL nEndCol, SCROW nStartRow, SCROW nEndRow ); diff --git a/sc/source/core/data/attarray.cxx b/sc/source/core/data/attarray.cxx index 78e1594..d2dea6d 100644 --- a/sc/source/core/data/attarray.cxx +++ b/sc/source/core/data/attarray.cxx @@ -295,6 +295,24 @@ void ScAttrArray::SetPattern( SCROW nRow, const ScPatternAttr* pPattern, sal_Boo SetPatternArea( nRow, nRow, pPattern, bPutToPool ); } +bool ScAttrArray::Reserve( SCSIZE nReserve ) +{ +if ( nCount <= nReserve ) +{ +if( ScAttrEntry* pNewData = new (std::nothrow) ScAttrEntry[nReserve] ) +{ +nLimit = nReserve; +memcpy( pNewData, pData, nCount*sizeof(ScAttrEntry) ); +delete[] pData; +pData = pNewData; +return true; +} +else +return false; +} +else +return false; +} void ScAttrArray::SetPatternArea(SCROW nStartRow, SCROW nEndRow, const ScPatternAttr *pPattern, sal_Bool bPutToPool ) { @@ -2647,3 +2665,15 @@ void ScAttrArray::Load( SvStream& /* rStream */ ) //UNUSED2008-05 } //UNUSED2008-05 } +SCSIZE ScAttrArray::Count( SCROW nStartRow, SCROW nEndRow ) +{ +SCSIZE nIndex1, nIndex2; + +if( !Search( nStartRow, nIndex1 ) ) +return 0; + +if( !Search( nEndRow, nIndex2 ) ) +nIndex2 = this->nCount - 1; + +return nIndex2 - nIndex1 + 1; +} diff --git a/sc/source/core/data/column2.cxx b/sc/source/core/data/column2.cxx index 4fa3022..8c3f8fb 100644 --- a/sc/source/core/data/column2.cxx +++ b/sc/source/core/data/column2.cxx @@ -1885,7 +1885,17 @@ sal_uL
[Libreoffice-commits] core.git: sc/inc sc/source
sc/inc/attarray.hxx |5 + sc/inc/column.hxx|3 +++ sc/inc/document.hxx |3 +++ sc/inc/table.hxx |3 +++ sc/source/core/data/attarray.cxx | 32 sc/source/core/data/column2.cxx | 13 - sc/source/core/data/documen3.cxx | 24 sc/source/core/data/document.cxx | 35 +++ sc/source/core/data/table4.cxx | 23 +-- 9 files changed, 138 insertions(+), 3 deletions(-) New commits: commit 6b8704d974abd4ab7fb58036a961fa0b7136aaa7 Author: Steve Yin Date: Fri Jan 3 08:48:02 2014 + Resolves: #i123909# Select one column, paste cell range... with merged cell in, no response (cherry picked from commit acc76cb44c51fbefc8f34009300acb9382c3ad27) Conflicts: sc/inc/attarray.hxx sc/inc/column.hxx sc/inc/document.hxx sc/source/core/data/attarray.cxx sc/source/core/data/column2.cxx sc/source/core/data/documen3.cxx sc/source/core/data/document.cxx sc/source/core/data/table4.cxx Change-Id: Id9c1e0fe86876da6e39ea2b34a484d69eb5d8633 diff --git a/sc/inc/attarray.hxx b/sc/inc/attarray.hxx index c4f514b..c2789b3 100644 --- a/sc/inc/attarray.hxx +++ b/sc/inc/attarray.hxx @@ -187,6 +187,11 @@ public: SCROW nStartRow, SCROW nEndRow, long nDy, ScAttrArray& rAttrArray, sal_Int16 nStripFlags = 0) const; voidDeleteHardAttr( SCROW nStartRow, SCROW nEndRow ); + +/* i123909: Pre-calculate needed memory, and pre-reserve enough memory */ +boolReserve( SCSIZE nCount ); +SCSIZE Count() const { return nCount; } +SCSIZE Count( SCROW nRw1, SCROW nRw2 ); }; // Iterator for attributes diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx index b7f48db..6ec3336 100644 --- a/sc/inc/column.hxx +++ b/sc/inc/column.hxx @@ -541,6 +541,9 @@ public: void DumpFormulaGroups() const; #endif +SCSIZE GetPatternCount( ); +SCSIZE GetPatternCount( SCROW nRw1, SCROW nRw2 ); +boolReservedPatternCount( SCSIZE nReserved ); private: sc::CellStoreType::iterator GetPositionToInsert( SCROW nRow ); diff --git a/sc/inc/document.hxx b/sc/inc/document.hxx index 8d52830..95443b5 100644 --- a/sc/inc/document.hxx +++ b/sc/inc/document.hxx @@ -2108,6 +2108,9 @@ private: // CLOOK-Impl-methods std::map< SCTAB, ScSortParam > mSheetSortParams; +SCSIZE GetPatternCount( SCTAB nTab, SCCOL nCol ); +SCSIZE GetPatternCount( SCTAB nTab, SCCOL nCol, SCROW nRw1, SCROW nRw2 ); +bool ReservedPatternCount( SCTAB nTab, SCCOL nCol, SCSIZE nReserved ); }; inline void ScDocument::GetSortParam( ScSortParam& rParam, SCTAB nTab ) { diff --git a/sc/inc/table.hxx b/sc/inc/table.hxx index 1a80f90..09d541b 100644 --- a/sc/inc/table.hxx +++ b/sc/inc/table.hxx @@ -346,6 +346,9 @@ public: voidSetValue( SCCOL nCol, SCROW nRow, const double& rVal ); voidSetError( SCCOL nCol, SCROW nRow, sal_uInt16 nError); +SCSIZE GetPatternCount( SCCOL nCol ); +SCSIZE GetPatternCount( SCCOL nCol, SCROW nRw1, SCROW nRw2 ); +boolReservedPatternCount( SCCOL nCol, SCSIZE nReserved ); void SetRawString( SCCOL nCol, SCROW nRow, const OUString& rStr ); void SetRawString( SCCOL nCol, SCROW nRow, const svl::SharedString& rStr ); diff --git a/sc/source/core/data/attarray.cxx b/sc/source/core/data/attarray.cxx index cee38bb..2bfccee 100644 --- a/sc/source/core/data/attarray.cxx +++ b/sc/source/core/data/attarray.cxx @@ -376,6 +376,25 @@ void ScAttrArray::RemoveCellCharAttribs( SCROW nStartRow, SCROW nEndRow, } } +bool ScAttrArray::Reserve( SCSIZE nReserve ) +{ +if ( nCount <= nReserve ) +{ +if( ScAttrEntry* pNewData = new (std::nothrow) ScAttrEntry[nReserve] ) +{ +nLimit = nReserve; +memcpy( pNewData, pData, nCount*sizeof(ScAttrEntry) ); +delete[] pData; +pData = pNewData; +return true; +} +else +return false; +} +else +return false; +} + void ScAttrArray::SetPatternArea(SCROW nStartRow, SCROW nEndRow, const ScPatternAttr *pPattern, bool bPutToPool, ScEditDataArray* pDataArray ) { @@ -2439,4 +2458,17 @@ bool ScAttrArray::SearchStyleRange( return false; } +SCSIZE ScAttrArray::Count( SCROW nStartRow, SCROW nEndRow ) +{ +SCSIZE nIndex1, nIndex2; + +if( !Search( nStartRow, nIndex1 ) ) +return 0; + +if( !Search( nEndRow, nIndex2 ) ) +nIndex2 = this->nCount - 1; + +return nIndex2 - nIndex1 + 1; +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sc/source/core/data/column2.cxx b/sc/source/core/data/column2.cxx index 2092406b..60b7b42 100644 --- a/sc/sourc
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - 2 commits - sc/source winaccessibility/source
sc/source/ui/Accessibility/AccessibleCell.cxx|2 +- sc/source/ui/Accessibility/AccessibleDocument.cxx| 17 ++--- sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx | 10 +- sc/source/ui/inc/AccessibleCell.hxx |3 ++- sc/source/ui/inc/AccessibleSpreadsheet.hxx | 11 +++ sc/source/ui/inc/tabvwsh.hxx |6 ++ sc/source/ui/view/cellsh4.cxx|6 ++ sc/source/ui/view/tabview3.cxx |4 sc/source/ui/view/tabvwsh4.cxx |1 + winaccessibility/source/UAccCOM/MAccessible.cpp |1 + 10 files changed, 43 insertions(+), 18 deletions(-) New commits: commit 5478c54be2de808663565e53250c8a4055b390c9 Author: Steve Yin Date: Mon Jan 6 07:40:48 2014 + Bug 123629 - [ia2] Calc: Invalid focus event fired after editing cell Some Coverity issues fixes diff --git a/sc/source/ui/Accessibility/AccessibleCell.cxx b/sc/source/ui/Accessibility/AccessibleCell.cxx index 084b420..c7d0c29 100644 --- a/sc/source/ui/Accessibility/AccessibleCell.cxx +++ b/sc/source/ui/Accessibility/AccessibleCell.cxx @@ -510,7 +510,7 @@ void ScAccessibleCell::AddRelation(const ScRange& rRange, } uno::Any SAL_CALL ScAccessibleCell::getExtendedAttributes() -throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) +throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException, com::sun::star::ucb::CommandFailedException) { uno::Any strRet; if (mpViewShell) diff --git a/sc/source/ui/Accessibility/AccessibleDocument.cxx b/sc/source/ui/Accessibility/AccessibleDocument.cxx index 8a8c93a..d127a47 100644 --- a/sc/source/ui/Accessibility/AccessibleDocument.cxx +++ b/sc/source/ui/Accessibility/AccessibleDocument.cxx @@ -257,12 +257,12 @@ public: virtual ::accessibility::AccessibleControlShape* GetAccControlShapeFromModel (::com::sun::star::beans::XPropertySet* pSet) -throw (::com::sun::star::uno::RuntimeException); +throw (::com::sun::star::uno::RuntimeException, com::sun::star::ucb::CommandFailedException); virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> GetAccessibleCaption (const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape>& xShape) -throw (::com::sun::star::uno::RuntimeException); +throw (::com::sun::star::uno::RuntimeException, com::sun::star::ucb::CommandFailedException); ///= Internal void SetDrawBroadcaster(); @@ -483,7 +483,7 @@ sal_Bool ScChildrenShapes::ReplaceChild (::accessibility::AccessibleShape* pCurr return bResult; } -::accessibility::AccessibleControlShape * ScChildrenShapes::GetAccControlShapeFromModel(::com::sun::star::beans::XPropertySet* pSet) throw (::com::sun::star::uno::RuntimeException) +::accessibility::AccessibleControlShape * ScChildrenShapes::GetAccControlShapeFromModel(::com::sun::star::beans::XPropertySet* pSet) throw (::com::sun::star::uno::RuntimeException, com::sun::star::ucb::CommandFailedException) { sal_Int32 count = GetCount(); for (sal_Int32 index=0;index ScChildrenShapes::GetAccessibleCaption (const ::com::sun::star::uno::Reference < ::com::sun::star::drawing::XShape>& xShape) -throw (::com::sun::star::uno::RuntimeException) +throw (::com::sun::star::uno::RuntimeException, com::sun::star::ucb::CommandFailedException) { sal_Int32 count = GetCount(); for (sal_Int32 index=0;index(mpViewShell->GetWindowByPos(meSplitPos)); -if (pWin) +if (mpViewShell) { -bWinFocus = pWin->HasFocus(); +ScGridWindow* pWin = static_cast(mpViewShell->GetWindowByPos(meSplitPos)); +if (pWin) +{ +bWinFocus = pWin->HasFocus(); +} } const SdrMarkList* pMarkList = NULL; SdrObject* pMarkedObj = NULL; diff --git a/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx b/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx index 26c6798..b5d1a80 100644 --- a/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx +++ b/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx @@ -480,7 +480,7 @@ void ScAccessibleSpreadsheet::Notify( SfxBroadcaster& rBC, const SfxHint& rHint pAccDoc->CommitChange(aEvent); } } -sal_Bool bNewPosCell = (aNewCell != maActiveCell); +sal_Bool bNewPosCell = (aNewCell != maActiveCell) || mpViewShell->GetForceFocusOnCurCell(); // i123629 sal_Bool bNewPosCellFocus=sal_False; if ( bNewPosCell && IsFocused() && aNewCell.Tab() ==
[Libreoffice-commits] core.git: winaccessibility/source
winaccessibility/source/UAccCOM/MAccessible.cxx |1 + 1 file changed, 1 insertion(+) New commits: commit 6242f8262f4d7ac15e9fe20da0e8d3475e9f5cf2 Author: Steve Yin Date: Mon Jan 6 07:08:05 2014 + Initialize m_containedObjects (cherry picked from commit 795b3bb9e59c9bf049d27538c860cd66633dddcf) Change-Id: I45e495ad8b3513613102b7ce803303980fbe diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx index 308e839..4cba97c 100644 --- a/winaccessibility/source/UAccCOM/MAccessible.cxx +++ b/winaccessibility/source/UAccCOM/MAccessible.cxx @@ -241,6 +241,7 @@ m_bRequiresSave(FALSE) m_sLocation.m_dWidth=0; m_sLocation.m_dHeight=0; CEnumVariant::Create(&m_pEnumVar); +m_containedObjects.clear(); } CMAccessible::~CMAccessible() ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - sc/source
sc/source/ui/Accessibility/AccessibleCell.cxx|2 +- sc/source/ui/Accessibility/AccessibleDocument.cxx|8 sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx |8 sc/source/ui/inc/AccessibleCell.hxx |3 +-- sc/source/ui/inc/AccessibleSpreadsheet.hxx | 11 --- 5 files changed, 14 insertions(+), 18 deletions(-) New commits: commit 15e6a8263ae6181ac4912b94af8cb63adc34a86d Author: Steve Yin Date: Mon Jan 6 09:42:20 2014 + Rolled back some coverity issue fixes for mac build diff --git a/sc/source/ui/Accessibility/AccessibleCell.cxx b/sc/source/ui/Accessibility/AccessibleCell.cxx index c7d0c29..084b420 100644 --- a/sc/source/ui/Accessibility/AccessibleCell.cxx +++ b/sc/source/ui/Accessibility/AccessibleCell.cxx @@ -510,7 +510,7 @@ void ScAccessibleCell::AddRelation(const ScRange& rRange, } uno::Any SAL_CALL ScAccessibleCell::getExtendedAttributes() -throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException, com::sun::star::ucb::CommandFailedException) +throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) { uno::Any strRet; if (mpViewShell) diff --git a/sc/source/ui/Accessibility/AccessibleDocument.cxx b/sc/source/ui/Accessibility/AccessibleDocument.cxx index d127a47..b8ef809 100644 --- a/sc/source/ui/Accessibility/AccessibleDocument.cxx +++ b/sc/source/ui/Accessibility/AccessibleDocument.cxx @@ -257,12 +257,12 @@ public: virtual ::accessibility::AccessibleControlShape* GetAccControlShapeFromModel (::com::sun::star::beans::XPropertySet* pSet) -throw (::com::sun::star::uno::RuntimeException, com::sun::star::ucb::CommandFailedException); +throw (::com::sun::star::uno::RuntimeException); virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> GetAccessibleCaption (const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape>& xShape) -throw (::com::sun::star::uno::RuntimeException, com::sun::star::ucb::CommandFailedException); +throw (::com::sun::star::uno::RuntimeException); ///= Internal void SetDrawBroadcaster(); @@ -483,7 +483,7 @@ sal_Bool ScChildrenShapes::ReplaceChild (::accessibility::AccessibleShape* pCurr return bResult; } -::accessibility::AccessibleControlShape * ScChildrenShapes::GetAccControlShapeFromModel(::com::sun::star::beans::XPropertySet* pSet) throw (::com::sun::star::uno::RuntimeException, com::sun::star::ucb::CommandFailedException) +::accessibility::AccessibleControlShape * ScChildrenShapes::GetAccControlShapeFromModel(::com::sun::star::beans::XPropertySet* pSet) throw (::com::sun::star::uno::RuntimeException) { sal_Int32 count = GetCount(); for (sal_Int32 index=0;index ScChildrenShapes::GetAccessibleCaption (const ::com::sun::star::uno::Reference < ::com::sun::star::drawing::XShape>& xShape) -throw (::com::sun::star::uno::RuntimeException, com::sun::star::ucb::CommandFailedException) +throw (::com::sun::star::uno::RuntimeException) { sal_Int32 count = GetCount(); for (sal_Int32 index=0;index #endif -#include class ScTabViewShell; class ScAccessibleDocument; @@ -143,7 +142,7 @@ public: throw (::com::sun::star::uno::RuntimeException); virtual ::com::sun::star::uno::Any SAL_CALL getExtendedAttributes() -throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException, com::sun::star::ucb::CommandFailedException) ; +throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ; // Override this method to handle cell's ParaIndent attribute specially. virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) diff --git a/sc/source/ui/inc/AccessibleSpreadsheet.hxx b/sc/source/ui/inc/AccessibleSpreadsheet.hxx index 7d44025..926ed95 100644 --- a/sc/source/ui/inc/AccessibleSpreadsheet.hxx +++ b/sc/source/ui/inc/AccessibleSpreadsheet.hxx @@ -28,9 +28,6 @@ #include "AccessibleTableBase.hxx" #include "viewdata.hxx" -#include -#include - #include #include "rangelst.hxx" @@ -246,13 +243,13 @@ public: throw (com::sun::star::uno::RuntimeException); //= XAccessibleTableSelection virtual sal_Bool SAL_CALL selectRow( sal_Int32 row ) -throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException, ::com::sun::star::ucb::CommandFailedE
[Libreoffice-commits] core.git: sc/source
sc/source/ui/Accessibility/AccessibleDocument.cxx|9 ++--- sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx |2 +- sc/source/ui/inc/tabvwsh.hxx |8 ++-- sc/source/ui/view/cellsh4.cxx|6 ++ sc/source/ui/view/tabview3.cxx |4 sc/source/ui/view/tabvwsh4.cxx |1 + 6 files changed, 24 insertions(+), 6 deletions(-) New commits: commit 296cd762c9730ead75767cf7bbc5f5845f18168b Author: Steve Yin Date: Mon Jan 6 07:40:48 2014 + Resolves: #i123629# [ia2] Invalid focus event fired after editing cell Some Coverity issues fixes (cherry picked from commit 5478c54be2de808663565e53250c8a4055b390c9) Conflicts: sc/source/ui/inc/AccessibleCell.hxx sc/source/ui/inc/tabvwsh.hxx sc/source/ui/view/cellsh4.cxx sc/source/ui/view/tabvwsh4.cxx Rolled back some coverity issue fixes for mac build (cherry picked from commit 15e6a8263ae6181ac4912b94af8cb63adc34a86d) Conflicts: sc/source/ui/inc/AccessibleCell.hxx a727d3c7f819c8d0082a9fb017351d5307877fa6 Change-Id: I03b63c655bd55e5fb92d95490eaa4bb081b8ee7d diff --git a/sc/source/ui/Accessibility/AccessibleDocument.cxx b/sc/source/ui/Accessibility/AccessibleDocument.cxx index 8e0f3a4..47a5177 100644 --- a/sc/source/ui/Accessibility/AccessibleDocument.cxx +++ b/sc/source/ui/Accessibility/AccessibleDocument.cxx @@ -1029,10 +1029,13 @@ sal_Bool ScChildrenShapes::FindSelectedShapesChanges(const uno::Reference(mpViewShell->GetWindowByPos(meSplitPos)); -if (pWin) +if (mpViewShell) { -bWinFocus = pWin->HasFocus(); +ScGridWindow* pWin = static_cast(mpViewShell->GetWindowByPos(meSplitPos)); +if (pWin) +{ +bWinFocus = pWin->HasFocus(); +} } const SdrMarkList* pMarkList = NULL; SdrObject* pMarkedObj = NULL; diff --git a/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx b/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx index 5fa5740..9179488 100644 --- a/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx +++ b/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx @@ -455,7 +455,7 @@ void ScAccessibleSpreadsheet::Notify( SfxBroadcaster& rBC, const SfxHint& rHint pAccDoc->CommitChange(aEvent); } } -sal_Bool bNewPosCell = (aNewCell != maActiveCell); +sal_Bool bNewPosCell = (aNewCell != maActiveCell) || mpViewShell->GetForceFocusOnCurCell(); // #i123629# sal_Bool bNewPosCellFocus=sal_False; if ( bNewPosCell && IsFocused() && aNewCell.Tab() == maActiveCell.Tab() ) {//single Focus diff --git a/sc/source/ui/inc/tabvwsh.hxx b/sc/source/ui/inc/tabvwsh.hxx index a6d4f0e..083befe 100644 --- a/sc/source/ui/inc/tabvwsh.hxx +++ b/sc/source/ui/inc/tabvwsh.hxx @@ -165,7 +165,9 @@ private: SbxObject* pScSbxObject; -sal_BoolbChartAreaValid;// if chart is drawn +sal_BoolbChartAreaValid; // if chart is drawn +sal_BoolbForceFocusOnCurCell; // #i123629# + OUStringaEditChartName; ScRangeListRef aChartSource; Rectangle aChartPos; @@ -182,7 +184,6 @@ private: boolmbInSwitch; OUString maName; OUString maScope; - private: voidConstruct( sal_uInt8 nForceDesignMode = SC_FORCEMODE_NONE ); @@ -418,6 +419,9 @@ public: // ugly hack to call Define Names from Manage Names voidSwitchBetweenRefDialogs(SfxModelessDialog* pDialog); +// #i123629# +sal_BoolGetForceFocusOnCurCell() const { return bForceFocusOnCurCell; } +void SetForceFocusOnCurCell(sal_Bool bFlag) { bForceFocusOnCurCell=bFlag; } }; //== diff --git a/sc/source/ui/view/cellsh4.cxx b/sc/source/ui/view/cellsh4.cxx index 945909c..ffeaad0 100644 --- a/sc/source/ui/view/cellsh4.cxx +++ b/sc/source/ui/view/cellsh4.cxx @@ -119,6 +119,12 @@ void ScCellShell::ExecuteCursor( SfxRequest& rReq ) // once extra, so that the cursor will not be painted too often with ExecuteInputDirect: pTabViewShell->HideAllCursors(); +// #i123629# +if( pTabViewShell->GetCurObjectSelectionType() == OST_Editing ) +pTabViewShell->SetForceFocusOnCurCell(sal_True); +else +pTabViewShell->SetForceFocusOnCurCell(sal_False); + //OS: once for all should do, however! pTabViewShell->ExecuteInputDirect(); switch ( nSlotId ) diff --git a/sc/source/ui/view/tabview3.cxx b/sc/source/ui/view/tabview3.cxx index cedb9ba..57dfa8c 100644 --- a/sc/source/ui/view/tabview3.cxx +++ b/sc/source/ui/view/tabview3.cxx @@ -992,6 +992,10
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - sc/source
sc/source/ui/Accessibility/AccessibleDocument.cxx |1 + 1 file changed, 1 insertion(+) New commits: commit 68792ef189457094eb0fa1790c5895d7031571da Author: Steve Yin Date: Tue Jan 7 06:02:14 2014 + Bug 123622 - [ia2] Calc: No focus event fired on cell when new spreadsheet is created diff --git a/sc/source/ui/Accessibility/AccessibleDocument.cxx b/sc/source/ui/Accessibility/AccessibleDocument.cxx index b8ef809..e55bc96 100644 --- a/sc/source/ui/Accessibility/AccessibleDocument.cxx +++ b/sc/source/ui/Accessibility/AccessibleDocument.cxx @@ -2266,6 +2266,7 @@ uno::Reference < XAccessible > mpAccessibleSpreadsheet->acquire(); mpAccessibleSpreadsheet->Init(); mbCompleteSheetSelected = IsTableSelected(); +mpAccessibleSpreadsheet->FireFirstCellFocus(); // i123622 } return mpAccessibleSpreadsheet; } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - oox/source
oox/source/ppt/timenodelistcontext.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit a7eedd28dd66cec1a668c3df6a8568dcad0f858f Author: Steve Yin Date: Tue Jan 14 08:03:55 2014 + Bug 119844 - [From Symphony]The Spin effect's amount property losts when saved pptx to odp diff --git a/oox/source/ppt/timenodelistcontext.cxx b/oox/source/ppt/timenodelistcontext.cxx index 7c15d53..0112889 100644 --- a/oox/source/ppt/timenodelistcontext.cxx +++ b/oox/source/ppt/timenodelistcontext.cxx @@ -804,7 +804,7 @@ namespace oox { namespace ppt { if(attribs.hasAttribute( XML_by ) ) { sal_Int32 nBy = attribs.getInteger( XML_by, 0 ); -pNode->setBy( makeAny( nBy ) ); +pNode->setBy( makeAny( (double)nBy ) ); } if(attribs.hasAttribute( XML_from ) ) { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - oox/source
oox/source/drawingml/shape.cxx |3 ++- oox/source/ppt/pptshapecontext.cxx |9 +++-- oox/source/ppt/presentationfragmenthandler.cxx |8 3 files changed, 17 insertions(+), 3 deletions(-) New commits: commit b6f34391f8ab893dd6cf9ac7082a8c7519ce5ecf Author: Steve Yin Date: Tue Jan 14 09:32:00 2014 + Bug 119604 - [From Symphony]the notes view and the postion and size of the note textbox are wrong when opening the pptx file diff --git a/oox/source/drawingml/shape.cxx b/oox/source/drawingml/shape.cxx index 204782c..cf385ab 100644 --- a/oox/source/drawingml/shape.cxx +++ b/oox/source/drawingml/shape.cxx @@ -185,7 +185,8 @@ void Shape::addShape( void Shape::applyShapeReference( const Shape& rReferencedShape ) { -mpTextBody = TextBodyPtr( new TextBody( *rReferencedShape.mpTextBody.get() ) ); +if ( rReferencedShape.mpTextBody.get() ) +mpTextBody = TextBodyPtr( new TextBody( *rReferencedShape.mpTextBody.get() ) ); maShapeProperties = rReferencedShape.maShapeProperties; mpLinePropertiesPtr = LinePropertiesPtr( new LineProperties( *rReferencedShape.mpLinePropertiesPtr.get() ) ); mpFillPropertiesPtr = FillPropertiesPtr( new FillProperties( *rReferencedShape.mpFillPropertiesPtr.get() ) ); diff --git a/oox/source/ppt/pptshapecontext.cxx b/oox/source/ppt/pptshapecontext.cxx index c93788c..241af13 100644 --- a/oox/source/ppt/pptshapecontext.cxx +++ b/oox/source/ppt/pptshapecontext.cxx @@ -164,8 +164,13 @@ Reference< XFastContextHandler > PPTShapeContext::createFastChildContext( sal_In { SlidePersistPtr pMasterPersist( mpSlidePersistPtr->getMasterPersist() ); if ( pMasterPersist.get() ) -pPlaceholder = findPlaceholder( nFirstPlaceholder, nSecondPlaceholder, -pPPTShapePtr->getSubTypeIndex(), pMasterPersist->getShapes()->getChildren() ); +{ +if ( mpSlidePersistPtr->isNotesPage() ) +pPlaceholder = findPlaceholder( nFirstPlaceholder, nSecondPlaceholder, -1, pMasterPersist->getShapes()->getChildren() ); +else +pPlaceholder = findPlaceholder( nFirstPlaceholder, nSecondPlaceholder, +pPPTShapePtr->getSubTypeIndex(), pMasterPersist->getShapes()->getChildren() ); +} } if ( pPlaceholder.get() ) { diff --git a/oox/source/ppt/presentationfragmenthandler.cxx b/oox/source/ppt/presentationfragmenthandler.cxx index 93ba220..609b960 100644 --- a/oox/source/ppt/presentationfragmenthandler.cxx +++ b/oox/source/ppt/presentationfragmenthandler.cxx @@ -268,6 +268,14 @@ void PresentationFragmentHandler::endDocument() throw (SAXException, RuntimeExce SlidePersistPtr pNotesPersistPtr( new SlidePersist( rFilter, sal_False, sal_True, xNotesPage, ShapePtr( new PPTShape( Slide, "com.sun.star.drawing.GroupShape" ) ), mpTextListStyle ) ); FragmentHandlerRef xNotesFragmentHandler( new SlideFragmentHandler( getFilter(), aNotesFragmentPath, pNotesPersistPtr, Slide ) ); +// import notesMaster slide for notes slide shapes format +OUString aNotesMasterFragmentPath = xNotesFragmentHandler->getFragmentPathFromFirstType( CREATE_OFFICEDOC_RELATION_TYPE( "notesMaster" ) ); +SlidePersistPtr pNotesMasterPersistPtr( new SlidePersist( rFilter, sal_True/*sal_False*/, sal_True, xNotesPage, +ShapePtr( new PPTShape( Slide, "com.sun.star.drawing.GroupShape" ) ), mpTextListStyle ) ); +FragmentHandlerRef xNotesMasterFragmentHandler( new SlideFragmentHandler( getFilter(), aNotesMasterFragmentPath, pNotesMasterPersistPtr, Slide ) ); +importSlide( xNotesMasterFragmentHandler, pNotesMasterPersistPtr ); +pNotesMasterPersistPtr->createXShapes( rFilter ); + pNotesPersistPtr->setMasterPersist(pNotesMasterPersistPtr); rFilter.getNotesPages().push_back( pNotesPersistPtr ); rFilter.setActualSlidePersist( pNotesPersistPtr ); importSlide( xNotesFragmentHandler, pNotesPersistPtr ); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: 2 commits - extras/source oox/source sc/inc sc/source sc/uiconfig sc/UIConfig_scalc.mk
extras/source/glade/libreoffice-catalog.xml.in |4 oox/source/ppt/timenodelistcontext.cxx | 17 +- sc/UIConfig_scalc.mk|1 sc/inc/sc.hrc |1 sc/source/ui/condformat/condformatdlg.cxx | 109 sc/source/ui/condformat/condformatdlgentry.cxx | 11 + sc/source/ui/inc/anyrefdg.hxx |6 sc/source/ui/inc/condformatdlg.hxx | 26 +-- sc/source/ui/miscdlgs/anyrefdg.cxx | 16 + sc/source/ui/src/condformatdlg.src | 64 --- sc/uiconfig/scalc/ui/conditionalformatdialog.ui | 202 11 files changed, 330 insertions(+), 127 deletions(-) New commits: commit 5b8a16209f1e1d8fc43157463384f6ab407ac514 Author: Steve Yin Date: Thu Jan 16 08:29:37 2014 + Resolves: #i119578# Lighten special effect in .PPTX won't display (cherry picked from commit 641aa4b583e27369b404584d094e0758a93ce5b5) Change-Id: I27a0503036087febc7f838dab4c2201eb0593d5c diff --git a/oox/source/ppt/timenodelistcontext.cxx b/oox/source/ppt/timenodelistcontext.cxx index 14bd0e2..7a9c3c7 100644 --- a/oox/source/ppt/timenodelistcontext.cxx +++ b/oox/source/ppt/timenodelistcontext.cxx @@ -70,27 +70,32 @@ namespace oox { namespace ppt { { } -sal_Int32 get() +Any get() { sal_Int32 nColor; +Sequence< double > aHSL( 3 ); +Any aColor; switch( colorSpace ) { case AnimationColorSpace::HSL: -nColor = ( ( ( one * 128 ) / 360 ) & 0xff ) << 16 -| ( ( ( two * 128 ) / 1000 ) & 0xff ) << 8 -| ( ( ( three * 128 ) / 1000 ) & 0xff ); +aHSL[ 0 ] = double(one) / 10; +aHSL[ 1 ] = double(two) / 10; +aHSL[ 2 ] = double(three) / 10; +aColor = Any(aHSL); break; case AnimationColorSpace::RGB: nColor = ( ( ( one * 128 ) / 1000 ) & 0xff ) << 16 | ( ( ( two * 128 ) / 1000 ) & 0xff ) << 8 | ( ( ( three * 128 ) / 1000 ) & 0xff ); +aColor = Any(nColor); break; default: nColor = 0; +aColor = Any( nColor ); break; } -return nColor; +return aColor; } sal_Int16 colorSpace; @@ -444,7 +449,7 @@ namespace oox { namespace ppt { if( maFromClr.isUsed() ) mpNode->setFrom( Any( maFromClr.getColor( rGraphicHelper ) ) ); if( mbHasByColor ) -mpNode->setBy( Any ( m_byColor.get() ) ); +mpNode->setBy( m_byColor.get() ); } } commit 34a94e6855782667f54110b0ff68bf3bf8f058a2 Author: Caolán McNamara Date: Mon Jan 13 14:48:45 2014 + Resolves: rhbz#1047871 convert conditional formattting dialog to widget layout the wrapper dialog not the list contained within Change-Id: I4f479385ec5d991f1ab4218cc371726558e6 diff --git a/extras/source/glade/libreoffice-catalog.xml.in b/extras/source/glade/libreoffice-catalog.xml.in index b43be2f..6d7a6dc 100644 --- a/extras/source/glade/libreoffice-catalog.xml.in +++ b/extras/source/glade/libreoffice-catalog.xml.in @@ -574,6 +574,10 @@ generic-name="CropExample" parent="GtkDrawingArea" icon-name="widget-gtk-drawingarea"/> + + diff --git a/sc/UIConfig_scalc.mk b/sc/UIConfig_scalc.mk index b0308be..9fb69cf 100644 --- a/sc/UIConfig_scalc.mk +++ b/sc/UIConfig_scalc.mk @@ -67,6 +67,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/scalc,\ sc/uiconfig/scalc/ui/chardialog \ sc/uiconfig/scalc/ui/colorrowdialog \ sc/uiconfig/scalc/ui/colwidthdialog \ + sc/uiconfig/scalc/ui/conditionalformatdialog \ sc/uiconfig/scalc/ui/consolidatedialog \ sc/uiconfig/scalc/ui/correlationdialog \ sc/uiconfig/scalc/ui/covariancedialog \ diff --git a/sc/inc/sc.hrc b/sc/inc/sc.hrc index 6b8cc619..e6a61f4 100644 --- a/sc/inc/sc.hrc +++ b/sc/inc/sc.hrc @@ -1057,7 +1057,6 @@ #define RID_DROPMODE_URL(SC_DIALOGS_START + 93) #define RID_DROPMODE_LINK (SC_DIALOGS_START + 94) #define RID_DROPMODE_COPY (SC_DIALOGS_START + 95) -#define RID_SCDLG_CONDFORMAT(SC_DIALOGS_START + 96) // derivations from RID_SCDLG_SELENTRY diff --git a/sc/source/ui/condformat/condformatdlg.cxx b/sc/source/ui/condformat/condformatdlg.cxx index
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - winaccessibility/source
winaccessibility/source/UAccCOM/MAccessible.cpp |9 - 1 file changed, 8 insertions(+), 1 deletion(-) New commits: commit 113171f2a5d726af6c5266e98e8e790ac6729d2d Author: Steve Yin Date: Mon Jan 27 05:49:26 2014 + Bug 124095 - Multiple IAccessible and IAccessible2 interface methods do not check for NULL pointer access, nor do they trap exceptions Fixed by Michael Curran diff --git a/winaccessibility/source/UAccCOM/MAccessible.cpp b/winaccessibility/source/UAccCOM/MAccessible.cpp index 943fb40..b352068 100644 --- a/winaccessibility/source/UAccCOM/MAccessible.cpp +++ b/winaccessibility/source/UAccCOM/MAccessible.cpp @@ -353,8 +353,10 @@ STDMETHODIMP CMAccessible::get_accChild(VARIANT varChild, IDispatch **ppdispChil return S_OK; } *ppdispChild = GetChildInterface(varChild.lVal); +if((*ppdispChild) == NULL) +return E_FAIL; (*ppdispChild)->AddRef(); -return (*ppdispChild)?S_OK:S_FALSE; +return S_OK; } return S_FALSE; @@ -1653,6 +1655,7 @@ STDMETHODIMP CMAccessible::get_nRelations( long __RPC_FAR *nRelations) CHECK_ENABLE_INF ENTER_PROTECTED_BLOCK +ISDESTROY() // #CHECK# if(nRelations == NULL) @@ -1748,6 +1751,7 @@ STDMETHODIMP CMAccessible::get_relations( long, IAccessibleRelation __RPC_FAR *_ CHECK_ENABLE_INF ENTER_PROTECTED_BLOCK +ISDESTROY() // #CHECK# if(relation == NULL || nRelations == NULL) @@ -3240,6 +3244,8 @@ STDMETHODIMP CMAccessible:: get_toolkitVersion(BSTR __RPC_FAR *version) STDMETHODIMP CMAccessible::get_attributes(/*[out]*/ BSTR *pAttr) { +ENTER_PROTECTED_BLOCK +ISDESTROY() CHECK_ENABLE_INF Reference pRContext = pUNOInterface->getAccessibleContext(); if( !pRContext.is() ) @@ -3264,5 +3270,6 @@ STDMETHODIMP CMAccessible::get_attributes(/*[out]*/ BSTR *pAttr) return S_OK; } +LEAVE_PROTECTED_BLOCK } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: winaccessibility/source
winaccessibility/source/UAccCOM/MAccessible.cxx | 10 -- 1 file changed, 8 insertions(+), 2 deletions(-) New commits: commit ff8cb18e21e95e51239f736a525016db689653f0 Author: Steve Yin Date: Mon Jan 27 05:49:26 2014 + Resolves: #i124095# Multiple IAccessible and IAccessible2... interface methods do not check for NULL pointer access, nor do they trap exceptions Fixed by Michael Curran (cherry picked from commit 113171f2a5d726af6c5266e98e8e790ac6729d2d) Conflicts: winaccessibility/source/UAccCOM/MAccessible.cxx Change-Id: I28d4b885a6c2db487c2754c2ca11290b3844570b diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx index 4cba97c..5a62642 100644 --- a/winaccessibility/source/UAccCOM/MAccessible.cxx +++ b/winaccessibility/source/UAccCOM/MAccessible.cxx @@ -379,8 +379,8 @@ STDMETHODIMP CMAccessible::get_accChild(VARIANT varChild, IDispatch **ppdispChil return S_OK; } *ppdispChild = GetChildInterface(varChild.lVal); -if (!(*ppdispChild)) -return S_FALSE; +if((*ppdispChild) == NULL) +return E_FAIL; (*ppdispChild)->AddRef(); return S_OK; } @@ -1710,6 +1710,7 @@ STDMETHODIMP CMAccessible::get_nRelations( long __RPC_FAR *nRelations) SolarMutexGuard g; ENTER_PROTECTED_BLOCK +ISDESTROY() // #CHECK# if(nRelations == NULL) @@ -1803,6 +1804,7 @@ STDMETHODIMP CMAccessible::get_relations( long, IAccessibleRelation __RPC_FAR *_ SolarMutexGuard g; ENTER_PROTECTED_BLOCK +ISDESTROY() // #CHECK# if(relation == NULL || nRelations == NULL) @@ -3312,6 +3314,9 @@ STDMETHODIMP CMAccessible::get_attributes(/*[out]*/ BSTR *pAttr) { SolarMutexGuard g; +ENTER_PROTECTED_BLOCK +ISDESTROY() + Reference pRContext = m_xAccessible->getAccessibleContext(); if( !pRContext.is() ) { @@ -3335,6 +3340,7 @@ STDMETHODIMP CMAccessible::get_attributes(/*[out]*/ BSTR *pAttr) return S_OK; } +LEAVE_PROTECTED_BLOCK } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - sw/source
sw/source/core/access/accpara.cxx | 73 +++--- 1 file changed, 6 insertions(+), 67 deletions(-) New commits: commit c5e03eac50d6c20e41aa4e60cf46c898653329d1 Author: Steve Yin Date: Mon Jan 27 10:52:11 2014 + Bug 123745 - [IA2] Eventual crash in Writer documents containing cross-references Removed some unused lines and comments diff --git a/sw/source/core/access/accpara.cxx b/sw/source/core/access/accpara.cxx index cc8d55d..54c27d6 100644 --- a/sw/source/core/access/accpara.cxx +++ b/sw/source/core/access/accpara.cxx @@ -1898,11 +1898,11 @@ uno::Sequence SwAccessibleParagraph::getCharacterAttributes( { aValues.realloc( aValues.getLength() + 1 ); pValues = aValues.getArray(); -rValue = pValues[aValues.getLength() - 1]; -rValue.Name = OUString::createFromAscii("FieldType"); -rValue.Value <<= rtl::OUString(strTypeName.ToLowerAscii()); -rValue.Handle = -1; -rValue.State = PropertyState_DIRECT_VALUE; +PropertyValue& rValueFT = pValues[aValues.getLength() - 1]; +rValueFT.Name = OUString::createFromAscii("FieldType"); +rValueFT.Value <<= rtl::OUString(strTypeName.ToLowerAscii()); +rValueFT.Handle = -1; +rValueFT.State = PropertyState_DIRECT_VALUE; } //sort property values @@ -2368,9 +2368,6 @@ void SwAccessibleParagraph::_getSupplementalAttributesImpl( tAccParaPropValMap aSupplementalAttrSeq; { -//const SfxItemPropertySet& rPropSet = -//aSwMapProvider.GetPropertyMap( PROPERTY_MAP_ACCESSIBILITY_TEXT_ATTRIBUTE ); -//const SfxItemPropertyMap* pPropMap( rPropSet.getPropertyMap() ); const SfxItemPropertyMapEntry* pPropMap( aSwMapProvider.GetPropertyMapEntries( PROPERTY_MAP_ACCESSIBILITY_TEXT_ATTRIBUTE ) ); while ( pPropMap->pName ) @@ -3415,14 +3412,6 @@ sal_Int32 SAL_CALL SwAccessibleParagraph::getHyperLinkCount() nCount++; } -/* Can't fin the function "GetTOCFirstWordEndIndex" declaration in sym2.0 (Added by yanjun) -if( GetTOXSortTabBase() ) -{ -SwTxtNode* pNode = const_cast(GetTxtNode()); -if(pNode && pNode->GetTOCFirstWordEndIndex() > 0) -nCount++; -} -*/ return nCount; } @@ -3451,8 +3440,6 @@ uno::Reference< XAccessibleHyperlink > SAL_CALL pNode = const_cast(GetTxtNode()); } nTOCEndIndex = -1; -//if(pNode) -// nTOCEndIndex = pNode->GetTOCFirstWordEndIndex(); SwTxtAttr* pHt = (SwTxtAttr*)(aHIter.next()); while( (nLinkIndex < getHyperLinkCount()) && nTIndex < nLinkIndex) { @@ -3670,14 +3657,6 @@ sal_Int32 SAL_CALL SwAccessibleParagraph::getHyperLinkIndex( sal_Int32 nCharInde if( pHt ) nRet = nPos; } -/* Added by yanjun for acc miagration -if( nRet == -1 && GetTOXSortTabBase() ) -{ -SwTxtNode* pNode = const_cast(GetTxtNode()); -if( nCharIndex >= 0 && nCharIndex < pNode->GetTOCFirstWordEndIndex()) -nRet = 0; -} -*/ if (nRet == -1) throw lang::IndexOutOfBoundsException(); @@ -4250,45 +4229,6 @@ sal_Int16 SAL_CALL SwAccessibleParagraph::getAccessibleRole (void) throw (::com: } } -// End Add - - -/* This funcion is already defined in accpara.cxx(Added by yanjun) -sal_Int32 SAL_CALL SwAccessibleParagraph::getBackground() -throw (::com::sun::star::uno::RuntimeException) -{ -// Test Code -// Sequence seNames(1); -// OUString* pStrings = seNames.getArray(); -// pStrings[0] = OUString(RTL_CONSTASCII_USTRINGPARAM("ParaBackColor")); -// -// Sequence aAnys(1); -// Reference xPortion = CreateUnoPortion( 0, 0 ); -// aAnys = xPortion->getPropertyValues( seNames ); -// const Any* pAnys = aAnys.getConstArray(); -// -// sal_uInt32 crColorT=0; -// pAnys[0] >>= crColorT; -// End Test Code - -const SvxBrushItem &rBack = GetFrm()->GetAttrSet()->GetBackground(); -sal_uInt32 crBack = rBack.GetColor().GetColor(); - -if (COL_AUTO == crBack) -{ -Reference xAccDoc = getAccessibleParent(); -if (xAccDoc.is()) -{ -Reference xCompoentDoc(xAccDoc,UNO_QUERY); -if (xCompoentDoc.is()) -{ -crBack = (sal_uInt32)xCompoentDoc->getBackground(); -} -} -} -return crBack; -} -*/ //Get the real heading level, Heading1 ~ Heading10 sal_Int32 SwAccessibleParagraph::GetRealHeadingLevel() @@ -4299,8 +4239,7 @@ sal_Int32 SwAccessibleParagraph::GetRealHeadingLevel() ::rtl::OUString sValue; if (styleAny >>= sValue) { -//Modified by yanjun for acc migration -sal_Int32 length = sValue.getLengt
[Libreoffice-commits] core.git: Branch 'libreoffice-4-2' - winaccessibility/source
winaccessibility/source/UAccCOM/MAccessible.cxx | 10 -- 1 file changed, 8 insertions(+), 2 deletions(-) New commits: commit 585d54cd6b6c1f223425d8ba9233053727a5b0fe Author: Steve Yin Date: Mon Jan 27 05:49:26 2014 + Resolves: #i124095# Multiple IAccessible and IAccessible2... interface methods do not check for NULL pointer access, nor do they trap exceptions Fixed by Michael Curran (cherry picked from commit 113171f2a5d726af6c5266e98e8e790ac6729d2d) Conflicts: winaccessibility/source/UAccCOM/MAccessible.cxx Change-Id: I28d4b885a6c2db487c2754c2ca11290b3844570b Reviewed-on: https://gerrit.libreoffice.org/7689 Reviewed-by: Caolán McNamara Tested-by: Caolán McNamara diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx index 4da2165..5fb1172 100644 --- a/winaccessibility/source/UAccCOM/MAccessible.cxx +++ b/winaccessibility/source/UAccCOM/MAccessible.cxx @@ -378,8 +378,8 @@ STDMETHODIMP CMAccessible::get_accChild(VARIANT varChild, IDispatch **ppdispChil return S_OK; } *ppdispChild = GetChildInterface(varChild.lVal); -if (!(*ppdispChild)) -return S_FALSE; +if((*ppdispChild) == NULL) +return E_FAIL; (*ppdispChild)->AddRef(); return S_OK; } @@ -1709,6 +1709,7 @@ STDMETHODIMP CMAccessible::get_nRelations( long __RPC_FAR *nRelations) SolarMutexGuard g; ENTER_PROTECTED_BLOCK +ISDESTROY() // #CHECK# if(nRelations == NULL) @@ -1802,6 +1803,7 @@ STDMETHODIMP CMAccessible::get_relations( long, IAccessibleRelation __RPC_FAR *_ SolarMutexGuard g; ENTER_PROTECTED_BLOCK +ISDESTROY() // #CHECK# if(relation == NULL || nRelations == NULL) @@ -3311,6 +3313,9 @@ STDMETHODIMP CMAccessible::get_attributes(/*[out]*/ BSTR *pAttr) { SolarMutexGuard g; +ENTER_PROTECTED_BLOCK +ISDESTROY() + Reference pRContext = m_xAccessible->getAccessibleContext(); if( !pRContext.is() ) { @@ -3334,6 +3339,7 @@ STDMETHODIMP CMAccessible::get_attributes(/*[out]*/ BSTR *pAttr) return S_OK; } +LEAVE_PROTECTED_BLOCK } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - sal/osl
sal/osl/w32/path_helper.hxx |1 + 1 file changed, 1 insertion(+) New commits: commit e105ba8f729c8476d8b300e113b598dc514c0463 Author: Steve Yin Date: Sat May 17 02:40:22 2014 + i124896 add including of rtl/alloc.h in path_helper.hxx for win32 diff --git a/sal/osl/w32/path_helper.hxx b/sal/osl/w32/path_helper.hxx index 481be6d..6306029 100644 --- a/sal/osl/w32/path_helper.hxx +++ b/sal/osl/w32/path_helper.hxx @@ -30,6 +30,7 @@ #include "path_helper.h" #include +#include namespace osl { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - sw/source
sw/source/filter/ww8/ww8graf.cxx | 23 +-- 1 file changed, 9 insertions(+), 14 deletions(-) New commits: commit 700479573567e82f9bd9ae065f18f9ec9d943300 Author: Steve Yin Date: Fri Aug 8 03:10:58 2014 + Issue 125391 - The textbox object's location changes after importing the sample file Fixed by Oliver-Rainer Wittmann diff --git a/sw/source/filter/ww8/ww8graf.cxx b/sw/source/filter/ww8/ww8graf.cxx index 091d366..ea6d2b7 100644 --- a/sw/source/filter/ww8/ww8graf.cxx +++ b/sw/source/filter/ww8/ww8graf.cxx @@ -2260,27 +2260,22 @@ RndStdIds SwWW8ImplReader::ProcessEscherAlign(SvxMSDffImportRec* pRecord, sal_uInt32 nXAlign = nCntXAlign > pRecord->nXAlign ? pRecord->nXAlign : 1; sal_uInt32 nYAlign = nCntYAlign > pRecord->nYAlign ? pRecord->nYAlign : 1; -if (pFSPA) +if ( pFSPA != NULL ) { -/* -#74188# #i15718# #i19008# -Strangely in this case the FSPA value seems to be considered before -the newer escher nXRelTo record. -*/ -// --> OD 2005-08-04 #i52565# - correct condition checking: -// first check, if and have default values. This -// is a hint that these values aren't set by the escher import - see -// method . Then, check if for each -// values, if it differs from the one in the FSPA. -if ( pRecord->nXRelTo == 2 && pRecord->nYRelTo == 2 && !bCurSectionVertical) +// #52565# - try to handle special case for objects in tables regarding its X Rel + +// if X and Y Rel values are on default take it as a hint, that they have not been set +// by +const bool bXYRelHaveDefaultValues = pRecord->nXRelTo == 2 && pRecord->nYRelTo == 2; +if ( bXYRelHaveDefaultValues + && nInTable > 0 + && !bCurSectionVertical ) { -// if differs from overwrite if ( pFSPA->nby != pRecord->nYRelTo ) { pRecord->nYRelTo = pFSPA->nby; } } -// <-- } sal_uInt32 nXRelTo = nCntRelTo > pRecord->nXRelTo ? pRecord->nXRelTo : 1; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - sd/source
sd/source/core/stlpool.cxx | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) New commits: commit 75f191b09f25e4dd357f42fdf80c2b0252d1c410 Author: Steve Yin Date: Tue Jun 24 06:43:14 2014 + Issue 125090 - The values of upper and lower spacing for default paragraph did the complete opposite. diff --git a/sd/source/core/stlpool.cxx b/sd/source/core/stlpool.cxx index 1e3a1e5..06f9259 100644 --- a/sd/source/core/stlpool.cxx +++ b/sd/source/core/stlpool.cxx @@ -264,14 +264,14 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo sal_uLong nFontSize = 20; short nFirstIndent = -600; // sal_uInt16 nIndent = nLevel * 1200; -sal_uInt16 nLower = 100; +sal_uInt16 nUpper = 100; switch (nLevel) { case 1: { nFontSize = 32; -nLower = 500; +nUpper = 500; nFirstIndent = -900; } break; @@ -279,7 +279,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo case 2: { nFontSize = 28; -nLower = 400; +nUpper = 400; nFirstIndent = -800; } break; @@ -287,13 +287,13 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo case 3: { nFontSize = 24; -nLower = 300; +nUpper = 300; } break; case 4: { -nLower = 200; +nUpper = 200; } break; } @@ -314,7 +314,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo pSheet->GetItemSet().Put(aSvxLRSpaceItem); */ // Zeilendurchschuss (Abstand nach unten) -aSvxULSpaceItem.SetLower(nLower); +aSvxULSpaceItem.SetUpper(nUpper); pSheet->GetItemSet().Put(aSvxULSpaceItem); /* i35937 ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sd/source
sd/source/core/stlpool.cxx | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) New commits: commit 229b8f91228e195fa2613486447c02260c5844e5 Author: Steve Yin Date: Tue Jun 24 06:43:14 2014 + Resolves: #i125090# The values of upper and lower spacing... for default paragraph did the complete opposite. (cherry picked from commit 75f191b09f25e4dd357f42fdf80c2b0252d1c410) Conflicts: sd/source/core/stlpool.cxx Change-Id: Idd44f7f1e4ad6acbde2733240fd357e628ac1f28 diff --git a/sd/source/core/stlpool.cxx b/sd/source/core/stlpool.cxx index da88e23..cb81501 100644 --- a/sd/source/core/stlpool.cxx +++ b/sd/source/core/stlpool.cxx @@ -274,34 +274,34 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const OUString& rLayoutName, bool } sal_uLong nFontSize = 20; -sal_uInt16 nLower = 100; +sal_uInt16 nUpper = 100; switch (nLevel) { case 1: { nFontSize = 32; -nLower = 500; +nUpper = 500; } break; case 2: { nFontSize = 28; -nLower = 400; +nUpper = 400; } break; case 3: { nFontSize = 24; -nLower = 300; +nUpper = 300; } break; case 4: { -nLower = 200; +nUpper = 200; } break; } @@ -313,8 +313,8 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const OUString& rLayoutName, bool rOutlineSet.Put( SvxFontHeightItem( nFontSize, 100, EE_CHAR_FONTHEIGHT_CJK ) ); rOutlineSet.Put( SvxFontHeightItem( SdDrawDocument::convertFontHeightToCTL( nFontSize ), 100, EE_CHAR_FONTHEIGHT_CTL ) ); -// Line distance (downwards). Stuff around here cleaned up in i35937 -aSvxULSpaceItem.SetLower(nLower); +// Line distance (upwards). Stuff around here cleaned up in i35937 +aSvxULSpaceItem.SetUpper(nUpper); pSheet->GetItemSet().Put(aSvxULSpaceItem); } } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - writerfilter/source
writerfilter/source/dmapper/CellColorHandler.cxx | 20 +--- writerfilter/source/dmapper/CellColorHandler.hxx |5 +++-- writerfilter/source/dmapper/DomainMapper.cxx | 12 +++- 3 files changed, 31 insertions(+), 6 deletions(-) New commits: commit 29072b501b276ac4d0129a86ab31d0b8634e5283 Author: Steve Yin Date: Thu Jul 3 02:52:17 2014 + Issue 119044 - Highlighter from DOCX file not imported correctly diff --git a/writerfilter/source/dmapper/CellColorHandler.cxx b/writerfilter/source/dmapper/CellColorHandler.cxx index feba9c6..deafbb6 100644 --- a/writerfilter/source/dmapper/CellColorHandler.cxx +++ b/writerfilter/source/dmapper/CellColorHandler.cxx @@ -44,7 +44,7 @@ LoggedProperties(dmapper_logger, "CellColorHandler"), m_nShadowType( 0 ), m_nColor( 0x ), m_nFillColor( 0x ), -m_bParagraph( false ) +m_eType( Others ) { } /*-- 24.04.2007 09:06:35--- @@ -225,8 +225,22 @@ TablePropertyMapPtr CellColorHandler::getProperties() nApplyColor = ( (nRed/1000) << 0x10 ) + ((nGreen/1000) << 8) + nBlue/1000; } -pPropertyMap->Insert( m_bParagraph ? PROP_PARA_BACK_COLOR : PROP_BACK_COLOR, false, -uno::makeAny( nApplyColor )); +sal_Int32 objType = PROP_CHAR_BACK_COLOR; + +switch(m_eType) +{ +case P: +pPropertyMap->Insert( PROP_PARA_BACK_COLOR, false, uno::makeAny( nApplyColor )); +break; +case C: +pPropertyMap->Insert( PROP_CHAR_BACK_COLOR, false, uno::makeAny( nApplyColor )); +break; +case Others: +default: +pPropertyMap->Insert( PROP_BACK_COLOR, false, uno::makeAny( nApplyColor )); +break; +} + return pPropertyMap; } } //namespace dmapper diff --git a/writerfilter/source/dmapper/CellColorHandler.hxx b/writerfilter/source/dmapper/CellColorHandler.hxx index 3ecfe68..b65c4d0 100644 --- a/writerfilter/source/dmapper/CellColorHandler.hxx +++ b/writerfilter/source/dmapper/CellColorHandler.hxx @@ -39,7 +39,8 @@ public: sal_Int32 m_nShadowType; sal_Int32 m_nColor; sal_Int32 m_nFillColor; -bool m_bParagraph; +enum Type {P, C, Others}; +Type m_eType; private: // Properties @@ -52,7 +53,7 @@ public: ::boost::shared_ptrgetProperties(); -void setParagraph() { m_bParagraph = true; } +void setType(Type type) { m_eType = type; } }; typedef boost::shared_ptr< CellColorHandler > CellColorHandlerPtr; }} diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx index 02248d2..4a06a1e 100644 --- a/writerfilter/source/dmapper/DomainMapper.cxx +++ b/writerfilter/source/dmapper/DomainMapper.cxx @@ -2617,7 +2617,7 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, PropertyMapPtr rContext, SprmType if( pProperties.get()) { CellColorHandlerPtr pCellColorHandler( new CellColorHandler ); -pCellColorHandler->setParagraph(); +pCellColorHandler->setType(CellColorHandler::P); pProperties->resolve(*pCellColorHandler); rContext->insert( pCellColorHandler->getProperties(), true ); } @@ -3186,6 +3186,16 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, PropertyMapPtr rContext, SprmType break; // sprmCBrc case NS_sprm::LN_CShd: /* WRITERFILTERSTATUS: done: 0, planned: 0, spent: 0 */ +{ +writerfilter::Reference::Pointer_t pProperties = rSprm.getProps(); +if( pProperties.get()) +{ +CellColorHandlerPtr pCellColorHandler( new CellColorHandler ); +pCellColorHandler->setType(CellColorHandler::C); +pProperties->resolve(*pCellColorHandler); +rContext->insert( pCellColorHandler->getProperties(), true ); +} +} break; // sprmCShd case NS_sprm::LN_CIdslRMarkDel: /* WRITERFILTERSTATUS: done: 0, planned: 2, spent: 0 */ ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - filter/source
filter/source/msfilter/escherex.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit bcd42eb4039ce1bc1f5d9fa005036fd4fe59e2c6 Author: Steve Yin Date: Wed Apr 16 07:48:58 2014 + Issue 124661 - crash when loading and re-saving attached ppt file with a single customshape diff --git a/filter/source/msfilter/escherex.cxx b/filter/source/msfilter/escherex.cxx index 3df2193..328bbfd 100644 --- a/filter/source/msfilter/escherex.cxx +++ b/filter/source/msfilter/escherex.cxx @@ -2558,7 +2558,7 @@ void ConvertEnhancedCustomShapeEquation( SdrObjCustomShape* pCustoShape, if ( pAny ) *pAny >>= sEquationSource; sal_Int32 nEquationSourceCount = sEquationSource.getLength(); -if ( nEquationSourceCount ) +if ( nEquationSourceCount && (nEquationSourceCount <= 128) ) { sal_Int32 i; for ( i = 0; i < nEquationSourceCount; i++ ) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: filter/source
filter/source/msfilter/escherex.cxx |2 +- filter/source/msfilter/msdffimp.cxx | 26 ++ 2 files changed, 15 insertions(+), 13 deletions(-) New commits: commit b827f6f81f6a8f6d8046a278a18acb69e780afba Author: Steve Yin Date: Tue Apr 15 10:12:14 2014 + Related: #i124661# crash when loading and re-saving ppt file... with a single customshape check the equation array element number. If the number is greater than 128, the equation array will not be imported. (cherry picked from commit 48653aa3a1cc24ed9ad8a14ae035b38a751e561d) Conflicts: filter/source/msfilter/msdffimp.cxx Change-Id: I49ac6ec5610a7761ca3ed4905d6fe1bc7ec079d0 diff --git a/filter/source/msfilter/escherex.cxx b/filter/source/msfilter/escherex.cxx index 7e495db..db1473f 100644 --- a/filter/source/msfilter/escherex.cxx +++ b/filter/source/msfilter/escherex.cxx @@ -2582,7 +2582,7 @@ void ConvertEnhancedCustomShapeEquation( SdrObjCustomShape* pCustoShape, if ( pAny ) *pAny >>= sEquationSource; sal_Int32 nEquationSourceCount = sEquationSource.getLength(); -if ( nEquationSourceCount ) +if ( nEquationSourceCount && (nEquationSourceCount <= 128) ) { sal_Int32 i; for ( i = 0; i < nEquationSourceCount; i++ ) diff --git a/filter/source/msfilter/msdffimp.cxx b/filter/source/msfilter/msdffimp.cxx index d7d6ba8..eb2e91d 100644 --- a/filter/source/msfilter/msdffimp.cxx +++ b/filter/source/msfilter/msdffimp.cxx @@ -1866,20 +1866,22 @@ void DffPropertyReader::ApplyCustomShapeGeometryAttributes( SvStream& rIn, SfxIt sal_uInt16 nElemSize = 8; rIn.ReadUInt16( nNumElem ).ReadUInt16( nNumElemMem ).ReadUInt16( nElemSize ); } -sal_Int16 nP1, nP2, nP3; -sal_uInt16 nFlags; - -uno::Sequence< OUString > aEquations( nNumElem ); -for ( sal_uInt16 i = 0; i < nNumElem; i++ ) +if ( nNumElem <= 128 ) { -rIn.ReadUInt16( nFlags ).ReadInt16( nP1 ).ReadInt16( nP2 ).ReadInt16( nP3 ); -aEquations[ i ] = EnhancedCustomShape2d::GetEquation( nFlags, nP1, nP2, nP3 ); +uno::Sequence< OUString > aEquations( nNumElem ); +for ( sal_uInt16 i = 0; i < nNumElem; i++ ) +{ +sal_Int16 nP1(0), nP2(0), nP3(0); +sal_uInt16 nFlags(0); +rIn.ReadUInt16( nFlags ).ReadInt16( nP1 ).ReadInt16( nP2 ).ReadInt16( nP3 ); +aEquations[ i ] = EnhancedCustomShape2d::GetEquation( nFlags, nP1, nP2, nP3 ); +} +// pushing the whole Equations element +const OUString sEquations( "Equations" ); +aProp.Name = sEquations; +aProp.Value <<= aEquations; +aPropVec.push_back( aProp ); } -// pushing the whole Equations element -const OUString sEquations( "Equations" ); -aProp.Name = sEquations; -aProp.Value <<= aEquations; -aPropVec.push_back( aProp ); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: 2 commits - comphelper/source include/comphelper sfx2/source svtools/source sw/source
comphelper/source/container/embeddedobjectcontainer.cxx | 36 include/comphelper/embeddedobjectcontainer.hxx |3 + sfx2/source/appl/linkmgr2.cxx | 12 - svtools/source/misc/embedhlp.cxx| 29 sw/source/filter/ww8/ww8graf.cxx| 21 +++-- 5 files changed, 70 insertions(+), 31 deletions(-) New commits: commit 227f3aab1791ffde82fe930ea1c9f7ed4ed2d82d Author: Steve Yin Date: Fri Aug 8 03:10:58 2014 + Resolves: #i125391# textbox object's location changes... after importing the sample file Fixed by Oliver-Rainer Wittmann (cherry picked from commit 700479573567e82f9bd9ae065f18f9ec9d943300) Conflicts: sw/source/filter/ww8/ww8graf.cxx Change-Id: I963689a80dfe4ac1439afb29132015e900886317 diff --git a/sw/source/filter/ww8/ww8graf.cxx b/sw/source/filter/ww8/ww8graf.cxx index 1445ce5..c145c22 100644 --- a/sw/source/filter/ww8/ww8graf.cxx +++ b/sw/source/filter/ww8/ww8graf.cxx @@ -2138,20 +2138,15 @@ RndStdIds SwWW8ImplReader::ProcessEscherAlign(SvxMSDffImportRec* pRecord, if (pFSPA) { -/* -#i15718# #i19008# -Strangely in this case the FSPA value seems to be considered before -the newer escher nXRelTo record. -*/ -// #i52565# - correct condition checking: -// first check, if and have default values. This -// is a hint that these values aren't set by the escher import - see -// method . Then, check if for each -// values, if it differs from the one in the FSPA. - -if ( *(pRecord->pXRelTo) == 2 && *(pRecord->pYRelTo) == 2 && !bCurSectionVertical) +// #i52565# - try to handle special case for objects in tables regarding its X Rel + +// if X and Y Rel values are on default take it as a hint, that they have not been set +// by +const bool bXYRelHaveDefaultValues = *(pRecord->pXRelTo) == 2 && *(pRecord->pYRelTo) == 2; +if ( bXYRelHaveDefaultValues + && nInTable > 0 + && !bCurSectionVertical ) { -// if differs from overwrite if ( pFSPA->nby != *(pRecord->pYRelTo) ) { *(pRecord->pYRelTo) = pFSPA->nby; commit d005acae3aa315921f2c331612131626c470bd22 Author: Armin Le Grand Date: Thu Aug 7 09:59:26 2014 + Resolves: #i125386# secured user request and changed some bools to bitfield (cherry picked from commit 5e3cbe056c19bea5018dbf1fd4b2bc8f8b030ff3) Conflicts: comphelper/inc/comphelper/embeddedobjectcontainer.hxx comphelper/source/container/embeddedobjectcontainer.cxx sfx2/source/appl/linkmgr2.cxx svtools/source/misc/embedhlp.cxx Change-Id: I7e9b20a87ca6afe8cb91c577860a6c6b72368ee9 diff --git a/comphelper/source/container/embeddedobjectcontainer.cxx b/comphelper/source/container/embeddedobjectcontainer.cxx index d614c1a..e3696f1 100644 --- a/comphelper/source/container/embeddedobjectcontainer.cxx +++ b/comphelper/source/container/embeddedobjectcontainer.cxx @@ -62,7 +62,10 @@ struct EmbedImpl uno::WeakReference < uno::XInterface > m_xModel; //EmbeddedObjectContainerNameMap maTempObjectContainer; //uno::Reference < embed::XStorage > mxTempStorage; -bool bOwnsStorage; + +/// bitfield +bool mbOwnsStorage : 1; +bool mbUserAllowsLinkUpdate : 1; const uno::Reference < embed::XStorage >& GetReplacements(); }; @@ -93,7 +96,8 @@ EmbeddedObjectContainer::EmbeddedObjectContainer() { pImpl = new EmbedImpl; pImpl->mxStorage = ::comphelper::OStorageHelper::GetTemporaryStorage(); -pImpl->bOwnsStorage = true; +pImpl->mbOwnsStorage = true; +pImpl->mbUserAllowsLinkUpdate = true; pImpl->mpTempObjectContainer = 0; } @@ -101,7 +105,8 @@ EmbeddedObjectContainer::EmbeddedObjectContainer( const uno::Reference < embed:: { pImpl = new EmbedImpl; pImpl->mxStorage = rStor; -pImpl->bOwnsStorage = false; +pImpl->mbOwnsStorage = false; +pImpl->mbUserAllowsLinkUpdate = true; pImpl->mpTempObjectContainer = 0; } @@ -109,7 +114,8 @@ EmbeddedObjectContainer::EmbeddedObjectContainer( const uno::Reference < embed:: { pImpl = new EmbedImpl; pImpl->mxStorage = rStor; -pImpl->bOwnsStorage = false; +pImpl->mbOwnsStorage = false; +pImpl->mbUserAllowsLinkUpdate = true; pImpl->mpTempObjectContainer = 0; pImpl->m_xModel = xModel; } @@ -118,11 +124,11 @@ void EmbeddedObjectContainer::SwitchPersistence( const uno::Reference < embed::X { ReleaseImageSubStorage(); -if ( pImpl->bOwnsStorage ) +if ( pImpl->mbOwnsStorage ) pImpl->mxStorage->dispose(); pIm
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - vcl/source vcl/win
vcl/source/app/svapp.cxx |5 +++-- vcl/source/app/svdata.cxx | 22 +++--- vcl/win/source/window/salframe.cxx |2 +- 3 files changed, 15 insertions(+), 14 deletions(-) New commits: commit d9f425e86d95d6fc9fbf17f85c445875b5855b57 Author: Steve Yin Date: Wed Apr 2 06:08:41 2014 + Issue 124573 - Office does not start when accessibility is activated. Fixed access bridge initialization issue in vcl. diff --git a/vcl/source/app/svapp.cxx b/vcl/source/app/svapp.cxx index e8eb02f..978fec7 100644 --- a/vcl/source/app/svapp.cxx +++ b/vcl/source/app/svapp.cxx @@ -2058,12 +2058,13 @@ sal_Bool Application::IsAccessibilityEnabled() sal_Bool InitAccessBridge( sal_Bool bShowCancel, sal_Bool &rCancelled ) { -sal_Bool bRet = true; +sal_Bool bRet = sal_True; + +rCancelled = sal_False; // Disable Java bridge on UNIX and OS/2 #ifndef WNT (void) bShowCancel; // unsued -(void) rCancelled; // unused #else // Checking HasAtHook() was introduced with IBM's IA2 CWS. if( HasAtHook() ) diff --git a/vcl/source/app/svdata.cxx b/vcl/source/app/svdata.cxx index 7325c09..9d77057 100644 --- a/vcl/source/app/svdata.cxx +++ b/vcl/source/app/svdata.cxx @@ -442,7 +442,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled) { rCancelled = sal_False; -bool bErrorMessage = true; +sal_Bool bErrorMessage = sal_True; // Note: // if bAllowCancel is sal_True we were called from application startup @@ -452,13 +452,13 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled) try { -bool bSuccess = true; +sal_Bool bSuccess = sal_True; // No error messages when env var is set .. static const char* pEnv = getenv("SAL_ACCESSIBILITY_ENABLED" ); if( pEnv && *pEnv ) { -bErrorMessage = false; +bErrorMessage = sal_False; } ImplSVData* pSVData = ImplGetSVData(); @@ -479,7 +479,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled) } if( !pSVData->mxAccessBridge.is() ) -bSuccess = false; +bSuccess = sal_False; return bSuccess; #endif css::uno::Reference< XExtendedToolkit > xToolkit = @@ -512,7 +512,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled) } if( !pSVData->mxAccessBridge.is() ) -bSuccess = false; +bSuccess = sal_False; } } @@ -541,7 +541,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled) rCancelled = sal_True; } -return false; +return sal_False; } catch(::com::sun::star::java::JavaVMCreationFailureException&) @@ -566,7 +566,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled) rCancelled = sal_True; } -return false; +return sal_False; } catch(::com::sun::star::java::MissingJavaRuntimeException&) @@ -591,7 +591,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled) rCancelled = sal_True; } -return false; +return sal_False; } catch(::com::sun::star::java::JavaDisabledException&) @@ -616,7 +616,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled) rCancelled = sal_True; } -return false; +return sal_False; } @@ -670,12 +670,12 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled) } } -return false; +return sal_False; } catch (...) { -return false; +return sal_False; } } diff --git a/vcl/win/source/window/salframe.cxx b/vcl/win/source/window/salframe.cxx index 86ef843..835ea98 100644 --- a/vcl/win/source/window/salframe.cxx +++ b/vcl/win/source/window/salframe.cxx @@ -6211,7 +6211,7 @@ LRESULT CALLBACK SalFrameWndProc( HWND hWnd, UINT nMsg, WPARAM wParam, LPARAM lP // Make sure to launch Accessibiliity only the following criterias are satisfied to avoid RFT interrupts regular acc processing if (g_acc_manager1 == NULL) { -sal_Bool bCancelled; +sal_Bool bCancelled(sal_False); InitAccessBridge(sal_False,bCancelled); if( bCancelled ) break; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - accessibility/source vcl/inc vcl/source
accessibility/source/standard/vclxaccessiblebox.cxx |1 + accessibility/source/standard/vclxaccessiblelist.cxx |1 + vcl/inc/vcl/vclevent.hxx |1 + vcl/source/control/combobox.cxx |2 +- vcl/source/control/lstbox.cxx|2 +- 5 files changed, 5 insertions(+), 2 deletions(-) New commits: commit ae97dcb5b8d2dead81b007c5c71daf608f0c7bc3 Author: Steve Yin Date: Tue Jan 28 09:55:07 2014 + Bug 124008 - listbox entry's are selected automatically on mouse over instead of mouse click diff --git a/accessibility/source/standard/vclxaccessiblebox.cxx b/accessibility/source/standard/vclxaccessiblebox.cxx index 2ae5be1..e4645a0 100644 --- a/accessibility/source/standard/vclxaccessiblebox.cxx +++ b/accessibility/source/standard/vclxaccessiblebox.cxx @@ -116,6 +116,7 @@ void VCLXAccessibleBox::ProcessWindowEvent (const VclWindowEvent& rVclWindowEven { switch ( rVclWindowEvent.GetId() ) { +case VCLEVENT_DROPDOWN_SELECT: case VCLEVENT_LISTBOX_SELECT: case VCLEVENT_LISTBOX_FOCUSITEMCHANGED: diff --git a/accessibility/source/standard/vclxaccessiblelist.cxx b/accessibility/source/standard/vclxaccessiblelist.cxx index 9b55ed5..091611a 100644 --- a/accessibility/source/standard/vclxaccessiblelist.cxx +++ b/accessibility/source/standard/vclxaccessiblelist.cxx @@ -363,6 +363,7 @@ void VCLXAccessibleList::ProcessWindowEvent (const VclWindowEvent& rVclWindowEve { switch ( rVclWindowEvent.GetId() ) { +case VCLEVENT_DROPDOWN_SELECT: case VCLEVENT_LISTBOX_SELECT: if ( !m_bDisableProcessEvent ) UpdateSelection_Impl_Acc(b_IsDropDownList); diff --git a/vcl/inc/vcl/vclevent.hxx b/vcl/inc/vcl/vclevent.hxx index 89c651b..7ba0aa6 100644 --- a/vcl/inc/vcl/vclevent.hxx +++ b/vcl/inc/vcl/vclevent.hxx @@ -154,6 +154,7 @@ namespace com { namespace sun { namespace star { #define VCLEVENT_ITEM_COLLAPSED 1175 // <-- #define VCLEVENT_DROPDOWN_PRE_OPEN 1176 +#define VCLEVENT_DROPDOWN_SELECT1177 #define VCLEVENT_LISTBOX_FOCUSITEMCHANGED 1180 // #define VCLEVENT_EDIT_CARETCHANGED // IA2 CWS. MT: VCL only has selection API - difference for selection_changed vs. caret_changed is handled in accessibility wrapper since OOo 3.2 diff --git a/vcl/source/control/combobox.cxx b/vcl/source/control/combobox.cxx index 38d1098..4f9a2da 100644 --- a/vcl/source/control/combobox.cxx +++ b/vcl/source/control/combobox.cxx @@ -475,7 +475,7 @@ IMPL_LINK( ComboBox, ImplSelectHdl, void*, EMPTYARG ) } IMPL_LINK( ComboBox, ImplListItemSelectHdl, void*, EMPTYARG ) { -ImplCallEventListeners( VCLEVENT_LISTBOX_SELECT ); +ImplCallEventListeners( VCLEVENT_DROPDOWN_SELECT ); return 1; } // --- diff --git a/vcl/source/control/lstbox.cxx b/vcl/source/control/lstbox.cxx index 511c2aa..375bb7e 100644 --- a/vcl/source/control/lstbox.cxx +++ b/vcl/source/control/lstbox.cxx @@ -258,7 +258,7 @@ IMPL_LINK( ListBox, ImplFocusHdl, void *, nPos ) } IMPL_LINK( ListBox, ImplListItemSelectHdl, void*, EMPTYARG ) { -ImplCallEventListeners( VCLEVENT_LISTBOX_SELECT ); +ImplCallEventListeners( VCLEVENT_DROPDOWN_SELECT ); return 1; } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: accessibility/source include/vcl vcl/source
accessibility/source/standard/vclxaccessiblebox.cxx |1 + accessibility/source/standard/vclxaccessiblelist.cxx |1 + include/vcl/vclevent.hxx |1 + vcl/source/control/combobox.cxx |2 +- vcl/source/control/lstbox.cxx|2 +- 5 files changed, 5 insertions(+), 2 deletions(-) New commits: commit 05534b5523a264a18d5ee4b8014d6a0eb6470071 Author: Steve Yin Date: Tue Jan 28 09:55:07 2014 + Resolves: #i124008# listbox entry's are selected automatically... on mouse over instead of mouse click (cherry picked from commit ae97dcb5b8d2dead81b007c5c71daf608f0c7bc3) Change-Id: Ib1ce0db60785ddc96473ef4ce88b578287956164 diff --git a/accessibility/source/standard/vclxaccessiblebox.cxx b/accessibility/source/standard/vclxaccessiblebox.cxx index dbb5dcd..b9f3a3e 100644 --- a/accessibility/source/standard/vclxaccessiblebox.cxx +++ b/accessibility/source/standard/vclxaccessiblebox.cxx @@ -110,6 +110,7 @@ void VCLXAccessibleBox::ProcessWindowEvent (const VclWindowEvent& rVclWindowEven { switch ( rVclWindowEvent.GetId() ) { +case VCLEVENT_DROPDOWN_SELECT: case VCLEVENT_LISTBOX_SELECT: case VCLEVENT_LISTBOX_FOCUSITEMCHANGED: diff --git a/accessibility/source/standard/vclxaccessiblelist.cxx b/accessibility/source/standard/vclxaccessiblelist.cxx index 29a65b5..cc0e5f7 100644 --- a/accessibility/source/standard/vclxaccessiblelist.cxx +++ b/accessibility/source/standard/vclxaccessiblelist.cxx @@ -345,6 +345,7 @@ void VCLXAccessibleList::ProcessWindowEvent (const VclWindowEvent& rVclWindowEve { switch ( rVclWindowEvent.GetId() ) { +case VCLEVENT_DROPDOWN_SELECT: case VCLEVENT_LISTBOX_SELECT: if ( !m_bDisableProcessEvent ) UpdateSelection_Impl_Acc(b_IsDropDownList); diff --git a/include/vcl/vclevent.hxx b/include/vcl/vclevent.hxx index 92ffca9..a4f4e29 100644 --- a/include/vcl/vclevent.hxx +++ b/include/vcl/vclevent.hxx @@ -151,6 +151,7 @@ namespace com { namespace sun { namespace star { #define VCLEVENT_ITEM_EXPANDED 1174 #define VCLEVENT_ITEM_COLLAPSED 1175 #define VCLEVENT_DROPDOWN_PRE_OPEN 1176 +#define VCLEVENT_DROPDOWN_SELECT1177 #define VCLEVENT_LISTBOX_FOCUSITEMCHANGED 1180 // VclMenuEvent diff --git a/vcl/source/control/combobox.cxx b/vcl/source/control/combobox.cxx index 6fb9d47..aa34972 100644 --- a/vcl/source/control/combobox.cxx +++ b/vcl/source/control/combobox.cxx @@ -463,7 +463,7 @@ IMPL_LINK_NOARG(ComboBox, ImplSelectHdl) IMPL_LINK( ComboBox, ImplListItemSelectHdl, void*, EMPTYARG ) { -ImplCallEventListeners( VCLEVENT_LISTBOX_SELECT ); +ImplCallEventListeners( VCLEVENT_DROPDOWN_SELECT ); return 1; } diff --git a/vcl/source/control/lstbox.cxx b/vcl/source/control/lstbox.cxx index 2af18e2..551382d 100644 --- a/vcl/source/control/lstbox.cxx +++ b/vcl/source/control/lstbox.cxx @@ -249,7 +249,7 @@ IMPL_LINK( ListBox, ImplFocusHdl, void *, nPos ) IMPL_LINK( ListBox, ImplListItemSelectHdl, void*, EMPTYARG ) { -ImplCallEventListeners( VCLEVENT_LISTBOX_SELECT ); +ImplCallEventListeners( VCLEVENT_DROPDOWN_SELECT ); return 1; } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - chart2/source
chart2/source/controller/dialogs/tp_DataSource.cxx |9 ++--- 1 file changed, 6 insertions(+), 3 deletions(-) New commits: commit bbc6da7c08ee90c415d09b42cb19d9cfe003aaf2 Author: Steve Yin Date: Wed Jan 29 07:19:56 2014 + Bug 124021 - Data range dialog is broken A side effect from IA2 integration. Revert changes. diff --git a/chart2/source/controller/dialogs/tp_DataSource.cxx b/chart2/source/controller/dialogs/tp_DataSource.cxx index 4433ada..e7253d8 100644 --- a/chart2/source/controller/dialogs/tp_DataSource.cxx +++ b/chart2/source/controller/dialogs/tp_DataSource.cxx @@ -69,7 +69,10 @@ const OUString lcl_aLabelRole( RTL_CONSTASCII_USTRINGPARAM( "label" )); String lcl_GetRoleLBEntry( const OUString & rRole, const OUString & rRange ) { -String aEntry(::chart::DialogModel::ConvertRoleFromInternalToUI( rRole )); +String aEntry( rRole ); +aEntry += '\t'; +aEntry += String( +::chart::DialogModel::ConvertRoleFromInternalToUI( rRole )); aEntry += '\t'; aEntry += String( rRange ); @@ -137,8 +140,8 @@ OUString lcl_GetSequenceNameForLabel( ::chart::SeriesEntry * pEntry ) } static long lcl_pRoleListBoxTabs[] = -{ 2,// Number of Tabs -0, 75 +{ 3,// Number of Tabs +0, 0, 75 }; void lcl_ShowChooserButton( ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - 3 commits - bridges/source sc/inc sc/source writerfilter/source
bridges/source/cpp_uno/gcc3_solaris_intel/uno2cpp.cxx | 17 sc/inc/document.hxx |1 sc/source/core/data/documen3.cxx |3 sc/source/ui/unoobj/nameuno.cxx | 67 +- writerfilter/source/dmapper/DomainMapper.cxx |4 - 5 files changed, 74 insertions(+), 18 deletions(-) New commits: commit d89ee4f6306ce8f290e01c80edbcc28a5cd8dcc3 Author: Steve Yin Date: Fri Feb 14 08:44:17 2014 + Bug 124065 - [Performance] Low performance opening attached .ods diff --git a/sc/inc/document.hxx b/sc/inc/document.hxx index 3338e25..d49f648 100644 --- a/sc/inc/document.hxx +++ b/sc/inc/document.hxx @@ -503,6 +503,7 @@ public: ScFieldEditEngine* CreateFieldEditEngine(); voidDisposeFieldEditEngine(ScFieldEditEngine*& rpEditEngine); +// Note: the returned ScRangeName is volatile, and it can be changed at any time. SC_DLLPUBLIC ScRangeName* GetRangeName(); voidSetRangeName( ScRangeName* pNewRangeName ); SCTAB GetMaxTableNumber() { return nMaxTableNumber; } diff --git a/sc/source/core/data/documen3.cxx b/sc/source/core/data/documen3.cxx index 739028c..7be975f 100644 --- a/sc/source/core/data/documen3.cxx +++ b/sc/source/core/data/documen3.cxx @@ -95,6 +95,9 @@ ScRangeName* ScDocument::GetRangeName() void ScDocument::SetRangeName( ScRangeName* pNewRangeName ) { +if (pRangeName == pNewRangeName) +return; + if (pRangeName) delete pRangeName; pRangeName = pNewRangeName; diff --git a/sc/source/ui/unoobj/nameuno.cxx b/sc/source/ui/unoobj/nameuno.cxx index d4fc7ca..203603d 100644 --- a/sc/source/ui/unoobj/nameuno.cxx +++ b/sc/source/ui/unoobj/nameuno.cxx @@ -160,7 +160,6 @@ void ScNamedRangeObj::Modify_Impl( const String* pNewRangeName, const ScTokenArr newNameScope = nameScope; //end of add -ScRangeName* pNewRanges = new ScRangeName( *pNames ); ScRangeData* pOld = (*pNames)[nPos]; String aInsName(pOld->GetName()); @@ -185,18 +184,38 @@ void ScNamedRangeObj::Modify_Impl( const String* pNewRangeName, const ScTokenArr pNew->SetIndex( pOld->GetIndex() ); pNew->SetRangeScope(newNameScope); -pNewRanges->AtFree( nPos ); -if ( pNewRanges->Insert(pNew) ) +const bool bSupportUndo(!pDoc->IsImportingXML()); +if ( bSupportUndo ) { - ScDocFunc aFunc(*pDocShell); - aFunc.SetNewRangeNames( pNewRanges, sal_True ); - aName = aInsName; //! broadcast? - aScopeName = pNewScopeName ? *pNewScopeName : aScopeName; +ScRangeName* pNewRanges = new ScRangeName( *pNames ); +pNewRanges->AtFree( nPos ); +if ( pNewRanges->Insert(pNew) ) +{ + ScDocFunc aFunc(*pDocShell); + aFunc.SetNewRangeNames( pNewRanges, sal_True ); + aName = aInsName; //! broadcast? + aScopeName = pNewScopeName ? *pNewScopeName : aScopeName; +} +else +{ + delete pNew; //! uno::Exception/Fehler oder so + delete pNewRanges; +} } else { - delete pNew; //! uno::Exception/Fehler oder so - delete pNewRanges; +pNames->AtFree( nPos ); +if ( pNames->Insert(pNew) ) +{ + ScDocFunc aFunc(*pDocShell); + aFunc.SetNewRangeNames( pNames, sal_True ); + aName = aInsName; //! broadcast? + aScopeName = pNewScopeName ? *pNewScopeName : aScopeName; +} +else +{ + delete pNew; //! uno::Exception/Fehler oder so +} } } } @@ -596,23 +615,41 @@ void ScNamedRangesObj::I
[Libreoffice-commits] core.git: sc/source
sc/source/core/data/documen3.cxx |4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) New commits: commit 8610d99b04720958b42047f08ef1f5b00a2d4f4f Author: Steve Yin Date: Fri Feb 14 08:44:17 2014 + Related: #i124065# Low performance opening attached .ods (cherry picked from commit d89ee4f6306ce8f290e01c80edbcc28a5cd8dcc3) Conflicts: sc/inc/document.hxx sc/source/core/data/documen3.cxx sc/source/ui/unoobj/nameuno.cxx Change-Id: Iced475cefe1df62920535db252841fe40339ebb1 diff --git a/sc/source/core/data/documen3.cxx b/sc/source/core/data/documen3.cxx index e8fed65d..5cafb2a 100644 --- a/sc/source/core/data/documen3.cxx +++ b/sc/source/core/data/documen3.cxx @@ -200,11 +200,13 @@ void ScDocument::SetRangeName(SCTAB nTab, ScRangeName* pNew) void ScDocument::SetRangeName( ScRangeName* pNewRangeName ) { +if (pRangeName == pNewRangeName) +return; + delete pRangeName; pRangeName = pNewRangeName; } - const ScRangeData* ScDocument::GetRangeAtBlock( const ScRange& rBlock, OUString* pName ) const { const ScRangeData* pData = NULL; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'aoo/trunk' - sc/source
sc/source/ui/Accessibility/AccessibleDocument.cxx |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) New commits: commit 572001d5865e4d11523e72a506e9a6eca7f23786 Author: Steve Yin Date: Tue Mar 11 05:53:58 2014 + Bug 123622 - [ia2] Calc: No focus event fired on cell when new spreadsheet is created diff --git a/sc/source/ui/Accessibility/AccessibleDocument.cxx b/sc/source/ui/Accessibility/AccessibleDocument.cxx index e55bc96..688ef34 100644 --- a/sc/source/ui/Accessibility/AccessibleDocument.cxx +++ b/sc/source/ui/Accessibility/AccessibleDocument.cxx @@ -1651,6 +1651,8 @@ void ScAccessibleDocument::Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) if (mpAccessibleSpreadsheet) mpAccessibleSpreadsheet->BoundingBoxChanged(); +if (mpAccessibleSpreadsheet && mpViewShell->IsActive()) +mpAccessibleSpreadsheet->FireFirstCellFocus(); } else if (mpAccessibleSpreadsheet) { @@ -2266,7 +2268,6 @@ uno::Reference < XAccessible > mpAccessibleSpreadsheet->acquire(); mpAccessibleSpreadsheet->Init(); mbCompleteSheetSelected = IsTableSelected(); -mpAccessibleSpreadsheet->FireFirstCellFocus(); // i123622 } return mpAccessibleSpreadsheet; } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/source
sc/source/ui/Accessibility/AccessibleDocument.cxx |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) New commits: commit a96ac994f0fc4fc52dab7a496a8485d3eba10913 Author: Steve Yin Date: Tue Mar 11 05:53:58 2014 + Resolves: #i123622# [ia2] Calc: No focus event fired on cell... when new spreadsheet is created (cherry picked from commit 572001d5865e4d11523e72a506e9a6eca7f23786) Change-Id: I10212bf9ddeb9eb06c1d9105951a5eb9d8578029 diff --git a/sc/source/ui/Accessibility/AccessibleDocument.cxx b/sc/source/ui/Accessibility/AccessibleDocument.cxx index 40b0f77..9f2db91 100644 --- a/sc/source/ui/Accessibility/AccessibleDocument.cxx +++ b/sc/source/ui/Accessibility/AccessibleDocument.cxx @@ -1648,6 +1648,8 @@ void ScAccessibleDocument::Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) if (mpAccessibleSpreadsheet) mpAccessibleSpreadsheet->BoundingBoxChanged(); +if (mpAccessibleSpreadsheet && mpViewShell->IsActive()) +mpAccessibleSpreadsheet->FireFirstCellFocus(); } else if (mpAccessibleSpreadsheet) { @@ -2260,7 +2262,6 @@ uno::Reference < XAccessible > mpAccessibleSpreadsheet->acquire(); mpAccessibleSpreadsheet->Init(); mbCompleteSheetSelected = IsTableSelected(); -mpAccessibleSpreadsheet->FireFirstCellFocus(); // i123622 } return mpAccessibleSpreadsheet; } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/91/7691/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/91/7691/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits