From e306e4c62400c4c6021b1dfd2003a91d12912859 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Artur=20=C5=9Awigo=C5=84?= Date: Thu, 17 Sep 2020 12:14:33 +0200 Subject: [PATCH] [AT-SPI] Emit ObjectPropertyChangeEvent::VALUE While this could be done inside SetProperty handlers, it would not yield the desired effect, since the implementation often updates values directly, not via a SetProperty call. Change-Id: I2fed4b2d8ee7384bc5484c9af50d4b62a506a23a --- dali-toolkit/internal/controls/progress-bar/progress-bar-impl.cpp | 4 ++++ dali-toolkit/internal/controls/scroll-bar/scroll-bar-impl.cpp | 4 ++++ dali-toolkit/internal/controls/slider/slider-impl.cpp | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/dali-toolkit/internal/controls/progress-bar/progress-bar-impl.cpp b/dali-toolkit/internal/controls/progress-bar/progress-bar-impl.cpp index dc90b46..7251b48 100644 --- a/dali-toolkit/internal/controls/progress-bar/progress-bar-impl.cpp +++ b/dali-toolkit/internal/controls/progress-bar/progress-bar-impl.cpp @@ -272,6 +272,10 @@ void ProgressBar::SetProgressValue( float value ) Toolkit::ProgressBar self = Toolkit::ProgressBar::DownCast( Self() ); mValueChangedSignal.Emit( self, mProgressValue, mSecondaryProgressValue ); + if (Self() == Dali::Accessibility::Accessible::GetCurrentlyHighlightedActor()) + { + Control::Impl::GetAccessibilityObject(Self())->Emit(Dali::Accessibility::ObjectPropertyChangeEvent::VALUE); + } RelayoutRequest(); } } diff --git a/dali-toolkit/internal/controls/scroll-bar/scroll-bar-impl.cpp b/dali-toolkit/internal/controls/scroll-bar/scroll-bar-impl.cpp index b1b09d1..0627759 100644 --- a/dali-toolkit/internal/controls/scroll-bar/scroll-bar-impl.cpp +++ b/dali-toolkit/internal/controls/scroll-bar/scroll-bar-impl.cpp @@ -368,6 +368,10 @@ void ScrollBar::OnScrollPositionIntervalReached(PropertyNotification& source) if(scrollableHandle) { mScrollPositionIntervalReachedSignal.Emit( scrollableHandle.GetCurrentProperty< float >( mPropertyScrollPosition ) ); + if (Self() == Dali::Accessibility::Accessible::GetCurrentlyHighlightedActor()) + { + Control::Impl::GetAccessibilityObject(Self())->Emit(Dali::Accessibility::ObjectPropertyChangeEvent::VALUE); + } } } diff --git a/dali-toolkit/internal/controls/slider/slider-impl.cpp b/dali-toolkit/internal/controls/slider/slider-impl.cpp index 3c48abc..5356588 100644 --- a/dali-toolkit/internal/controls/slider/slider-impl.cpp +++ b/dali-toolkit/internal/controls/slider/slider-impl.cpp @@ -960,6 +960,10 @@ void Slider::SetValue( float value ) { mValue = value; DisplayValue( mValue, true ); + if (Self() == Dali::Accessibility::Accessible::GetCurrentlyHighlightedActor()) + { + Control::Impl::GetAccessibilityObject(Self())->Emit(Dali::Accessibility::ObjectPropertyChangeEvent::VALUE); + } } float Slider::GetValue() const -- 2.7.4