diff options
author | Arnaud Versini <arnaud.versini@gmail.com> | 2018-04-22 16:34:49 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2018-04-22 22:03:15 +0200 |
commit | 860de7575aa0c3079aac25634677248ac68c1f02 (patch) | |
tree | b96b70a4c2a847011d2e535b35542c91da90eb67 /toolkit | |
parent | fca20f3083c78cc76046e824b062b1ea20d4522b (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.cxx | 14 |
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 ); |