summaryrefslogtreecommitdiff
path: root/toolkit
diff options
context:
space:
mode:
authorArnaud Versini <arnaud.versini@gmail.com>2018-04-22 16:34:49 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2018-04-22 22:03:15 +0200
commit860de7575aa0c3079aac25634677248ac68c1f02 (patch)
treeb96b70a4c2a847011d2e535b35542c91da90eb67 /toolkit
parentfca20f3083c78cc76046e824b062b1ea20d4522b (diff)
Reuse getAccessibleRole result if possible
Change-Id: I9566cd6f01a2e21f471d5ce96948ea635729c6f6 Reviewed-on: https://gerrit.libreoffice.org/53288 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'toolkit')
-rw-r--r--toolkit/source/awt/vclxaccessiblecomponent.cxx14
1 files changed, 8 insertions, 6 deletions
diff --git a/toolkit/source/awt/vclxaccessiblecomponent.cxx b/toolkit/source/awt/vclxaccessiblecomponent.cxx
index 015fafabd425..aa86bb0c9606 100644
--- a/toolkit/source/awt/vclxaccessiblecomponent.cxx
+++ b/toolkit/source/awt/vclxaccessiblecomponent.cxx
@@ -201,12 +201,13 @@ void VCLXAccessibleComponent::ProcessWindowEvent( const VclWindowEvent& rVclWind
break;
case VclEventId::WindowActivate:
{
+ sal_Int16 aAccessibleRole = getAccessibleRole();
// avoid notification if a child frame is already active
// only one frame may be active at a given time
if ( !pAccWindow->HasActiveChildFrame() &&
- ( getAccessibleRole() == accessibility::AccessibleRole::FRAME ||
- getAccessibleRole() == accessibility::AccessibleRole::ALERT ||
- getAccessibleRole() == accessibility::AccessibleRole::DIALOG ) ) // #i18891#
+ ( aAccessibleRole == accessibility::AccessibleRole::FRAME ||
+ aAccessibleRole == accessibility::AccessibleRole::ALERT ||
+ aAccessibleRole == accessibility::AccessibleRole::DIALOG ) ) // #i18891#
{
aNewValue <<= accessibility::AccessibleStateType::ACTIVE;
NotifyAccessibleEvent( accessibility::AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
@@ -215,9 +216,10 @@ void VCLXAccessibleComponent::ProcessWindowEvent( const VclWindowEvent& rVclWind
break;
case VclEventId::WindowDeactivate:
{
- if ( getAccessibleRole() == accessibility::AccessibleRole::FRAME ||
- getAccessibleRole() == accessibility::AccessibleRole::ALERT ||
- getAccessibleRole() == accessibility::AccessibleRole::DIALOG ) // #i18891#
+ sal_Int16 aAccessibleRole = getAccessibleRole();
+ if ( aAccessibleRole == accessibility::AccessibleRole::FRAME ||
+ aAccessibleRole == accessibility::AccessibleRole::ALERT ||
+ aAccessibleRole == accessibility::AccessibleRole::DIALOG ) // #i18891#
{
aOldValue <<= accessibility::AccessibleStateType::ACTIVE;
NotifyAccessibleEvent( accessibility::AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );