diff options
Diffstat (limited to 'vcl/unx/gtk/a11y/atkeditabletext.cxx')
-rw-r--r-- | vcl/unx/gtk/a11y/atkeditabletext.cxx | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/vcl/unx/gtk/a11y/atkeditabletext.cxx b/vcl/unx/gtk/a11y/atkeditabletext.cxx index ee984bdeb7b6..f601f137dd04 100644 --- a/vcl/unx/gtk/a11y/atkeditabletext.cxx +++ b/vcl/unx/gtk/a11y/atkeditabletext.cxx @@ -31,11 +31,14 @@ static css::uno::Reference<css::accessibility::XAccessibleEditableText> getEditableText( AtkEditableText *pEditableText ) throw (uno::RuntimeException) { AtkObjectWrapper *pWrap = ATK_OBJECT_WRAPPER( pEditableText ); - if (pWrap) + if( pWrap ) { - uno::Reference<accessibility::XAccessibleEditableText> xET( - pWrap->mpContext.get(), uno::UNO_QUERY); - return xET; + if( !pWrap->mpEditableText.is() ) + { + pWrap->mpEditableText.set(pWrap->mpContext, css::uno::UNO_QUERY); + } + + return pWrap->mpEditableText; } return css::uno::Reference<css::accessibility::XAccessibleEditableText>(); |