| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Add a stamp to AtspiAccessiblePrivate for use when iterating through a
tree, and don't touch accessibles that have already been touched. This should
further protect against buggy or malicious applications causing infinite
recursion.
Fixes #113
|
|
|
|
|
|
| |
for the cached children array
Fixes #114.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This matches the behavior of atspi_accessible_get_role_name. We already hav
translations from atk, so we can use those.
Also, move the table for role name translations into atspi, since it seems
that atk is increasingly becoming a legacy tool.
Add a note to the xml indicating that it is optional to implement
GetRoleName and GetLocalizedRoleName.
Fixes #110
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I ran this on each directory with C files:
clang-format -i *.[ch]
"-i" is the in-place option.
I also adjusted the order of #includes for some files which failed to
build after that:
Clang-format reorders blocks of #include directives alphabetically,
but they can be grouped and separated by blank lines. If there is a
blank line between blocks, like
#include "zork.h"
#include "bar.h"
#include "foo.h"
then it will not put zork.h after the other two. The last two header
files will be sorted alphabetically.
We can adjust the formatting of chunks of code by hand with comments
like these:
/* clang-format off */
this code {
is, formatted, by, hand;
}
/* clang-format on */
See https://clang.llvm.org/docs/ClangFormat.html for the general
manual and https://clang.llvm.org/docs/ClangFormatStyleOptions.html
for the style options and the comments described above.
|
| |
|
|
|
|
| |
Makes it clear that the iter is being advanced, hopefully?
|
|
|
|
| |
It is already done in _atspi_dbus_set_interfaces().
|
| |
|
|
|
|
| |
This is likely what the backed-out part of !53 was trying to do.
|
|
|
|
| |
Fixes https://gitlab.gnome.org/GNOME/at-spi2-core/issues/30
|
|
|
|
|
|
|
|
|
|
|
| |
* Release memory before pointer overwrite.
* Reduce memory leaks reported in ref_accessible.
* Remove leak connected with atspi_state_type_get_type.
* Remove memory leak in
atspi_event_listener_register_from_callback_full.
* Reduce memory leaks reported on program exit.
Change-Id: Ifde65dd44643f2e58442cf70809703f979436e09
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Atspi_accessible_set_cache_mask checks that it is being passed an
application's root accessible, and this sometimes fails and generates a
warning similar to the following, even when orca passes what it sees as the
application's root accessible:
(orca:18809): dbind-CRITICAL **: 09:27:25.951: atspi_accessible_set_cache_mask: assertion 'accessible == accessible->parent.app->root' failed
I suspect that this is caused by atk-bridge being initialized and caching
the root accessible and atk_get_root() is subsequently redefined, in the case
of an application that loads more than one atk implementor, such as Firefox.
This is indicative of a problem that should be fixed elsewhere--possibly
gtk+ and/or firefox shouldn't override atk_get_root if it already has an
implementation--but warning and failing here isn't helpful.
|
| |
|
|
|
|
| |
https://gitlab.gnome.org/GNOME/orca/issues/36
|
|
|
|
|
|
| |
Add a signal to allow a screen reader to indicate that its mode has changed.
https://gitlab.gnome.org/GNOME/orca/issues/36
|
|
|
|
|
|
|
|
|
| |
For screen reader events, look at the name of the signal and convert it,
rather than hard-coding "RegionChanged." This is necessary to allow
screen_reader_signal_watcher to process signals that will be added in the
future.
https://gitlab.gnome.org/GNOME/orca/issues/36
|
|
|
|
| |
Fixes https://gitlab.gnome.org/GNOME/at-spi2-core/issues/2
|
| |
|
|
|
|
|
|
|
|
| |
The children array may contain NULL entries, when the children have not
all been inspected yet for instance. In such a case
atspi_accessible_dispose's call to g_ptr_array_free would warn out when
freeing array items with g_object_unref. We should thus check for NULL
to avoid such warning.
|
| |
|
|
|
|
|
|
|
| |
Remove atspi_text_notify_reading_position, and instead add a region_changed
signal. Also make the dbus API more like the API used for other events.
Per discussion at https://gitlab.gnome.org/GNOME/orca/issues/36
|
| |
|
|
|
|
|
|
|
|
| |
There are a couple of places where code is indented as if it should be
part of an `if' block, but it isn't because there are no braces. Fix
those by unindenting.
Caught by -Werror=misleading-indentation.
|
|
|
|
|
|
|
| |
Now, if we don't have a cached parent, then we always either return NULL
or make a D-Bus call. This might make the code more robust, and hoping
that it will fix https://bugzilla.gnome.org/show_bug.cgi?id=767074,
though in theory it should make no difference there.
|
|
|
|
|
|
| |
If an accessible is disposed, then its list of children may be NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=767075
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The original cache API was problematic for QT AT-SPI because it forces
enumeration of all children, preventing lazy instantiation of objects.
The API now sends the object's index in parent and child count (or -1 if
not known / children should not be cached) rather than an array of
children.
Also made cache of children a GPtrArray rather than a GList, since it
may contain holes. If an object has not yet been instantiated for a
particular child, then its value will be set to NULL, and
atspi_accessible_get_child_at_index will make a dbus call to fetch the
child, at which point it will be cached.
https://bugzilla.gnome.org/show_bug.cgi?id=650090
|
|
|
|
| |
Replaced by the gi annotation rename-to on the identifier.
|
|
|
|
|
|
| |
Forgot to tag the release; going to revert, tag, then re-apply.
This reverts commit b7bd063e3cd805bc50bf03c5e12087b1553436a2.
|
|
|
|
| |
Replaced by the gi annotation rename-to on the identifier.
|
|
|
|
| |
This is also explained on the documentation
|
|
|
|
|
| |
When a cache is referenced in response to an event, it is supposed
to be unref'd after the event handler has been called.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add atspi_event_listener_register_full, to request that particular data
be sent with an event, and cache the data for the duration of the event
callback.
This also extends the D-Bus protocol, adding an a{sv} to an event to send
this data along, but we will still read events without this array added for
backwards compatibility (and compatibilllity with QT-AT-SPI, which does not
send this data for now).
https://bugzilla.gnome.org/show_bug.cgi?id=708695
|
| |
|
|
|
|
|
|
|
| |
That unref is done inside an if that starts with a !parent condition, so
unrefing it doesn't makes sense
https://bugzilla.gnome.org/show_bug.cgi?id=706893
|
|
|
|
|
| |
Atspi_role_get_name is used (by Orca, for instance) and was
inadvertently removed with the enum refactor.
|
|
|
|
|
|
|
|
|
| |
Having functions with common suffixes (ie, atspi_text_get_attributes and
atspi_document_get_attributes) results in problems for language
bindings. Deprecating these functions in favor of functions with new
names to avoid these collisions.
https://bugzilla.gnome.org/show_bug.cgi?id=700243
|
| |
|
|\
| |
| |
| |
| |
| | |
Conflicts:
atspi/Makefile.am
atspi/atspi-accessible.c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Generate enum types where appropriate.
Fix prototypes where a method took a "gint" that was really a bitflag.
Remove tables of state and role names, since these are now redundant with data
from the generated enums and would need to be maintained in parallel.
These changes were originally in master but have been backed out since they
break compatibility with pygobject 2.26.0, which some users are still using.
|
| |
| |
| |
| | |
https://bugzilla.gnome.org/show_bug.cgi?id=694368
|
| | |
|
| |
| |
| |
| | |
Add "level bar" role corresponding to the new atk role.
|
| | |
|