BaseWindow on UnityRootAccessible shouldn't be added manually
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Unity |
Fix Released
|
Undecided
|
Alejandro Piñeiro | ||
unity (Ubuntu) |
Fix Released
|
Undecided
|
Alejandro Piñeiro |
Bug Description
After fix bug 701667 and bug 701680 there are a skeleto of the accessible support.
UnityRootAccessible exposes the toplevel window (BaseWindow) to the AT tools as children.
Right now they are added by hand, but the optimal solution (less a11y code on the rest on the unity code), would be use the approach used on gail: add a kind of watcher of the signals show/hide of the toplevel windows, so each time a toplevel is shown, it is added as a root children, and each time you hide it, this child is removed.
This requires support from nux::BaseWindow, as you require to connect to that signals independently of the instance, as the objetive is get the instance that launch those signals (you don't know the emitter object before the emission, you want to know that after the emission).
Related branches
- Alex Launi (community): Needs Fixing
- Neil J. Patel: Pending requested
-
Diff: 2752 lines (+1917/-282)41 files modifiedplugins/unityshell/src/PanelController.cpp (+0/-8)
plugins/unityshell/src/PlacesGroup.cpp (+13/-0)
plugins/unityshell/src/PlacesGroup.h (+5/-0)
plugins/unityshell/src/PlacesSimpleTile.cpp (+1/-0)
plugins/unityshell/src/PlacesSimpleTile.h (+1/-0)
plugins/unityshell/src/PlacesTile.cpp (+1/-0)
plugins/unityshell/src/PlacesTile.h (+1/-0)
plugins/unityshell/src/ResultView.cpp (+5/-0)
plugins/unityshell/src/ResultView.h (+2/-1)
plugins/unityshell/src/ResultViewGrid.cpp (+10/-0)
plugins/unityshell/src/ResultViewGrid.h (+2/-0)
plugins/unityshell/src/StaticCairoText.cpp (+8/-1)
plugins/unityshell/src/StaticCairoText.h (+3/-0)
plugins/unityshell/src/nux-area-accessible.cpp (+2/-1)
plugins/unityshell/src/nux-base-window-accessible.cpp (+24/-6)
plugins/unityshell/src/nux-base-window-accessible.h (+3/-0)
plugins/unityshell/src/nux-text-entry-accessible.cpp (+124/-0)
plugins/unityshell/src/nux-text-entry-accessible.h (+57/-0)
plugins/unityshell/src/nux-view-accessible.cpp (+2/-2)
plugins/unityshell/src/unity-dash-view-accessible.cpp (+114/-0)
plugins/unityshell/src/unity-dash-view-accessible.h (+57/-0)
plugins/unityshell/src/unity-places-group-accessible.cpp (+168/-0)
plugins/unityshell/src/unity-places-group-accessible.h (+57/-0)
plugins/unityshell/src/unity-places-simple-tile-accessible.cpp (+140/-0)
plugins/unityshell/src/unity-places-simple-tile-accessible.h (+57/-0)
plugins/unityshell/src/unity-places-view-accessible.cpp (+0/-114)
plugins/unityshell/src/unity-places-view-accessible.h (+0/-57)
plugins/unityshell/src/unity-result-accessible.cpp (+132/-0)
plugins/unityshell/src/unity-result-accessible.h (+56/-0)
plugins/unityshell/src/unity-root-accessible.cpp (+135/-36)
plugins/unityshell/src/unity-root-accessible.h (+0/-3)
plugins/unityshell/src/unity-rvgrid-accessible.cpp (+398/-0)
plugins/unityshell/src/unity-rvgrid-accessible.h (+57/-0)
plugins/unityshell/src/unity-sctext-accessible.cpp (+157/-0)
plugins/unityshell/src/unity-sctext-accessible.h (+57/-0)
plugins/unityshell/src/unity-search-bar-accessible.cpp (+40/-23)
plugins/unityshell/src/unity-search-bar-accessible.h (+0/-4)
plugins/unityshell/src/unity-util-accessible.cpp (+0/-11)
plugins/unityshell/src/unity-util-accessible.h (+0/-1)
plugins/unityshell/src/unitya11y.cpp (+28/-7)
plugins/unityshell/src/unityshell.cpp (+0/-7)
Changed in unity: | |
status: | New → Triaged |
Changed in unity (Ubuntu): | |
status: | New → Triaged |
Changed in unity: | |
milestone: | none → 5.0.0 |
status: | In Progress → Fix Committed |
Changed in unity (Ubuntu): | |
status: | In Progress → Fix Committed |
Changed in unity: | |
status: | Fix Committed → Fix Released |
Related branch solves this issue. Kept back because we are on feature freeze.