diff options
author | Caolán McNamara <caolanm@redhat.com> | 2020-05-27 17:11:34 +0100 |
---|---|---|
committer | Xisco Fauli <xiscofauli@libreoffice.org> | 2020-06-01 15:46:33 +0200 |
commit | f753baddc057a3bf4881ac78a15cd11fa847ee28 (patch) | |
tree | e62c5ce04a7be19c338f813392748ddecbd6f66c /sd | |
parent | tdf#131684 tdf#132236 sw_redlinehide: fix upper of frame moved... (diff) | |
download | core-f753baddc057a3bf4881ac78a15cd11fa847ee28.tar.gz core-f753baddc057a3bf4881ac78a15cd11fa847ee28.zip |
Resolves: tdf#133411 drop CONTENT_FLOWS_TO from dialog to search results
in the document, looks like only the calc one actually works, and when
it works on large quantities of results calc grinds to a complete halt
This was introduced with:
commit b41332475783c31136673fb44cf4c411bb0148f8
Date: Mon Dec 2 15:54:29 2013 +0000
Integrate branch of IAccessible2
and has been a problem on and off with calc's potentially ~infinite grid
There is the on-by-default search results dialog in calc (which has a limit on
how many it shows) which provides an alternative route to iterate through the
results
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95006
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
(cherry picked from commit 0b94169d820482434dc98a37c3c1633ca46fd0dc)
Change-Id: I2685e480d2d15220be0bddbc83baad3992e7d5d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95014
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Diffstat (limited to 'sd')
-rw-r--r-- | sd/IwyuFilter_sd.yaml | 1 | ||||
-rw-r--r-- | sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx | 9 | ||||
-rw-r--r-- | sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx | 151 | ||||
-rw-r--r-- | sd/source/ui/inc/AccessibleDocumentViewBase.hxx | 7 | ||||
-rw-r--r-- | sd/source/ui/inc/AccessibleDrawDocumentView.hxx | 6 | ||||
-rw-r--r-- | sd/source/ui/view/Outliner.cxx | 11 |
6 files changed, 1 insertions, 184 deletions
diff --git a/sd/IwyuFilter_sd.yaml b/sd/IwyuFilter_sd.yaml index d69c951a8bbd..4681b29a8259 100644 --- a/sd/IwyuFilter_sd.yaml +++ b/sd/IwyuFilter_sd.yaml @@ -146,7 +146,6 @@ blacklist: sd/source/ui/inc/AccessibleDocumentViewBase.hxx: # base class has to be a complete type - com/sun/star/accessibility/XAccessibleExtendedAttributes.hpp - - com/sun/star/accessibility/XAccessibleGetAccFlowTo.hpp - com/sun/star/awt/XFocusListener.hpp - com/sun/star/awt/XWindowListener.hpp - com/sun/star/beans/XPropertyChangeListener.hpp diff --git a/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx b/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx index d0fc351dee60..77d88ffb1831 100644 --- a/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx +++ b/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx @@ -381,7 +381,6 @@ uno::Any SAL_CALL static_cast<awt::XWindowListener*>(this), static_cast<awt::XFocusListener*>(this) ,static_cast<XAccessibleExtendedAttributes*>(this) - ,static_cast<XAccessibleGetAccFlowTo*>(this) ); return aReturn; } @@ -764,14 +763,6 @@ uno::Any SAL_CALL AccessibleDocumentViewBase::getExtendedAttributes() return anyAtrribute; } -css::uno::Sequence< css::uno::Any > - SAL_CALL AccessibleDocumentViewBase::getAccFlowTo(const css::uno::Any&, sal_Int32 ) -{ - css::uno::Sequence< uno::Any> aRet; - - return aRet; -} - sal_Int32 SAL_CALL AccessibleDocumentViewBase::getForeground( ) { return sal_Int32(COL_BLACK); diff --git a/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx b/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx index 2e295a0eaf56..258aa4cc0bfa 100644 --- a/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx +++ b/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx @@ -30,7 +30,6 @@ #include <com/sun/star/lang/XMultiServiceFactory.hpp> #include <com/sun/star/view/XSelectionSupplier.hpp> #include <cppuhelper/queryinterface.hxx> -#include <comphelper/accflowenum.hxx> #include <comphelper/processfactory.hxx> #include <sal/log.hxx> #include <tools/debug.hxx> @@ -737,156 +736,6 @@ void SAL_CALL AccessibleDrawDocumentView::disposing() AccessibleDocumentViewBase::disposing (); } -css::uno::Sequence< css::uno::Any > - SAL_CALL AccessibleDrawDocumentView::getAccFlowTo(const css::uno::Any& rAny, sal_Int32 nType) -{ - SolarMutexGuard g; - - if (nType == AccessibilityFlowTo::FORSPELLCHECKFLOWTO) - { - uno::Reference< css::drawing::XShape > xShape; - rAny >>= xShape; - if ( mpChildrenManager && xShape.is() ) - { - uno::Reference < XAccessible > xAcc = mpChildrenManager->GetChild(xShape); - uno::Reference < XAccessibleSelection > xAccSelection( xAcc, uno::UNO_QUERY ); - if ( xAccSelection.is() ) - { - if ( xAccSelection->getSelectedAccessibleChildCount() ) - { - uno::Reference < XAccessible > xSel = xAccSelection->getSelectedAccessibleChild( 0 ); - if ( xSel.is() ) - { - uno::Reference < XAccessibleContext > xSelContext( xSel->getAccessibleContext() ); - if ( xSelContext.is() ) - { - //if in sw we find the selected paragraph here - if ( xSelContext->getAccessibleRole() == AccessibleRole::PARAGRAPH ) - { - uno::Sequence<uno::Any> aRet( 1 ); - aRet[0] <<= xSel; - return aRet; - } - } - } - } - } - uno::Reference<XAccessible> xPara = GetSelAccContextInTable(); - if ( xPara.is() ) - { - uno::Sequence<uno::Any> aRet( 1 ); - aRet[0] <<= xPara; - return aRet; - } - } - else - { - goto Rt; - } - } - else if (nType == AccessibilityFlowTo::FORFINDREPLACEFLOWTO_ITEM || nType == AccessibilityFlowTo::FORFINDREPLACEFLOWTO_RANGE) - { - sal_Int32 nChildCount = getSelectedAccessibleChildCount(); - if ( nChildCount ) - { - uno::Reference < XAccessible > xSel = getSelectedAccessibleChild( 0 ); - if ( xSel.is() ) - { - uno::Reference < XAccessibleSelection > xAccChildSelection( xSel, uno::UNO_QUERY ); - if ( xAccChildSelection.is() ) - { - if ( xAccChildSelection->getSelectedAccessibleChildCount() ) - { - uno::Reference < XAccessible > xChildSel = xAccChildSelection->getSelectedAccessibleChild( 0 ); - if ( xChildSel.is() ) - { - uno::Reference < XAccessibleContext > xChildSelContext( xChildSel->getAccessibleContext() ); - if ( xChildSelContext.is() && - xChildSelContext->getAccessibleRole() == AccessibleRole::PARAGRAPH ) - { - uno::Sequence<uno::Any> aRet( 1 ); - aRet[0] <<= xChildSel; - return aRet; - } - } - } - } - } - } - else - { - uno::Reference<XAccessible> xPara = GetSelAccContextInTable(); - if ( xPara.is() ) - { - uno::Sequence<uno::Any> aRet( 1 ); - aRet[0] <<= xPara; - return aRet; - } - } - } - -Rt: - css::uno::Sequence< uno::Any> aRet; - return aRet; -} -uno::Reference<XAccessible> AccessibleDrawDocumentView::GetSelAccContextInTable() -{ - uno::Reference<XAccessible> xRet; - sal_Int32 nCount = mpChildrenManager ? mpChildrenManager->GetChildCount() : 0; - if ( nCount ) - { - for ( sal_Int32 i = 0; i < nCount; i++ ) - { - try - { - uno::Reference<XAccessible> xObj = mpChildrenManager->GetChild(i); - if ( xObj.is() ) - { - uno::Reference<XAccessibleContext> xObjContext( xObj, uno::UNO_QUERY ); - if ( xObjContext.is() && xObjContext->getAccessibleRole() == AccessibleRole::TABLE ) - { - uno::Reference<XAccessibleSelection> xObjSelection( xObj, uno::UNO_QUERY ); - if ( xObjSelection.is() && xObjSelection->getSelectedAccessibleChildCount() ) - { - uno::Reference<XAccessible> xCell = xObjSelection->getSelectedAccessibleChild(0); - if ( xCell.is() ) - { - uno::Reference<XAccessibleSelection> xCellSel( xCell, uno::UNO_QUERY ); - if ( xCellSel.is() && xCellSel->getSelectedAccessibleChildCount() ) - { - uno::Reference<XAccessible> xPara = xCellSel->getSelectedAccessibleChild( 0 ); - if ( xPara.is() ) - { - uno::Reference<XAccessibleContext> xParaContext( xPara, uno::UNO_QUERY ); - if ( xParaContext.is() && - xParaContext->getAccessibleRole() == AccessibleRole::PARAGRAPH ) - { - xRet = xPara; - return xRet; - } - } - } - } - } - } - } - } - catch (const lang::IndexOutOfBoundsException&) - { - uno::Reference<XAccessible> xEmpty; - return xEmpty; - } - catch (const uno::RuntimeException&) - { - uno::Reference<XAccessible> xEmpty; - return xEmpty; - } - } - } - - return xRet; -} - void AccessibleDrawDocumentView::UpdateAccessibleName() { OUString sNewName (CreateAccessibleName() + ": "); diff --git a/sd/source/ui/inc/AccessibleDocumentViewBase.hxx b/sd/source/ui/inc/AccessibleDocumentViewBase.hxx index ee2acf119ce4..b29cc9533757 100644 --- a/sd/source/ui/inc/AccessibleDocumentViewBase.hxx +++ b/sd/source/ui/inc/AccessibleDocumentViewBase.hxx @@ -33,7 +33,6 @@ #include <tools/link.hxx> #include <com/sun/star/accessibility/XAccessibleExtendedAttributes.hpp> -#include <com/sun/star/accessibility/XAccessibleGetAccFlowTo.hpp> #include "Window.hxx" @@ -87,8 +86,7 @@ class AccessibleDocumentViewBase public css::beans::XPropertyChangeListener, public css::awt::XWindowListener, public css::awt::XFocusListener, - public css::accessibility::XAccessibleExtendedAttributes, - public css::accessibility::XAccessibleGetAccFlowTo + public css::accessibility::XAccessibleExtendedAttributes { public: //===== internal ======================================================== @@ -313,9 +311,6 @@ protected: */ void SetAccessibleOLEObject ( const css::uno::Reference<css::accessibility::XAccessible>& xOLEObject); - //===== XAccessibleGetAccFromXShape ============================================ - css::uno::Sequence< css::uno::Any > - SAL_CALL getAccFlowTo(const css::uno::Any& rAny, sal_Int32 nType) override; public: void SwitchViewActivated() { Activated(); } diff --git a/sd/source/ui/inc/AccessibleDrawDocumentView.hxx b/sd/source/ui/inc/AccessibleDrawDocumentView.hxx index fd8b42f7161f..15097459bf76 100644 --- a/sd/source/ui/inc/AccessibleDrawDocumentView.hxx +++ b/sd/source/ui/inc/AccessibleDrawDocumentView.hxx @@ -158,12 +158,6 @@ private: virtual void impl_dispose() override; - //===== XAccessibleGetAccFromXShape ============================================ - css::uno::Sequence< css::uno::Any > - SAL_CALL getAccFlowTo(const css::uno::Any& rAny, sal_Int32 nType) override; - css::uno::Reference< css::accessibility::XAccessible > - GetSelAccContextInTable(); - void UpdateAccessibleName(); }; diff --git a/sd/source/ui/view/Outliner.cxx b/sd/source/ui/view/Outliner.cxx index d3bd66724c7b..2652c14879c1 100644 --- a/sd/source/ui/view/Outliner.cxx +++ b/sd/source/ui/view/Outliner.cxx @@ -483,17 +483,6 @@ bool SdOutliner::StartSearchAndReplace (const SvxSearchItem* pSearchItem) } mnStartPageIndex = sal_uInt16(-1); } - - SfxChildWindow *pChildWin = - SfxViewFrame::Current()->GetChildWindow( - SvxSearchDialogWrapper::GetChildWindowId()); - if (pChildWin) - { - SvxSearchDialog* pSearchDlg = - static_cast<SvxSearchDialog*>(pChildWin->GetController().get()); - pSearchDlg->SetDocWin( pViewShell->GetActiveWindow(), nCommand ); - pSearchDlg->SetSrchFlag(false); - } } mpDrawDocument->GetDocSh()->SetWaitCursor( false ); |