platform/core/accessibility/screen-reader.git
18 months agoFix memory management issues 16/301816/1 accepted/tizen_6.0_unified tizen_6.0 accepted/tizen/6.0/unified/20231127.150710
Artur Świgoń [Thu, 9 Nov 2023 15:41:42 +0000 (16:41 +0100)]
Fix memory management issues

Change-Id: Ic276eb376e9d5246c3f366c6c57449e47cfce840

18 months agodebug log improvement 14/301814/1
Lukasz Oleksak [Thu, 23 Nov 2023 12:09:30 +0000 (13:09 +0100)]
debug log improvement

Change-Id: Ic8c806cdb590991ba8bc0e523f625648c991e960

2 years agoCustomization of value reading 63/291563/1 accepted/tizen/6.0/unified/20230427.080401
Lukasz Oleksak [Wed, 12 Apr 2023 15:08:40 +0000 (17:08 +0200)]
Customization of value reading

Change-Id: Ic89b14e514c4aea088da1a2e22698d0a2489087f

2 years agoAdd to check DA profile in the flick gesture with three fingers 04/289604/6 accepted/tizen/6.0/unified/20230310.120531 submit/tizen_6.0/20230310.092225
Seoyeon Kim [Fri, 10 Mar 2023 06:46:21 +0000 (15:46 +0900)]
Add to check DA profile in the flick gesture with three fingers

- On Tizen 6.0, three fingers flick gestures do not work at all.

Change-Id: I04e904ec38dbbabec2cf52fcfb5c63a656303cf1
Signed-off-by: Seoyeon Kim <seoyeon2.kim@samsung.com>
2 years agoAdd reading for reaching the last item in dropdown list 07/287907/7 accepted/tizen/6.0/unified/20230216.031007 submit/tizen_6.0/20230215.101136
Lukasz Oleksak [Tue, 7 Feb 2023 11:57:35 +0000 (12:57 +0100)]
Add reading for reaching the last item in dropdown list

Change-Id: I9d4831e9ce7f1ee9eb30efb61f8ebe87111d5c87

2 years agoStop sending HighlightedObjectInfo in null context mode 44/288044/2 accepted/tizen/6.0/unified/20230210.032651 submit/tizen_6.0/20230209.154058
Artur Świgoń [Thu, 9 Feb 2023 11:01:11 +0000 (12:01 +0100)]
Stop sending HighlightedObjectInfo in null context mode

When control is handed over to a non-atspi application (e.g. DALi on Tizen
6.0), the highlight stays on the old application (non-atspi apps are opaque
to Screen Reader and they use their own highlight). This may cause the old
app to keep sending org.tizen.GestureNavigation.HighlightedObjectInfo D-Bus
messages (in parallel to the non-atspi app, causing a race condition), which
in turn may cause the double-tap-and-hold gesture information to be sent
with wrong coordinates.

Change-Id: I5129dd5bc49edcaab29e8e76ccf1e5cd177fb306

2 years agoDisable default label when old context root object became new context current object 51/287151/1 accepted/tizen/6.0/unified/20230201.045520 submit/tizen_6.0/20230127.015310 submit/tizen_6.0/20230127.051237 submit/tizen_6.0/20230130.082822
Lukasz Oleksak [Mon, 16 Jan 2023 11:47:34 +0000 (12:47 +0100)]
Disable default label when old context root object became new context current object

Change-Id: I8852a8c53181039b8a2c4a3be1a2373cfcdd0b14

2 years agoflat_navi: Support returning directly to the old root 50/287150/1
Artur Świgoń [Fri, 13 Jan 2023 12:42:57 +0000 (13:42 +0100)]
flat_navi: Support returning directly to the old root

This functionality can be used with drop-down lists, where after dismissing
the list, navigation should resume at the drop-down button.

Change-Id: I067c6a5501e14ea1d46c3d1ab1f30fb1c355450f

2 years agoflat_navi: Handle focus chain end in drop-down menu 49/287149/1
Artur Świgoń [Thu, 12 Jan 2023 11:07:28 +0000 (12:07 +0100)]
flat_navi: Handle focus chain end in drop-down menu

This patch tries to detect the focus chain end scenario in a drop-down menu and
close the menu, before falling back to the default looping behaviour.

Change-Id: I0f9fb34825954349b6644a83e1c58e74ed3a3905

2 years agoDo not cache window extents 15/285815/3 accepted/tizen/6.0/unified/20221228.044827 submit/tizen_6.0/20221227.094541
Lukasz Oleksak [Tue, 20 Dec 2022 18:05:22 +0000 (19:05 +0100)]
Do not cache window extents

Change-Id: I4aefde951e99f930de8d933e24d3913d492d2cb3

2 years agoFix for toast popup reading 58/284158/2 accepted/tizen/6.0/unified/20221116.000649 submit/tizen_6.0/20221114.092410
Lukasz Oleksak [Thu, 10 Nov 2022 10:30:36 +0000 (11:30 +0100)]
Fix for toast popup reading

This patch allows a transient notification UI element (like toast popup)
to be read without inducing navigation context change. It requires,
the UI element to be given an ATSPI_ROLE_NOTIFICATION by application developer.
This is analogous case to the requirement of seting ATSPI_ROLE_TOGGLE_BUTTON role
for button using custom tizen theme style.

Change-Id: I373e6f700d28364967d256af280e33de34083b36

2 years agoapp_tracker: Fix to null context handling 31/283831/4 accepted/tizen/6.0/unified/20221109.213822 submit/tizen_6.0/20221109.030506
Maria Bialota [Thu, 3 Nov 2022 16:28:32 +0000 (17:28 +0100)]
app_tracker: Fix to null context handling

App tracker root should set to null when switching to null context

Change-Id: I61f617c87b934b203148ac01197f801d2bdcb870

2 years agoMerge "In new UX reading of current value is part of state phrase" into tizen_6.0 accepted/tizen/6.0/unified/20221031.065754 submit/tizen_6.0/20221028.012126 submit/tizen_6.0/20221028.014757 submit/tizen_6.0/20221028.065801
Lukasz Oleksak [Thu, 27 Oct 2022 10:29:35 +0000 (10:29 +0000)]
Merge "In new UX reading of current value is part of state phrase" into tizen_6.0

2 years agogranularity_read: type correction and optimization in _valid_character_check() 98/283298/1
Maria Bialota [Fri, 21 Oct 2022 10:44:13 +0000 (12:44 +0200)]
granularity_read: type correction and optimization in _valid_character_check()

Corrected variable types and in _valid_character_check() function
and optimized number of strlen() calls in the function

Change-Id: I98dd720ea5d650bd5ffdec348cacfc04b1653423

2 years agoDo not try to consume gestures in null context mode 94/282594/1
Artur Świgoń [Thu, 6 Oct 2022 09:06:37 +0000 (11:06 +0200)]
Do not try to consume gestures in null context mode

Screen Reader tries to perform the gesture on the special null context object
(currently, the desktop). The DoGesture call in such a case will always fail
(and count as not consumed), so there is no need to even attempt it.

Change-Id: I59f62b7dcb2235852a6960099091976ae79865e8

2 years agoIn new UX reading of current value is part of state phrase 35/281235/2
Lukasz Oleksak [Wed, 14 Sep 2022 12:14:54 +0000 (14:14 +0200)]
In new UX reading of current value is part of state phrase

Change-Id: I3850bf57b6659a8886f43f6fc71cac52331aa37d
(cherry picked from commit 9b0122cd37df8bdbc4c9d9becc7e1f5c109854c7)

2 years agoSupport null context 53/281953/5 accepted/tizen/6.0/unified/20220927.070331 accepted/tizen/6.0/unified/20221012.005822 submit/tizen_6.0/20220927.051249 submit/tizen_6.0/20221011.042023
Artur Świgoń [Fri, 23 Sep 2022 10:47:50 +0000 (12:47 +0200)]
Support null context

Null context allows the Screen Reader to yield control to applications
whose existence it is not aware of, like DALi/NUI apps. The null context
is not actually a NULL pointer, but a special desktop object, because
the code expects a non-NULL pointer in so many places.

Change-Id: I41901899a84315cc92507c09e8471195b721ede3

2 years agoLimiting locking of display to completion time of last utterance 87/281687/1 accepted/tizen/6.0/unified/20220923.053602 submit/tizen_6.0/20220923.015022
Lukasz Oleksak [Tue, 20 Sep 2022 12:41:53 +0000 (14:41 +0200)]
Limiting locking of display to completion time of last utterance

Change-Id: Icfabaad91ee4e365e3b31bae72fc3d42c7108c5c

2 years agoDo not read "Image" when highlighting a Gengrid item 06/281006/1 accepted/tizen/6.0/unified/20220908.114059 accepted/tizen/6.0/unified/20220913.040903 submit/tizen_6.0/20220908.073130 submit/tizen_6.0/20220913.031228
Artur Świgoń [Wed, 7 Sep 2022 11:32:05 +0000 (13:32 +0200)]
Do not read "Image" when highlighting a Gengrid item

Change-Id: I1f23c7b5a65fb0326ba541b4225905728d6301f3

2 years agoRemoval of description trait for hoversel, inwin and combobox 85/280985/1
Lukasz Oleksak [Wed, 7 Sep 2022 08:47:22 +0000 (10:47 +0200)]
Removal of description trait for hoversel, inwin and combobox

Change-Id: Ide2287050df7d4ac6e157bc9621c74c8f71487b9
(cherry picked from commit 540191fead2a710ba7436d52c95811c2aa951ea9)

2 years agoChanges to internationalization according to new UX guidelines 11/280911/2
Maria Bialota [Wed, 31 Aug 2022 17:23:11 +0000 (19:23 +0200)]
Changes to internationalization according to new UX guidelines

Change-Id: Ibb3578f5a8a7271af2d1880444344586f4675829

2 years agoAllows recursive composition of state and role traits through the controlled objects 46/280546/2 accepted/tizen/6.0/unified/20220908.114134 submit/tizen_6.0/20220906.054847
Lukasz Oleksak [Tue, 30 Aug 2022 16:13:30 +0000 (18:13 +0200)]
Allows recursive composition of state and role traits through the controlled objects

Change-Id: I2f3577dd906a927e88aa5623f8bbb3cdf98389f9

2 years agoIntroduce consistent method for composition of extended description 45/280545/2
Lukasz Oleksak [Thu, 25 Aug 2022 13:32:12 +0000 (15:32 +0200)]
Introduce consistent method for composition of extended description

Change-Id: I8bc5411a90ef3cf2ed6051d806c83738ee9c7ec0

2 years agoJoining slider percentage value with state trait 32/280332/2 accepted/tizen/6.0/unified/20220830.133540 submit/tizen_6.0/20220830.024052
Lukasz Oleksak [Fri, 26 Aug 2022 13:16:07 +0000 (15:16 +0200)]
Joining slider percentage value with state trait

Change-Id: I108996af10c7bbc7111ec5cb5641deaae38c1e07

2 years agoRemove reading "in-progress" when progressbar reach maximum value 23/280323/4
Lukasz Oleksak [Tue, 27 Apr 2021 12:21:52 +0000 (14:21 +0200)]
Remove reading "in-progress" when progressbar reach maximum value

Change-Id: Idf3cb577e2425342e89fe91b47fbe16783a09efc

2 years agoRead scroll bar information from value interface 22/280322/2
Bartlomiej Grzelewski [Wed, 28 Apr 2021 14:16:47 +0000 (16:16 +0200)]
Read scroll bar information from value interface

Old implementation reads information by analyzing
widget structures. This causes problem with scroll
bar widget in nui library as this one may have
multiple "visual" elements that are inside containers.
As a result nui scroll bar widget always have two
children.

This problem was solved by using value interface to
inform screen-reader about number of visual elements
and position of selected one.

Change-Id: Ie2292bd6d80a274db5ee8751801e9b566de9e623

2 years agoATSPI_ROLE_CHECK_BOX state reading handled independently of ATSPI_ROLE_RADIO_BUTTON 21/280321/2
Lukasz Oleksak [Thu, 12 Nov 2020 12:43:22 +0000 (13:43 +0100)]
ATSPI_ROLE_CHECK_BOX state reading handled independently of ATSPI_ROLE_RADIO_BUTTON

Change-Id: I5b82fea47c0eea7831ecb9693c91c42e8c7c652d

2 years agoRemove unreachable code 00/280300/3
Bartlomiej Grzelewski [Thu, 29 Oct 2020 15:26:35 +0000 (16:26 +0100)]
Remove unreachable code

Change-Id: I0e8edd0815a62d44afe0d39b1b8090cca306beeb

2 years agoRemoved reading object name when checked state change 29/280329/1
Maria Bialota [Fri, 26 Aug 2022 08:59:26 +0000 (10:59 +0200)]
Removed reading object name when checked state change

Change-Id: I05f84146fec648055fea00c672d04fc0ab8198fa
(cherry picked from commit 9ce17837b9d988df07bd1c49ea564769c6cbab3c)

2 years agoUnification of translation for key IDS_ACCS_BODY_DISABLED_TTS among variants of Engli... 15/280215/1
Lukasz Oleksak [Wed, 24 Aug 2022 17:12:03 +0000 (19:12 +0200)]
Unification of translation for key IDS_ACCS_BODY_DISABLED_TTS among variants of English language

Change-Id: Idcc7c3201296d2a891c3a9c3e102c3b0cd0dd9fc
(cherry picked from commit fe5bad2b9c6d397b6d179b4f5780d9602e68c711)

2 years agoRead COMBO_BOX role only as "Dropdown list" 68/279868/2 accepted/tizen/6.0/unified/20220822.123814 submit/tizen_6.0/20220819.093149
Artur Świgoń [Fri, 12 Aug 2022 10:57:06 +0000 (12:57 +0200)]
Read COMBO_BOX role only as "Dropdown list"

Change-Id: I73ab66303c3b2bf545ef1399a98206416f27e796

2 years agoRead "Editing" as state and not description 67/279867/2
Artur Świgoń [Fri, 12 Aug 2022 09:11:43 +0000 (11:11 +0200)]
Read "Editing" as state and not description

This is a UX change. "Edit field, (pause), editing"
becomes "Editing, edit field".

Change-Id: Ia6e9c2ff84a129d9b0be6eb933965598c28a3c88

2 years agoModified reading description for slider according to new UX 66/279866/2
Maria Bialota [Thu, 11 Aug 2022 17:41:05 +0000 (19:41 +0200)]
Modified reading description for slider according to new UX

Old UX: "Slider, $value%, Flick up and down to adjust the position"
New UX: "$value%, $name, slider".

Change-Id: I4f3ab5db39baab2b93fd5cdcad2ef71ac42cd044

2 years agoRemoved omission of role reading for switch-type buttons 65/279865/2
Maria Bialota [Thu, 11 Aug 2022 16:41:29 +0000 (18:41 +0200)]
Removed omission of role reading for switch-type buttons

Also cleaned up redundant Slider role handling.

Change-Id: I8fed9de414b6960f890a66fa1ef28f87fffd084f

2 years agoMoved state information reading before the atspi object name 64/279864/2
Maria Bialota [Thu, 11 Aug 2022 11:35:15 +0000 (13:35 +0200)]
Moved state information reading before the atspi object name

Change-Id: I757fec8c4e3025a2249f8b90d15fd55732427eb9

2 years agoHandle HEADING role similarly to LIST_ITEM 69/279869/1
Artur Świgoń [Wed, 10 Aug 2022 12:47:23 +0000 (14:47 +0200)]
Handle HEADING role similarly to LIST_ITEM

The new UX mandates Genlist group items to be read as "Heading".

Change-Id: I1290a2164fc19783737ef34243ec1ead1399cc28

2 years agoGive chance to focus widget after accidentaly entered move slider mode 38/277238/1
Lukasz Oleksak [Mon, 27 Jun 2022 13:07:33 +0000 (15:07 +0200)]
Give chance to focus widget after accidentaly entered move slider mode

Change-Id: Icc24c4747212f993bcaca5a0af747c115b037eef

3 years agoapp_tracker: use root if there is not default label object 07/270107/1
Shinwoo Kim [Mon, 24 Jan 2022 09:09:51 +0000 (18:09 +0900)]
app_tracker: use root if there is not default label object

The at-spi2-atk does not provide 'GetDefaultLabelInfo'.
The Flutter toolkit is working on the at-spi2-atk.

If Flutter window is activated, screen-reader is not working
with the Flutter window for the '1 finger swipe'.
The screen-reader is working with deactivated window.

It is because that 'on_timeout_rebuild_navigation_context'
does not call 'view_content_changed' which calls
'flat_navi_context_setup' changing context's root and current
So the context root is not changed.

The patch is calling 'view_content_changed' using
the Flutter windowk before the at-spi2-atk provides
'GetDefaultLabelInfo' interface.

Change-Id: Icf3a72a9203345857f1682706bfbc6320d0ca7b6

3 years agoapp_tracker: set timer variable to NULL before return FALSE 21/269821/1 accepted/tizen/6.0/unified/20220126.131355 submit/tizen_6.0/20220121.012711
Shinwoo Kim [Tue, 18 Jan 2022 05:42:44 +0000 (14:42 +0900)]
app_tracker: set timer variable to NULL before return FALSE

First of all, it is the correct way to use of timer.

If a toolkit does not support the default label,
then it is not able to make an object have focus (highlight)
because app_tracker_context_valid_check in _focus_widget returns
APP_TRACKER_CONTEXT_NOT_VALID.

Change-Id: I6b2db7b8afd7598d63820121725ac11a22281be0

3 years agoscreen_reader_tts: added missing error check on tts_play call 49/260849/2 accepted/tizen/6.0/unified/20210707.130400 submit/tizen_6.0/20210707.020922
Maria Bialota [Mon, 5 Jul 2021 12:51:12 +0000 (14:51 +0200)]
screen_reader_tts: added missing error check on tts_play call

Change-Id: I4798ffec806b69f4a94f7c868edbcce38523f388
(cherry picked from commit 41ce96e1d8f370bd5a1a0a4690756e95e5dc1193)

3 years agowindow_tracker: Memory leak fix 38/260838/1
Maria Bialota [Mon, 5 Jul 2021 09:52:28 +0000 (11:52 +0200)]
window_tracker: Memory leak fix

Fixed memory leak in _window_append function return with failure.

Change-Id: I4d531ec9fa5bdb292f431c3c45399d591eee5bb7
(cherry picked from commit 8b3dddab9b5d8e58912c2780550d4d978f19b654)

4 years agoFix memory leak 79/249779/2 accepted/tizen/6.0/unified/20201222.015616 submit/tizen_6.0/20201220.214635
Bartlomiej Grzelewski [Mon, 5 Oct 2020 12:34:48 +0000 (14:34 +0200)]
Fix memory leak

* Memory allocated by atspi event must be manually freed.
* g_object_unref objects returned by _directional_depth_first_search.
* Remove memory leak in navigator.c
* Remove component leaks.
* Remove memory leak in _focus_widget
* Fix memory leak and memory corruption in app_tracker.c.
* Remove memory leak from screen reader spi module.
* AtspiDevice events must be free with g_boxed_free.
* Free atspi relation set.
* Free memory allocated by atspi_accessible_get_component_iface.
* Remove leak in flat_navic.
* Remove memory leaks from smart notification module.
* Remove memory leaks from spi module.

Change-Id: I76e3c18f2b6bb1d1d6008c68a8b32587779a8f50
(cherry picked from commit 188d7c4ba7f56a50b63eca4cff8fe3974358ee54)

4 years agoAdd privilege 'network.get' 18/249618/1 accepted/tizen/6.0/unified/20201215.133955 submit/tizen_6.0/20201215.104145
Shinwoo Kim [Tue, 15 Dec 2020 10:28:10 +0000 (19:28 +0900)]
Add privilege 'network.get'

wifi_manager_initialize returns an error becasue screen-reader does not have
a privilege. it is not able to launch screen-reader on more stricted product.

Change-Id: I6fdf4baec7409f8a4b2cdae9f2c9593daddb42d3

4 years agoHandle Quickpanel 32/248932/2 accepted/tizen/6.0/unified/20201204.072048 submit/tizen_6.0/20201203.111358
Shinwoo Kim [Wed, 2 Dec 2020 07:06:06 +0000 (16:06 +0900)]
Handle Quickpanel

There are different type of quickpanel as below

 - E_QUICKPANEL_TYPE_SYSTEM_DEFAULT
 - E_QUICKPANEL_TYPE_CONTEXT_MENU
 - E_QUICKPANEL_TYPE_APPS_MENU

Thf FHUB AllApps is quickpanel type applcation and
it is DALi application which does not support AT-SPI.

So if the AllApps is on top, then screen-reader should NOT
consume 'GestureDetected' signal.

Refer to follwoing for more cases;
 - https://github.sec.samsung.net/TizenNativeUI/Graphics/issues/1281

Change-Id: I831a22dc01f04278c453398926af0c9e65b9aebd

4 years agoreading_composer: Added popup Alert sub-role handling 88/244988/4 accepted/tizen_6.0_unified_hotfix tizen_6.0_hotfix accepted/tizen/6.0/unified/20201030.124050 accepted/tizen/6.0/unified/hotfix/20201103.051437 accepted/tizen/unified/20201005.005855 submit/tizen/20201004.214201 submit/tizen_6.0/20201029.205101 submit/tizen_6.0_hotfix/20201102.192501 submit/tizen_6.0_hotfix/20201103.114801 tizen_6.0.m2_release
Maria Bialota [Mon, 28 Sep 2020 18:04:29 +0000 (20:04 +0200)]
reading_composer: Added popup Alert sub-role handling

Change-Id: Ie76ef2029977a623d5fcb42154e16fc021d2c4cf

4 years agonavigator: restore slider behaviour 20/244520/1 accepted/tizen/unified/20200928.072816 submit/tizen/20200927.213403
Kamil Konieczny [Mon, 21 Sep 2020 08:04:12 +0000 (10:04 +0200)]
navigator: restore slider behaviour

Old functions _value_inc and _value_dec called atspi set_value
unconditionally, so restore this way. Also while at this,
delete "return" statement from end of void functions.

Change-Id: Ib0a51cad8b43e3792a2746bbceb4f3117a785034

4 years agonavigator: refactor slider code 59/244059/4 accepted/tizen/unified/20200923.024100 submit/tizen/20200920.213436
Kamil Konieczny [Mon, 14 Sep 2020 11:00:57 +0000 (13:00 +0200)]
navigator: refactor slider code

Refactor functions _value_inc an _value_dec, which
are called after OneFingerFlickUp or Down on slider.
Also while at this, add check for minimum increase
value, if it is zero then calculate increase value
to be 5 percent.

This commit needs fix 1d2dbed4c8cbd1ef80e636ed96d45f0a9fe2fa2d
"elm_slider: add A11Y value interface"

Change-Id: I26f4d2d229ac971a6966348c503f8427bdc3e1e1

4 years agoDo not notify reading status to defunct objects 37/244437/1
Lukasz Oleksak [Fri, 18 Sep 2020 10:29:02 +0000 (12:29 +0200)]
Do not notify reading status to defunct objects

Change-Id: Icf5ac4adfb2487454d379ae21a14c8145101163e

4 years agoreading_composer: fix slider reading description 35/244335/1
Kamil Konieczny [Thu, 17 Sep 2020 09:55:45 +0000 (11:55 +0200)]
reading_composer: fix slider reading description

When slider values are not initialized or are set to zero,
this can result in division by 0.0 that can give unpredictable
values. Add some checks before division.

Change-Id: Ib269c962519191fcc3699076542ca021228cd1ef

4 years agoProvided third-party licensing information in an organized way. 62/244062/1 accepted/tizen/unified/20200916.121650 submit/tizen/20200916.000913
Maria Bialota [Mon, 14 Sep 2020 13:35:27 +0000 (15:35 +0200)]
Provided third-party licensing information in an organized way.

Change-Id: Ice57dfb4c877a7a2da0ccfdf181c46734734a1a4

4 years agoAdd option to generate compile-commands.json 21/243821/1 accepted/tizen/unified/20200914.131338 submit/tizen/20200913.215058
Bartlomiej Grzelewski [Wed, 9 Sep 2020 10:11:18 +0000 (12:11 +0200)]
Add option to generate compile-commands.json

Run local build with --define "compile_commands 1" option to
generate compile-commands.json required to build mockups.

Change-Id: I749edefe0550665ccc660546b41f241f2020e3bc

4 years agoMockup generation 20/243820/1
Bartlomiej Grzelewski [Wed, 2 Sep 2020 14:14:30 +0000 (16:14 +0200)]
Mockup generation

Change-Id: I8cbca1bf1c3122b7b9491d2cebfea5b3f12e2c10

4 years ago[screen-reader] Remove subroot window when respective window is removed 92/243492/2
Prasoon Singh [Thu, 3 Sep 2020 08:38:53 +0000 (14:08 +0530)]
[screen-reader] Remove subroot window when respective window is removed

Sometimes, state-changed:visibal signal does not come and subroot can not be
removed. Use window remove function which is called from app tracker on
state-changed:showing signal too.

Change-Id: Ie9cfd418ff96e9d0da1fd0f30b4cf3007eacb65d

4 years ago[screen-reader] Avoid double free of hash's value 83/243483/1
Prasoon Singh [Thu, 3 Sep 2020 12:48:41 +0000 (18:18 +0530)]
[screen-reader] Avoid double free of hash's value

Freeing reading_info here leads to double free, as g_hash_table_unref also
tries to free this memory.

Change-Id: I6e260e7822f5fe8f9c642d78cd59d841b04a5e22
Signed-off-by: Prasoon Singh <prasoon.16@samsung.com>
4 years agoAdd reading composer tests 83/240583/8 accepted/tizen/unified/20200820.034620 submit/tizen/20200817.223215
Bartlomiej Grzelewski [Fri, 7 Aug 2020 08:46:33 +0000 (10:46 +0200)]
Add reading composer tests

Unittests for internal functions:
 * generate_description_trait
 * generate_role_trait
 * generate_state_trait

Change-Id: Ia2054792ffa99f50fe639a9e8d48bd4a07fa1324

4 years agoSupport unittest build in spec file 10/240210/6
Bartlomiej Grzelewski [Thu, 6 Aug 2020 10:59:34 +0000 (12:59 +0200)]
Support unittest build in spec file

Run local build with --define "unittest 1" option to
build unittest package.

CMakeLists.txt were partially rewritten to support
installing and packaging libraries and binaries.

Change-Id: Ia54ad687f3b478346ab808813de644ee6e9da1d4

4 years agoChanges that allows built unittest files 37/240237/7
Bartlomiej Grzelewski [Tue, 4 Aug 2020 12:30:27 +0000 (14:30 +0200)]
Changes that allows built unittest files

Clang was not able to build project as LC_ALL was not defined.
Remove _GNU_SOURCE from headers.
Internal structures must be moved to headers to compile mockups.

Change-Id: Ife532459f128a46e804c655741a10f1bf111aa29

4 years agoImport final changes made by R.Cybulski in cmock 68/240468/4
Bartlomiej Grzelewski [Thu, 6 Aug 2020 11:27:01 +0000 (13:27 +0200)]
Import final changes made by R.Cybulski in cmock

This commit fixes also error:
  "unable to load <mockup_function_name> function symbol"

Change-Id: I074f634cc80e5dfeb0e13af6483506e98ca8e825

4 years agoImports final version of tests made by R.Cybulski 35/240235/7
Bartlomiej Grzelewski [Thu, 6 Aug 2020 11:00:18 +0000 (13:00 +0200)]
Imports final version of tests made by R.Cybulski

This commits imports final version of generate_wrapper.py.
Replaces mockups from original commit with new versions.

Change-Id: Ied824e80e25d544528f0c058c62c4918d70c5f3c

4 years agoRemove warrning during compilation gtest 66/240466/3
Bartlomiej Grzelewski [Thu, 6 Aug 2020 10:59:52 +0000 (12:59 +0200)]
Remove warrning during compilation gtest

Change-Id: I105e5e0ecc492d414cd1781e8d3325ed405681fe

4 years agoadd googletest / c-mock sources 71/237671/5
Radoslaw Cybulski [Thu, 29 Sep 2016 11:02:05 +0000 (13:02 +0200)]
add googletest / c-mock sources

Change-Id: I44ab01fc770fcb98137d8842b5f0b3c5efd3d5c0

4 years agoRemove useless code from reading composer 84/240884/1
Bartlomiej Grzelewski [Wed, 12 Aug 2020 10:36:57 +0000 (12:36 +0200)]
Remove useless code from reading composer

Change-Id: Idf493f192ca61fbd162dc9c198f3de4c4914ff8b

4 years agoreading_composer: remove unreachable code 22/240722/1
Shinwoo Kim [Tue, 11 Aug 2020 02:20:22 +0000 (11:20 +0900)]
reading_composer: remove unreachable code

This patch is removing unreachable code. That's it.

Change-Id: I0422d2069fbc186170adb0d34f5287c2d3203607

4 years agoBuild script refactoring 70/237670/4
Bartlomiej Grzelewski [Thu, 2 Jul 2020 08:41:50 +0000 (10:41 +0200)]
Build script refactoring

* Add PIE options to all executables produced by cmake.
* Change SCREEN_READER_FLAGS to be compliant with
  TARGET_COMPILE_OPTIONS format.
* Avoid passing screen reader options to test framework.
  By default screen reader specific options were passed to all
  targets built by cmake files. It is not desirable behaviour
  as we also will build test framework.

Change-Id: I06dc05ba336a5ad6f016ee675b153f4b7b6a34ae

4 years agoFixed potential dereference to NULL 43/240343/1 accepted/tizen/unified/20200810.123118 submit/tizen/20200809.214919
Lukasz Oleksak [Wed, 5 Aug 2020 15:18:49 +0000 (17:18 +0200)]
Fixed potential dereference to NULL

Change-Id: Ia0d898727544d3dc2fe4334f0382a07899967c4c

4 years ago[screen reader] Code refactoring: navigator 30/240030/5
Bartlomiej Grzelewski [Fri, 31 Jul 2020 13:07:15 +0000 (15:07 +0200)]
[screen reader] Code refactoring: navigator

* change name of NavigatorData to be compliant
  with convention
* hide global connection value inside context

Change-Id: I744e72dc7bff1b1b91590ac482dddb6bc897bb5e

4 years ago[screen reader] Code refactoring: tts 37/239637/11 accepted/tizen/unified/20200803.122203 submit/tizen/20200802.221805
Bartlomiej Grzelewski [Tue, 28 Jul 2020 09:10:47 +0000 (11:10 +0200)]
[screen reader] Code refactoring: tts

* change function prefix from tts to tw (Tts Wrapper)
  as tts is reserved by system service
* reduce number of global values in tw module

Change-Id: I38a30734f79fbf53ddb316071464eba126a93336

4 years ago[screen reader] Code refactoring: vconf 29/239929/1
Bartlomiej Grzelewski [Thu, 30 Jul 2020 14:35:40 +0000 (16:35 +0200)]
[screen reader] Code refactoring: vconf

Initlization log was shown each time vconf module was used.
Move initialiazation log to proper place.

Change-Id: Idd6a3cd8cca11dc01c46478a0c07908221401e03

4 years ago[screen reader] Code refactoring: reading composer 36/239536/8
Bartlomiej Grzelewski [Mon, 27 Jul 2020 11:09:11 +0000 (13:09 +0200)]
[screen reader] Code refactoring: reading composer

* simplify implementation

Change-Id: I7ad86ceb01148c981b89b133819ca71cda07c999

4 years ago[screen reader] Code refactoring: screen reader vconf 15/239215/7
Bartlomiej Grzelewski [Wed, 22 Jul 2020 12:29:09 +0000 (14:29 +0200)]
[screen reader] Code refactoring: screen reader vconf

 * remove "extern" values related with vconf module
 * change function prefix from vconf to vc (as vconf
   is reserved by system library)
 * remove dependency from screen_reader.h

Change-Id: I6a9b38ddb053a14444e3d14f02e4b97ad78b83cf

4 years ago[screen reader] Code refactoring: split navigator module 78/239078/7
Bartlomiej Grzelewski [Tue, 21 Jul 2020 08:59:27 +0000 (10:59 +0200)]
[screen reader] Code refactoring: split navigator module

 * functions related to "text to read" generation were
   moved to reading composer module

Change-Id: Iba869ddaecf6a0dfa70c89de69df4652083a09b4

4 years ago[screen reader] Code refactoring: screen reader spi 37/238937/9 accepted/tizen/unified/20200729.165605 submit/tizen/20200728.225405
Bartlomiej Grzelewski [Mon, 20 Jul 2020 11:46:08 +0000 (13:46 +0200)]
[screen reader] Code refactoring: screen reader spi

* reduce number of global values inside screen reader spi

Change-Id: I90605a5b7c45baf0ba86addb04fa929614392ce5

4 years agoscreen_reader_system: fix potential overflow 87/239187/3 submit/tizen/20200723.215228
Kamil Konieczny [Wed, 22 Jul 2020 10:01:20 +0000 (12:01 +0200)]
screen_reader_system: fix potential overflow

Fix potential integer overflow.

Change-Id: I5088b07f96b05562c7bfd042cdec421c8625cf09

4 years agoapp_tracker: remove dead code 75/239175/1
Kamil Konieczny [Wed, 22 Jul 2020 09:16:21 +0000 (11:16 +0200)]
app_tracker: remove dead code

In function _on_atspi_event_cb parameters are checked at
begin, so there is no need for re-check them later.

Change-Id: I5db5acf11cb05f83a305a776675382dae658169d

4 years agoscreen_reader_system: fix dereference error 81/239081/1
Kamil Konieczny [Tue, 21 Jul 2020 12:48:27 +0000 (14:48 +0200)]
screen_reader_system: fix dereference error

In shutdown function, variable system_data was freed and
later dereferenced.

Change-Id: I6727bb9134971c107b7a0e22c81020867b375795

4 years agoMerge "navigator: remove global var sym_hash" into tizen accepted/tizen/unified/20200721.142247 submit/tizen/20200720.225554
Lukasz Oleksak [Mon, 20 Jul 2020 12:10:42 +0000 (12:10 +0000)]
Merge "navigator: remove global var sym_hash" into tizen

4 years agonavigator: remove global var sym_hash 05/238505/5
Kamil Konieczny [Tue, 14 Jul 2020 13:23:12 +0000 (15:23 +0200)]
navigator: remove global var sym_hash

Move global var sym_hash inside function symbol_lookup
and replace uses of sym_hash by call to symbol_lookup.
As it is used also by app_tracker.c, move this into
separate file symbols.c

Change-Id: I0b55243262ca2fdc7d58c5a0bea8fd17e31526e5

4 years agoMerge "Resolve build errors in 64bit architecture" into tizen
Lukasz Oleksak [Mon, 20 Jul 2020 10:42:57 +0000 (10:42 +0000)]
Merge "Resolve build errors in 64bit architecture" into tizen

4 years ago[screen reader] Code refactoring: window tracker 00/238700/12
Bartlomiej Grzelewski [Thu, 16 Jul 2020 09:39:00 +0000 (11:39 +0200)]
[screen reader] Code refactoring: window tracker

* reduce number of global values inside window tracker

Change-Id: I15a482ad0d3d735e75e2d486d9b1e486f397934d

4 years agoResolve build errors in 64bit architecture 25/238925/2
Jongmin Lee [Mon, 20 Jul 2020 08:52:49 +0000 (17:52 +0900)]
Resolve build errors in 64bit architecture

The mismatch between printf format and type resulted build error in 64bit architecture.
The 'sizeof' function returns 'long unsinged int' in 64bit architecture.

Change-Id: I0a49cbe8e4e84babc88e6b84ee77aa4a5e3d418e

4 years agoRemoval of X11 related code 99/238699/4 submit/tizen/20200719.223823
Lukasz Oleksak [Thu, 16 Jul 2020 09:31:08 +0000 (11:31 +0200)]
Removal of X11 related code

* X11 support on Tizen platform expires with upcoming release

Change-Id: Ia3bee9ed0a162457e666711ea988af835ba1a85f

4 years ago[screen reader] Code refactoring: keyboard tracker 98/238598/7
Bartlomiej Grzelewski [Wed, 15 Jul 2020 10:19:51 +0000 (12:19 +0200)]
[screen reader] Code refactoring: keyboard tracker

* reduce number of global values inside keyboard tracker

Change-Id: If77a4cebfd74dbea715afc19c53629deb2b6db16

4 years ago[screen reader] Code refactoring: app tracker 04/238404/3
Bartlomiej Grzelewski [Mon, 13 Jul 2020 14:00:08 +0000 (16:00 +0200)]
[screen reader] Code refactoring: app tracker

* reduce nuber of global values inside app tracker

Change-Id: Id6ca05453b40275801f4030e1ecf7f0912df5512

4 years ago[screen reader] Code refactoring: screen reader system 31/238231/13
Bartlomiej Grzelewski [Thu, 9 Jul 2020 14:14:04 +0000 (16:14 +0200)]
[screen reader] Code refactoring: screen reader system

* reduce number of global values inside screen reader system

Change-Id: I4ae595311daaf6cfad21559fe267d3d8542f27fd

4 years ago[screen reader] Code refactoring: dbus direct reading adapter 09/238109/8
Bartlomiej Grzelewski [Wed, 8 Jul 2020 13:06:01 +0000 (15:06 +0200)]
[screen reader] Code refactoring: dbus direct reading adapter

* reduce number of global values inside dbus direct reading adapter

Change-Id: I4d62955264a24a2fd457dbd837e4dd2b3b61bd8f

4 years ago[screen reader] Code refactoring: navigator 81/237681/9
Bartlomiej Grzelewski [Thu, 2 Jul 2020 10:46:58 +0000 (12:46 +0200)]
[screen reader] Code refactoring: navigator

* reduce number of global values inside navigator module

Change-Id: Ibed397417a442d6745c2477eaaff9b0b60dda943

4 years agosmart_notification: Update resource path name 77/237177/1 accepted/tizen/unified/20200701.032336 submit/tizen/20200629.234316 submit/tizen/20200630.101739
Prasoon Singh [Thu, 2 Apr 2020 12:04:16 +0000 (17:34 +0530)]
smart_notification: Update resource path name

Update resource path name so that sound files can be found.
This should unify sound file search across different
profiles.

It's cherry-pick of fa31aac234aa2c3a667a45bd2f2122d03dac6427
from wearable repository, with commit message edited.

Change-Id: Ieb6871c3865b9d40dc17475823f0e128de67ec43
Signed-off-by: Prasoon Singh <prasoon.16@samsung.com>
4 years agoNavigator: Add Space in symbol table 72/236372/2 accepted/tizen/unified/20200618.130016 submit/tizen/20200616.213914 submit/tizen/20200617.214046
Shilpa Singh [Tue, 16 Jun 2020 09:44:48 +0000 (15:14 +0530)]
Navigator: Add Space in symbol table

It's cherry-pick of 9bef591f339535ead3e267e76849f5a59a797127
from wearable repository.

Change-Id: I90300ca9d2376ff1f58a16353cec178a05a370a3

4 years ago[Screen-Reader]: Add Symbol reading 68/236368/4
Shilpa Singh [Tue, 7 Apr 2020 18:40:20 +0000 (00:10 +0530)]
[Screen-Reader]: Add Symbol reading

Summary:
Symbols can have different reading hence tts engine does not read
certain symbols and read few of symbols in a different manner.
In this patch we address this issue by providing reading
to most symbols.

It's cherry-pick of 7f6d90efefcf5aebf23c367da6c5e87a64393a2a
from wearable repository.

Change-Id: Ie16ec43cd1dbc9a4ad695484edd40ca4c1a6a96b

5 years agogranularity_read: fix memory leak accepted/tizen/unified/20200615.135357 submit/tizen/20200611.221942 submit/tizen/20200614.220219
Kamil Konieczny [Wed, 27 May 2020 13:42:07 +0000 (15:42 +0200)]
granularity_read: fix memory leak

Fix memory leak. Also while at this, simplify code and
prevent infinite loop for non-valid chars at text end.

Change-Id: I47d24f3c2a516d44b6df457faca449c62b633b44
(cherry picked from commit 7c4706183e3d0a1ca58a6eac1da47592fc594be5)

5 years agofix: memory leak 32/234632/1 accepted/tizen/unified/20200608.214754 submit/tizen/20200608.010949
Bartlomiej Grzelewski [Wed, 27 May 2020 12:05:50 +0000 (14:05 +0200)]
fix: memory leak

coverity cid: 1134382

Change-Id: Ia0263d3c4e996f4468a990d2c3700dc8178eff03

5 years agoRefactoring: get_read_command_from_queue 11/233711/3 accepted/tizen/unified/20200520.111244 submit/tizen/20200520.101418
Bartlomiej Grzelewski [Mon, 18 May 2020 10:08:00 +0000 (12:08 +0200)]
Refactoring: get_read_command_from_queue

Simplified code in get_read_command_from_queue function.

Change-Id: I91e07899a4261d8d84a7c78b7a4e7c6ca0c987fe

5 years agoFix: null pointer dereference 71/232471/1 accepted/tizen/unified/20200510.220342 submit/tizen/20200506.062648 submit/tizen/20200506.224620 submit/tizen/20200507.060934 submit/tizen/20200507.214726 submit/tizen/20200508.001045
Jongmin Lee [Wed, 6 May 2020 00:09:06 +0000 (09:09 +0900)]
Fix: null pointer dereference

Change-Id: Ib66751bd9704909a0912804dc5ca88a58663e0a2

5 years agoOmmit usage hint for disabled UI elements 55/221155/3
Lukasz Oleksak [Fri, 27 Dec 2019 15:49:28 +0000 (16:49 +0100)]
Ommit usage hint for disabled UI elements

Problem:
In elm-tizen-demo-mobile > Check for disabled widgets the following hint
is read "Double tap to select", which is missleading for the user
as disabled widget cannot be operated with gestures. Checks against
the ENABLED satate has been added before individually for some widget types,
but it seams to be a general rule not to read usage hint for disabled widgets.

This patch adds global rule to not read default description for disabled widgets.

Change-Id: Ia2f054fd84511808c8d81f3b9777a8d84f3e4f96

5 years agoMerge "Gestures support by app is checked when view content is changed" into tizen accepted/tizen/unified/20200428.214653 submit/tizen/20200421.221442 submit/tizen/20200422.215015 submit/tizen/20200423.214459 submit/tizen/20200424.020557 submit/tizen/20200426.100825 submit/tizen/20200426.222620 submit/tizen/20200427.214018
Lukasz Oleksak [Tue, 21 Apr 2020 16:06:34 +0000 (16:06 +0000)]
Merge "Gestures support by app is checked when view content is changed" into tizen

5 years agoGestures support by app is checked when view content is changed 74/231174/2
Lukasz Oleksak [Sun, 19 Apr 2020 21:20:38 +0000 (23:20 +0200)]
Gestures support by app is checked when view content is changed

This patch allows to update the policy of forwarding gestures
directly to application each time the navigation context is built,
not just when window:activate signal arrives. The policy is configured
basing on the root object of navigation context.

Change-Id: I1861021962e68a15db9882ef1d0ac6b17aeee22d

5 years agoFix: memory leak 82/230882/2 accepted/tizen/unified/20200421.150351 submit/tizen/20200416.215157 submit/tizen/20200417.234115 submit/tizen/20200419.220844 submit/tizen/20200420.213352
Bartlomiej Grzelewski [Wed, 15 Apr 2020 16:05:35 +0000 (18:05 +0200)]
Fix: memory leak

Function purge_commands_from_queue did not free memory
allocated under qc ptr.

Change-Id: I011573ae6de17d0ed79b8a8c941662c6095d34fd

5 years agoFix: null pointer dereference 81/230881/2
Bartlomiej Grzelewski [Wed, 15 Apr 2020 15:56:30 +0000 (17:56 +0200)]
Fix: null pointer dereference

There is no mechanics to force client to set on_utterance_end
callback in screen_reader_tts.c file. This gives opportunity
to dereference null ptr.

Change-Id: I6e8d24eb2dd6bf9a45e36b1d5476c39668ac1903

5 years agoFix: invalid pointer usege 80/230880/2
Bartlomiej Grzelewski [Wed, 15 Apr 2020 15:51:46 +0000 (17:51 +0200)]
Fix: invalid pointer usege

If tts_create fails the code will try to dereference invalid ptr.

Change-Id: I7e4637cfc1a5a3b2e553bdec68b0da4ae96fcb81

5 years agoAdded check for empty text when adding reading command to queue 65/230365/6 submit/tizen/20200416.001154
Maria Bialota [Thu, 9 Apr 2020 14:39:58 +0000 (16:39 +0200)]
Added check for empty text when adding reading command to queue

Change-Id: Ibf753d614f42b440643f5bfd4748a57b4b182199