Matthias Clasen
a4e4d7d1fd
GtkMenuItem: fix initial accessible selection state
...
When the accessible is created for an already-selected
menuitem, we were not properly setting the state of the
the accessible. Fix that.
2014-01-05 22:45:39 -05:00
Matthias Clasen
e015102fa9
a11y: Fix keybindings in menus
...
GtkMenuItemAccessible was assuming that an accel label is
always the immediate child of a menu item. It also did not
deal with manually set accels. Fix both of these.
https://bugzilla.gnome.org/show_bug.cgi?id=721086
2014-01-05 11:56:31 -05:00
Matthias Clasen
29cd52c854
Emit a11y state change notification for color swatches
...
Improve the color swatch accessible to set a proper role
depending on whether the swatch is selectable or not, and
set the checked atk state when appropriate.
https://bugzilla.gnome.org/show_bug.cgi?id=721048
2014-01-05 10:54:43 -05:00
Matthias Clasen
8085b41074
GtkCheckMenuItemAccessible: Make work with model menu items
...
GtkModelMenuItem does not emit the ::toggled signal when a radio
item is activated, so listen for property notification for that
property. We still keep the ::toggled signal handler, in order
to not break other uses of check and radio menu items.
https://bugzilla.gnome.org/show_bug.cgi?id=720983
2014-01-04 21:53:31 -05:00
Matthias Clasen
9137b4ed8e
GtkColorSwatch: Set an accessible role
...
And update the colorchooser a11y test to a) use GtkColorChooser
instead of the deprecated GtkColorSelection and b) match this
change. Pointed out in
https://bugzilla.gnome.org/show_bug.cgi?id=721045
2014-01-04 18:52:46 -05:00
Matthias Clasen
4de1259cd9
Trivial formatting fix
2014-01-04 17:41:23 -05:00
Matthias Clasen
9bf89f2b5e
GtkLabelAccessible: reorganize the code
...
Separate the GtkLabelAccessible, GtkLabelAccessibleLink and
GtkLabelAccessibleLinkImpl implementations more clearly.
2014-01-04 10:54:03 -05:00
Matthias Clasen
b85a8001e0
GtkLabelAccessible: update state of links
...
This commit makes the LinkImpl children of label accessibles
inherit all their state, except for focused and visited, which
are handled directly.
https://bugzilla.gnome.org/show_bug.cgi?id=721406
2014-01-04 10:54:03 -05:00
Matthias Clasen
5845356d66
GtkLabelAccessible: Implement AtkHypertext
...
This commit makes the label accessible implement AtkHypertext,
which returns a AtkHyperlink object for each link in the text.
At the same time, add AtkHyperlinkImpl objects as children
to the label accessible.
Also some private API to indicate that links have changed, and
call that from GtkLabel when needed.
Adjust expected output of the affected a11y tests.
https://bugzilla.gnome.org/show_bug.cgi?id=721410
https://bugzilla.gnome.org/show_bug.cgi?id=721421
2014-01-04 10:54:03 -05:00
Matthias Clasen
c6d9f82916
Add a gtklabelprivate.h header
...
For now, move the few private functions from gtklabel.h here.
2014-01-04 10:54:03 -05:00
Matthias Clasen
e375b564fb
GtkLinkButtonAccessible: fix broken AtkHyperlink implementation
...
The get_end_index implementation was casting the accessible
to AtkText even though GtkLinkButtonAccessible does not
implement this interface. This did not show up in the a11y
tests because the they were not dumping the affected AtkHyperlinkImpl
properties. Oops.
2014-01-04 10:54:03 -05:00
Matthias Clasen
1bfe9d0db9
Fix a few warnings
2013-12-20 15:15:31 -05:00
Matthias Clasen
f200eebfd6
Improve menubutton a11y
...
The button now claims its menu as a child for a11y purposes,
which makes it possible for ATs to see it when the navigate
the tree top-down.
Update the a11y test to match.
2013-12-20 13:31:08 -05:00
Philip Withnall
480a005039
gtktreeviewaccessible: Fix potential uses of uninitialised variables
...
Found with scan-build.
https://bugzilla.gnome.org/show_bug.cgi?id=712760
2013-12-02 10:36:26 +00:00
Matthias Clasen
96c0903799
Fix the AtkImage implementation for GtkIconView items
...
We were returning uninitialized values for image size and
position.
Found in a pile of patches in
https://bugzilla.gnome.org/review?bug=712760
2013-12-01 18:33:38 -05:00
Philip Withnall
ada766025f
gtktreeviewaccessible: Fix a potential division by zero
...
Found with scan-build.
https://bugzilla.gnome.org/show_bug.cgi?id=712760
2013-11-24 21:21:02 +00:00
Matthias Clasen
0cda29be88
Remove debug spew
2013-10-28 07:17:25 -04:00
Matthias Clasen
f9c8fefeda
Restore accessible names for image-only buttons
...
With the stock system being deprecated now, we should provide
meaningful accessible names for buttons that are constructed
from icon names or GIcons. This commit reuses the existing
translations.
It is possible that some common icon names are not covered
here because they were not present as stock items. These can
be added to the table later.
2013-10-14 10:37:58 -04:00
Matthias Clasen
1e1c1556f6
Another forgotten a11y header
2013-10-07 16:43:36 -04:00
Matthias Clasen
1f4c60256f
Install flowbox a11y headers
...
Pointed out by Jasper St. Pierre.
2013-10-07 16:29:51 -04:00
Matthias Clasen
943d575ec3
Add GtkFlowBox
...
GtkFlowBox is a container that its children in a reflowing
grid, which can be oriented horizontally or vertically.
It is similar to GtkListBox in that the children can
be sorted and filtered, and by requiring a dedicated child
widget type, GtkFlowBoxChild. It is similar to GtkTreeView
in that is supports a full set of selection modes, including
rubberband selection.
This is the culmination of work that has happened in the
egg-list-box module, and earlier in libegg. The origins of
this code are the EggSpreadTable in libegg, which was written
by Tristan van Berkom. It was moved to egg-list-box and
renamed EggFlowBox by Jon McCann, and I gave it some finishing
touched in the flowbox-improvements branch of that module.
2013-10-06 23:31:17 -04:00
Matthias Clasen
605b918b2d
a11y: Drop obsolete focus tab handling in notebooks
...
GtkNotebook lost the concept of a separate 'focus tab' ages ago.
Time for the accessible implementation to follow suit.
https://bugzilla.gnome.org/show_bug.cgi?id=693586
2013-10-06 02:00:31 -04:00
Matthias Clasen
58621b00de
Trivial: remove an unused declaration
...
_gtk_list_box_accessible_update_selected is not used and
does not exist.
2013-09-27 20:32:39 -04:00
Mario Sanchez Prada
8d83d989bb
a11y: don't shutdown accessibility, so the atk bridge is always valid
...
This will fix issues in applications that for some reason make
several and not nested calls to gtk_main() during their lifetime,
effectively initializing a11y when the first, top most, main loop
is being run and shutting it down then that loop is quit.
https://bugzilla.gnome.org/show_bug.cgi?id=708024
https://bugzilla.gnome.org/show_bug.cgi?id=684076
2013-09-25 20:14:04 -04:00
Matthias Clasen
c22e27f986
Add a GtkListBoxRow accessible
...
This lets us do two things:
1. Set the list-item role
2. Set selectable and selected states as appropriate
https://bugzilla.gnome.org/show_bug.cgi?id=692258
2013-09-21 20:51:22 -04:00
Matthias Clasen
bdd4d65e85
Small improvement to GtkLinkButton a11y
...
ATK has a visited state, so propagate the visited property
of GtkLinkButton to that state.
2013-09-21 20:51:21 -04:00
Benjamin Otte
45d896a6b5
Revert "a11y: Remove AtkSelection implementation from combobox"
...
This reverts commit 7cecc8e524
.
It is impossible to use the selection object of the menu while it is
collapsed (collapsed menus deselect everything for a start), so even
though the original patch was correct, the followup issues are too big
to solve this quickly to a release.
https://bugzilla.gnome.org/show_bug.cgi?id=707786
2013-09-16 15:41:15 +02:00
Alejandro Piñeiro
ef41c2a60f
a11y: Remove default description from GtkSwitch
...
https://bugzilla.gnome.org/show_bug.cgi?id=707926
2013-09-12 11:52:51 +02:00
Alejandro Piñeiro
a86c665398
a11y: not using default name for switch
...
A proper name or label is required. In the same way, if the
widget is labelled, ATs uses to expose both the label and the
name, making the final output not really user-friendly.
https://bugzilla.gnome.org/show_bug.cgi?id=707872
2013-09-10 22:46:35 -04:00
Mike Gorse
3f2aacca52
a11y: Check whether a widget is mapped before querying its parent
...
Call gtk_widget_get_mapped() in a couple of places before looking at the
widget's parent, since it might be set to a widget that has been
finalized, causing an invalid read.
2013-08-31 16:42:07 -05:00
Matthias Clasen
5c90b46722
Revert "a11y: Check whether a widget is mapped before querying its parent"
...
This reverts commit 7e3db6fdd3
.
It broke the testsuite.
2013-08-31 16:27:38 -04:00
Mike Gorse
7e3db6fdd3
a11y: Check whether a widget is mapped before querying its parent
...
Call gtk_widget_get_mapped() in a couple of places before looking at the
widget's parent, since it might be set to a widget that has been
finalized, causing an invalid read.
2013-08-30 09:42:41 -05:00
Matthias Clasen
b7e41a7eda
GtkSpinButton: disconnect signals in the accessible
...
Just as for GtkRangeAccessible, we were not even trying to disconnect
the signal handler from the adjustment. The same fix works here:
override the widget_set and widget_unset vfuncs.
https://bugzilla.gnome.org/show_bug.cgi?id=705692
2013-08-14 00:04:46 -04:00
Matthias Clasen
b9a6e012d5
GtkRange: disconnect signals in the accessible
...
We were only disconnecting the signal in finalize, when
the widget was already unset. Instead, override the widget_set
and widget_unset vfuncs of GtkAccessible, and keep a reference
to the adjustment.
https://bugzilla.gnome.org/show_bug.cgi?id=705692
2013-08-14 00:04:05 -04:00
Emmanuele Bassi
365919d5f6
a11y: Use new macros for defining private data
...
https://bugzilla.gnome.org/show_bug.cgi?id=702996
2013-07-09 09:28:49 +01:00
William Jon McCann
aef9dca9d5
Deprecate GtkIconFactory, GtkIconSet, GtkIconSource
...
We want to use GtkIconTheme instead. It is worth noting that
the parts that remain undeprecated are GtkIconSize and gtk_icon_size_lookup.
2013-06-26 20:02:27 -04:00
William Jon McCann
424e1d0059
Start deprecating some GtkStock API
2013-06-25 19:05:32 -04:00
William Jon McCann
2b571f41e2
Remove more discontinued ChangeLogs
...
They are all in git.
2013-06-24 19:53:08 -04:00
Alexander Larsson
e319867f80
Add GtkListBox
...
This is basically an import/rename of EggListBox from the row-widget
branch of egg-list-box.
2013-06-13 12:17:06 +02:00
Matthias Clasen
92597da3a0
Add visibility flags in gtk/a11y
2013-05-05 15:38:48 -04:00
Matthias Clasen
4cec2337ab
Add annotations in a11y headers
2013-05-05 15:38:47 -04:00
Benjamin Otte
7cecc8e524
a11y: Remove AtkSelection implementation from combobox
...
AtkSelection requires that the immediate children of the object are the
selectable items. The combobox however is implemented with just 1 child:
The popup menu.
The popup menu is implementing the selectable interface.
Test are updated to reflect this change.
2013-05-02 15:31:26 +02:00
Alban Browaeys
da961b7ab8
GtkEntryAccessible: also handle entry icon tooltip NULL in notify_gtk.
...
To clear the tooltip one is to set the tooltip to NULL. Though
the GtkEntryAccessible expect this tooltip to not be NULL in
gtk_entry_accessible_notify_gtk (already handling this case
in its _init).
Fixes:
** (epiphany:23914): CRITICAL **: atk_object_set_description: assertion
`description != NULL' failed
when epiphany g_object_set the entry icon tooltip to NULL (clear the
tooltip) in its find bar.
https://bugzilla.gnome.org/show_bug.cgi?id=695375
2013-03-17 16:12:52 -04:00
Benjamin Otte
feb64f40b0
a11y: Emit text-changed signals directly
...
When setting new text on the label, the text-changed::delete signal
needs to be emitted before deleting the text (so that atk-bridge can
query the old text) while the text-changed::insert event needs to happen
afterwards (for the same reason). The old code using the notify signal
was only emitted after changing the text.
2013-03-15 00:58:29 +01:00
Bastien Nocera
32825a66ac
GtkLabelAccessible: Sanity check _get_text() input values
2013-03-06 15:50:30 +01:00
Benjamin Otte
173317e9ce
a11y: Emit active-descendants-changed when focus changes
...
This fixes the a11y/tree-relationships testcase.
The emission was lost in refactoring in commit
76670734f4
2013-03-05 11:56:56 +01:00
Benjamin Otte
ce0675f1fb
a11y: Emit text-changed signals when the text-buffer changes
2013-02-26 16:17:33 +01:00
Chun-wei Fan
d861779b69
Redo Completion of Visual Studio projects for gtka11y
...
Update the Visual Studio projects for gtka11y and the completion of the
projects that go along with it. This have been distcheck'ed on my Ubuntu
12.04 system.
2013-02-21 15:48:04 +08:00
Benjamin Otte
76670734f4
a11y: Only emit expandable/expanded for expander column
...
We don't want to emit state changes for all the cells in a row, just for
the cell in the expander column. It's the only one that reports EXPANDED
or EXPANDABLE states, after all.
Also, contains refactoring of the affected functions for all the special
cases.
https://bugzilla.gnome.org/show_bug.cgi?id=694059
2013-02-20 02:44:33 +01:00
Benjamin Otte
7b4c49a95f
a11y: Fix copy-paste error in state flag notification
...
We weren't checking the removed flag but the added flag for removal
emissions, so what would happen for every state change notification was:
- on state-added, both an "added" and a "removed" event were emitted
- on state-removed, nothing
https://bugzilla.gnome.org/show_bug.cgi?id=694059
2013-02-19 23:25:12 +01:00
Matthias Clasen
0795237bb2
Plug a few memory leaks
...
The accessibles for icon view items were not properly freed
in all cases.
https://bugzilla.gnome.org/show_bug.cgi?id=683311
2013-02-11 00:42:28 -05:00
Rico Tzschichholz
4fe1effb36
Revert "Visual C++: Update gtka11y projects completion"
...
This broke 'make dist' on linux.
This reverts commit ecf2a9471b
.
2013-02-08 18:29:22 +01:00
Rico Tzschichholz
656cc63c75
Revert "Drop things that break distcheck"
...
This reverts commit 2204f12083
.
2013-02-08 18:29:13 +01:00
Matthias Clasen
2204f12083
Drop things that break distcheck
2013-02-04 14:14:07 -05:00
Matthias Clasen
2ae8a27b4a
Remove a no-op AtkAction from GtkRange
...
The "activate" action here did not do anything.
It is possible we actually want to have some actions here,
like "step-up", "step-down", "page-up", "page-down", etc.
For now, just remove the AtkAction implementation.
https://bugzilla.gnome.org/show_bug.cgi?id=553334
2013-02-04 00:59:14 -05:00
Matthias Clasen
935d458fa1
Improve AtkAction implementations
...
Implement get_localized_name, and also translate the strings
returned by get_description.
https://bugzilla.gnome.org/show_bug.cgi?id=525226
2013-02-04 00:57:46 -05:00
Matthias Clasen
fae1da8ec9
Include gtklevelbaraccessible.h in gtk-a11y.h
2013-02-01 22:54:20 -05:00
Mike Gorse
92f0c5c384
Add accessibility for GtkLevelBar and value test
2013-02-01 11:44:15 -06:00
Chun-wei Fan
ecf2a9471b
Visual C++: Update gtka11y projects completion
...
-Rename the "libgail" projects to gtka11y, for consistency with the
autotools builds
-Update the projects completion in gtk/a11y/Makefile.am, as the sources are
now listed under $(libgtka11y_la_SOURCES) instead of $(libgail_la_SOURCES)
2013-01-23 13:56:11 +08:00
Matthias Clasen
88ed5af5e4
Use g_signal_connect_object for adjustments in GtkSpinButtonAccessible
...
An instance of GtkAdjustment may be used by another instance after
the spin button widget is destroyed. In that case, the function
gtk_spin_button_accessible_value_changed() will be called with an
invalid argument. This situation is often caused when one use
GtkCellRendererSpin widget. To avoid invalid call of the function,
the signal handler for the "value-changed" signal should be disconnected
when the spin-button widget is destroyed.
Using g_signal_connect_object achieves just that.
https://bugzilla.gnome.org/show_bug.cgi?id=691592
2013-01-20 22:16:47 -05:00
Benjamin Otte
f260affbb8
a11y: Implement get_name() instead of setting variables
...
This avoids a later free of this const value.
2013-01-14 00:01:44 +01:00
Matthias Clasen
5adecf183b
Move single-include guards inside include guards
...
gcc has optimizations for include guards that only work
if they are outermost in the the header.
https://bugzilla.gnome.org/show_bug.cgi?id=689810
2012-12-28 09:57:56 -05:00
Matthias Clasen
6bc2a2da48
Another trivial sorting fix
2012-12-27 12:15:05 -05:00
Matthias Clasen
38963870eb
Rename gtkcolorswatchaccessible.h
...
Call it gtkcolorswatchaccessibleprivate.h. This matches what we're
doing for non-public widget headers in gtk/.
2012-12-27 12:11:12 -05:00
Matthias Clasen
12f9b81b1e
Drop separate scrollbar accessible implementation
...
It didn't really add anything to the range accessible implementation.
2012-12-27 12:06:23 -05:00
Matthias Clasen
5fa4232404
Install a11y headers
...
We install the headers for the a11y implementations in
/usr/include/gtk-3.0/gtk/a11y/.
2012-12-27 12:05:02 -05:00
Matthias Clasen
c3577c66e5
Add single-include guards to a11y headers
...
More preparation for installing these headers.
2012-12-27 12:05:02 -05:00
Matthias Clasen
07a00d5939
Fix inter-header includes
...
Since we are going to install these headers soon, we need
to make their mutual includes work in the installed location
as well. Also, avoid including individual gtk headers, to
avoid trouble with single-include guards.
2012-12-27 12:04:01 -05:00
Matthias Clasen
d2944ce633
More gail removal
...
Rename GailMisc to GtkMiscImpl.
2012-12-27 11:27:46 -05:00
Matthias Clasen
4cd806ff0c
Rename and clean up gailutil
2012-12-27 11:27:45 -05:00
Matthias Clasen
651241b685
Some renaming
...
Move gail.h to gtkaccessibility.h, and libgail to libgtka11y.
2012-12-27 11:27:45 -05:00
Matthias Clasen
221ac71278
Cosmetics
...
Replace GAIL in top comments by 'GTK+ - accessibility implementations'.
2012-12-27 11:27:44 -05:00
Matthias Clasen
e4b5e94eb9
Make accessible implementations public
...
This commit exposes the get_type() functions and standard
headers for accessible implementations. This makes it possible
to derive from the GTK accessible implementations without
GType magic tricks. This is necessary, because we require the
a11y type hierarchy to be parallel to the widget type hierarchy.
So, if you derive a widget and need to adjust its a11y implementation,
you have to be able to derive its accessible implementation.
This commit probably exposes more than is absolutely necessary,
it also exposes accessibles of widgets that are unlikely candidates
for deriving from.
2012-12-27 11:23:22 -05:00
Matthias Clasen
853b5e5fa2
Trivial sorting fix
2012-12-27 01:50:54 -05:00
Matthias Clasen
f229945dab
NotebookPageAccessible: Implement selectable/selected states
...
The automatic handling for this was removed from atk, so
we need to do it ourselves here.
2012-12-17 23:59:23 -05:00
Matthias Clasen
5bee1a994f
GtkMenuItemAccessible: implement selectable/selected states
...
The automatic handling for this was removed in atk, so
we need to do it ourselves now.
2012-12-17 23:58:24 -05:00
Cosimo Cecchi
3782cf77c3
a11y: fix uninitialized variables compiler warning
...
The code path where we update the tooltip text property doesn't set
the state and value variables, and so doesn't need to call
notify_state_change().
Return early, and move the if block at the beginning of the function for
clarity.
2012-12-13 21:52:51 -05:00
Mario Sanchez Prada
57e1e0de94
Add missing NULL-check in GtkEntryAccessible
...
Only call to atk_object_set_name if gtk_entry_get_icon_name() is not NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=689923
2012-12-09 11:52:11 +01:00
Matthias Clasen
5b9c687595
Avoid unreachable code
...
Reestablish an else that went missing in commit 5ff328d2
. Without
it, the return is reached unconditionally, and the code behind
it is dead.
2012-11-29 23:10:40 -05:00
Matthias Clasen
4557e4d7a5
GtkCellAccessible: Add missing break statements
...
This switch was entirely breakless. Amazing accessibility code,
found by Coverity.
2012-11-29 23:10:34 -05:00
Matthias Clasen
a7ed598d37
GtkIconViewAccessible: Fix a copy-paste error
...
Don't access vadjustment after checking hadjustment for
not being NULL. Found by Coverity.
2012-11-29 23:10:34 -05:00
Mike Gorse
b7743430aa
Add accessibles for GtkEntry icons
...
Expose GtkEntry icons as child accessibles of a GtkEntry, and provide
actions to simulate clicking them. Also, refactor the a11y children test
slightly to add a test.
https://bugzilla.gnome.org/show_bug.cgi?id=686347
2012-11-12 09:21:27 -06:00
Matthias Clasen
ffa42cb5bb
Nuke GtkBoxAccessible
...
It didn't contain anything useful.
2012-11-07 20:17:30 -05:00
Cosimo Cecchi
f9db800713
text-cell-accessible: fix a double unref
...
We're unreffing the GtkCellRenderer object twice, causing the
application to crash when trying to access the renderer later.
https://bugzilla.gnome.org/show_bug.cgi?id=687872
2012-11-07 15:46:16 -05:00
Matthias Clasen
bec6b260b4
Be robust against unrealized windows in GtkWindowAccessible
...
Based on a patch by Albert Astals Cid,
https://bugzilla.gnome.org/show_bug.cgi?id=686152
2012-10-22 19:42:41 -04:00
Cosimo Cecchi
9208588771
a11y: fix private strict regression
...
Commit 0bbfcc2491
added a private struct
for GtkImageAccessible, but forgot to call g_type_class_add_private().
2012-10-15 17:09:04 -04:00
Cosimo Cecchi
10ead8a9d7
a11y: fix the build
...
Fix a typo introduced in 0ad379708f
2012-10-15 11:32:56 -04:00
Matthias Clasen
5465d89380
Add private structs to all remaining headers
...
These are not used currently. Just put them in now in
case we need them in the future.
2012-10-15 06:25:01 -04:00
Matthias Clasen
d83294d313
GtkWidgetAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
This also required removing access to GtkWidgetAccessible innards
from several accessible implementations.
2012-10-15 06:04:11 -04:00
Matthias Clasen
19fc090354
GtkTreeViewAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-15 05:56:41 -04:00
Matthias Clasen
dad727d41c
GtkToplevelAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
This also required removing access to GtkToplevelAccessible innards
from the GtkWindowAccessible implementation.
2012-10-15 05:52:04 -04:00
Matthias Clasen
f1594c39be
GtkTextViewAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-15 05:31:09 -04:00
Matthias Clasen
d13b70f779
GtkTextCellAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 21:21:34 -04:00
Matthias Clasen
8b667e006a
GtkRendererCellAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
This also required removing access to GtkRendererCellAccessible innards
from various cell accessible implementations.
2012-10-14 21:07:46 -04:00
Matthias Clasen
06542b2b59
GtkRadioMenuItemAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 20:48:30 -04:00
Matthias Clasen
8b6e962811
GtkRadioButtonAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 20:18:57 -04:00
Matthias Clasen
0ea0293356
GtkNotebookPageAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 20:15:28 -04:00
Matthias Clasen
c86628b41e
GtkNotebookAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 20:09:58 -04:00
Matthias Clasen
f44c9dff3d
GtkMenuItemAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 20:01:37 -04:00
Matthias Clasen
9a41636988
GtkLinkButtonAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 19:55:59 -04:00
Matthias Clasen
b8e4543ff3
GtkLabelAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 19:51:14 -04:00
Matthias Clasen
1ea3979864
GtkImageCellAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 19:43:47 -04:00
Matthias Clasen
0bbfcc2491
GtkImageAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 19:38:08 -04:00
Matthias Clasen
538c241951
GtkIconViewAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 16:06:08 -04:00
Matthias Clasen
4745adaeff
GtkEntryAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 15:59:58 -04:00
Matthias Clasen
0ad379708f
GtkContainerCellAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
This also required removing access to GtkContainerCellAccessible
innards from the GtkCellAccessible implementation.
2012-10-14 15:56:51 -04:00
Matthias Clasen
978f336aa4
GtkContainerAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
This also required removing access to GtkContainerAccessible innards
from the GtkMenuItemAccessible implementation.
2012-10-14 15:56:46 -04:00
Stefano Facchini
95f3fadcbd
Remove leftover from commit 7264a996fe
2012-10-14 11:57:58 +02:00
Matthias Clasen
1dc4d2c621
GtkComboBoxAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 02:47:22 -04:00
Matthias Clasen
5226327e11
GtkBooleanCellAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 02:40:20 -04:00
Matthias Clasen
7264a996fe
GtkArrowAccessible: add a private struct
...
Move instance fields to a private struct, in preparation
for installing a11y headers.
2012-10-14 02:39:32 -04:00
Benjamin Otte
9e486139ca
a11y: Fix for -Wmissing-declarations
...
I'll add a bunch of fixes for gcc complaining about
-Wmissing-declarations after finding a bunch of cases today where I had
forgotten to make functions static in the CSS code.
A thorn in those patches is G_DEFINE_TYPE() which doesn't allow making
the get_type() function static, so I added definitions for that function
above the G_DEFINE_TYPE().
After those patches, GTK should compile without warnings when this flag
is enabled.
2012-10-02 19:32:38 +02:00
William Jon McCann
5debed5ae2
Shut down a11y when an app shuts down
...
https://bugzilla.gnome.org/show_bug.cgi?id=684076
2012-09-16 19:31:23 -04:00
Alejandro Piñeiro
5ff328d21f
a11y: Solved leak on gtk_widget_accessible_get_description
...
https://bugzilla.gnome.org/show_bug.cgi?id=643611
2012-09-12 21:15:59 +02:00
Colin Walters
9ca355b460
GtkEntryAccessible: Remove unused variable
2012-08-16 10:37:05 -04:00
Mario Sanchez Prada
63e2a0ff0c
Expose the masked string for password fields to assistive technologies.
...
Call _gtk_entry_get_display_text()from gtkentryaccessible.c to make
sure we always consider the actual text being displayed when
implementing the functions from the AtkTet interface.
https://bugzilla.gnome.org/show_bug.cgi?id=681591
2012-08-10 18:09:06 +02:00
Matthias Clasen
8d0e88bac7
gtk: Don't use GDK_THREADS_ENTER/LEAVE macros internally
...
These are just wrappers for the functions, and we want to
deprecate them. Stopping to use them internally is a good
first step.
2012-07-30 18:01:47 +02:00
Benjamin Otte
b900016a05
a11y: Make lockbutton notify about state changes
...
In particular, ensure that the name of the lockbutton gets updated as
the displayed text of the lockbutton changes.
https://bugzilla.gnome.org/show_bug.cgi?id=677347
2012-07-09 03:12:13 +02:00
Benjamin Otte
58cf6dfaaf
a11y: Get lockbutton text directly
...
Instead of letting the generic button code attempt to find the currently
displayed text, just return the text directly.
https://bugzilla.gnome.org/show_bug.cgi?id=677347
2012-07-09 02:58:22 +02:00
Benjamin Otte
fb1b025cbf
a11y: Add separate accessible for GtkLockButton
...
The accessible doesn't do anything yet, this is just infrastructure
work.
2012-07-09 02:29:16 +02:00
Benjamin Otte
0dbf5db0e1
a11y: Don't mess up if column gets hidden
...
We were using a function that insisted on visible columns for computing
the potential ID of an invisible column. Not good.
https://bugzilla.gnome.org/show_bug.cgi?id=675990
2012-07-09 01:28:26 +02:00
Alejandro Piñeiro
4cfe2a38bf
a11y: remove implementation for [add/remove]_global_event_listener
...
Since release 2.5.3, ATK provides an implementation for those
methods, so toolkits doesn't need to implement them.
2012-06-28 12:38:11 +02:00
Colin Walters
ed8203e700
build: Drop --without-atk-bridge option
...
Instead, always build it if and only if X11. This reduces the set of
supported configurations.
https://bugzilla.gnome.org/show_bug.cgi?id=677491
2012-06-26 13:50:39 -04:00
Colin Walters
71e0e72c69
build: Add --without-atk-bridge, only check for it on X11 platforms
...
Some builders using gtk3 outside of the GNOME cycle want an option to
avoid linking to atk-bridge-2.0. Provide that, and at the same time
ensure we're only looking for it on X11 platforms.
https://bugzilla.gnome.org/show_bug.cgi?id=677491
2012-06-22 23:49:24 -04:00
Bastien Nocera
ffe1e31a2c
gtk: Always load the atk-bridge
...
Slightly modified by Alejandro Piñeiro
https://bugzilla.gnome.org/show_bug.cgi?id=677491
2012-06-15 17:09:19 +01:00
Cosimo Cecchi
3473577386
a11y: fix a typo leading to a crash
...
text can't be NULL here, or we would have failed way earlier.
The original code from gail returned if the renderer text was NULL, and
we have to do that, or we'll end up calling e.g.
g_utf8_offset_to_pointer() on a NULL pointer.
https://bugzilla.redhat.com/show_bug.cgi?id=827930
https://bugzilla.gnome.org/show_bug.cgi?id=677551
2012-06-07 16:51:02 -04:00
Benjamin Otte
e31fb77c22
iconview: Bring back per-row contexts
...
Apparently GtkCellAreaContext is broken enough to not allow multiple
allocations...
2012-05-08 03:58:23 +02:00
Benjamin Otte
d20d7c54d3
iconview: Redo layouting
2012-05-07 00:12:26 +02:00
Benjamin Otte
ee91e272a8
iconview: Remove needless requirement
...
If we use
&item->cell_area
instead of
(GdkRectangle *) item
there is no need anymore to keep the cell_area as the first member of
the the item. And we cget compile-time checks for changes to the item
struct.
2012-05-07 00:12:26 +02:00
Benjamin Otte
47e44028e1
a11y: Add back the 'toggle' actions
...
This is a hack.
But as long as Orca cannot figure out if a cell is heckable, the best we
can do is support the old way of providing a "toggle" action.
https://bugzilla.gnome.org/show_bug.cgi?id=672367
https://bugzilla.gnome.org/show_bug.cgi?id=672368
https://bugzilla.gnome.org/show_bug.cgi?id=672369
2012-03-19 02:26:16 +01:00
Benjamin Otte
50e3f532b9
a11y: Only care about GtkOrientable::orientation
...
There are other widgets (like PanelToplevel) that aren't a GtkOrientable
but still have that property.
2012-03-09 13:23:05 +01:00
Benjamin Otte
2353d60b8a
types: Move GtkAdustment declaration to gtktypes.h
...
... and make all the headers to not include gtkadjustment.h anymore. Of
course, also include it in the source files instead.
2012-03-03 19:45:03 +01:00
Javier Jardón
9d0febc9a6
Change FSF Address
2012-02-27 17:06:11 +00:00
Matthias Clasen
140e884868
Symbol exporting fixes
2012-02-21 01:50:19 +01:00
Matthias Clasen
e1a625aa78
GtkColorSwatch: Add accessible actions
2012-02-14 21:16:52 -05:00
Benjamin Otte
90e65f30ab
a11y: Mark cells as defunct when deleting them
...
Just unreffing isn't enough, atk-bridge might have a reference to the
object still.
2012-02-12 16:45:14 +01:00
Benjamin Otte
194a48bd4a
a11y: Redo ref_accessible_at_point()
...
use direct access to the RBTree instead of fiddling with the path.
Removes the lat caller of get_index() and with it count_rows(), so those
are gone now.
2012-02-11 05:11:00 +01:00
Benjamin Otte
3827d75f64
a11y: create focus cell accessibles when they get focused
2012-02-11 04:44:27 +01:00
Benjamin Otte
bf8d9ceb2f
a11y: Split out cell creation function
2012-02-11 04:41:45 +01:00
Benjamin Otte
315ac9413b
a11y: Set relations without tree path
...
We can directly use at the rbtree's parent.
2012-02-11 04:13:04 +01:00
Benjamin Otte
6130c65470
a11y: Remove unused variable
2012-02-11 03:42:14 +01:00
Benjamin Otte
da30c8253b
a11y: Keep treeview accessibles around
...
Refcounting behavior kinda requires that we track of accessibles until
the row goes away. This is necessary for reference handling and for some
assumptions that atk-bridge does.
2012-02-11 03:37:25 +01:00
Benjamin Otte
5e587229c8
a11y: Remove old treeview focus tracking code
2012-02-11 03:14:22 +01:00
Benjamin Otte
24db6d7a6f
a11y: Emit focus change events when focus cell changes
2012-02-11 03:02:20 +01:00
Benjamin Otte
07f8336dbd
a11y: Update treeview focused status
...
... when the cursor row changes. Also emit active-descendant-changed.
2012-02-11 02:50:26 +01:00
Benjamin Otte
f90ff5d50b
treeview: Notify accessible about focus changes
2012-02-11 02:38:48 +01:00
Benjamin Otte
a4559f1e19
treeview: Tell accessible about focus column changes
2012-02-11 01:59:19 +01:00
Benjamin Otte
dbabff0846
a11y: Invoke key snooper directly
...
Gets around the deprecated function warnings.
2012-01-19 10:32:21 +01:00
Benjamin Otte
ed8e7d1793
Revert "a11y: Remove keysnooping support"
...
This reverts commit 0c8ecba7dc
.
The change broke Orca completely, and we need a proper fix first.
So we have to live with the bugs intorduced by this until then.
2012-01-18 18:33:11 +01:00
Matthias Clasen
3e6b37726a
Remove a check that broke the color chooser a11y dump
...
With the visible check, the opacity slider ended up without
a labeled-by, which is sad.
2012-01-16 21:05:01 -05:00
Benjamin Otte
ff1e1e1f91
a11y: Disconnect from buffer signals
...
This way, we don't get crashes when the buffer is still in use after a
TextView gets finalized.
https://bugzilla.gnome.org/show_bug.cgi?id=667632
2012-01-12 04:45:34 +01:00
Benjamin Otte
0c8ecba7dc
a11y: Remove keysnooping support
...
As previously announced, key snooping is something that we should not
support in GTK. In particular because AT-SPI made every key press a
synchronous DBUS call / spawned a nested main loop with the key
snoopers. This breaks responsiveness, order of key presses and internal
consistency when the AT decides to remove key events.
2012-01-06 05:23:42 +01:00
Matthias Clasen
2637240abe
Remove an unnecessary warning
...
Don't warn if there's more than one mnemonic label for a widget,
and skip invisible labels.
Bug 665015
2011-12-30 02:01:15 -05:00
Benjamin Otte
902c5c6979
a11y: emit entry signals immediately
...
We want to emit signals when stuff happens, not sometime later. That way
we can also catch the correct text that was deleted.
https://bugzilla.gnome.org/show_bug.cgi?id=659445
2011-12-19 16:17:14 +01:00
Benjamin Otte
3d4a8dabb2
a11y: implement widget_(un)set in ContainerCell
2011-12-19 16:17:13 +01:00
Benjamin Otte
d2a58446ea
a11y: Make GtkCellAccessible a GtkAccessible
2011-12-19 16:17:13 +01:00
Benjamin Otte
0c1f2f2fc1
widget: Set widget in accessible's constructor
...
No need to add t manually later.
2011-12-19 16:17:13 +01:00
Benjamin Otte
d801b28365
a11y: Don't connect_destroyed anymore
...
It's not used now that set_widget() does the right thing.
2011-12-19 16:17:13 +01:00
Benjamin Otte
1961be9ee9
iconview: Simplify adjustment monitoring for accessible
2011-12-19 16:17:13 +01:00
Benjamin Otte
4652d4c399
a11y: Remove widget_destroyed call
...
GtkAccessible does all of that for us now.
2011-12-19 16:17:13 +01:00
Benjamin Otte
80a0413d40
a11y: Use widget_unset vfunc in treeview
2011-12-19 16:17:13 +01:00
Benjamin Otte
7b5b678e2e
a11y: Fix crash in notebook
...
When the accessible was disposed before the notebook it referenced, the
weak ref could still trigger. This works around it.
2011-12-19 16:17:13 +01:00
Benjamin Otte
1305815bde
iconview: Split out iconview accessible
2011-12-19 16:17:12 +01:00
Benjamin Otte
e4f6a7124b
a11y: Simplify code
...
Use peek_cell() instead of a custom find_cell() function that duplicates
loads of functionality.
2011-12-19 16:17:12 +01:00
Benjamin Otte
113aff673f
a11y: Don't emit children-changed when nothing changed
...
When we have 0 columns, no children ever get added or removed.
2011-12-16 13:39:43 +01:00
Benjamin Otte
c0fdcbf513
a11y: Remove unused gtk_cell_accessible_set_cell_data()
2011-12-16 04:53:17 +01:00
Benjamin Otte
b8b8ba8ed9
a11y: Make boolean cell render report its states the new way
2011-12-16 04:53:17 +01:00
Benjamin Otte
64aa203773
a11y: Refactor treeview code even more
...
- Split out set_cell_data()
- Use it
- Get rid of update_cell_value() function, it's now just 2 calls
2011-12-16 04:53:16 +01:00
Benjamin Otte
eb6465167e
a11y: Redo function signature
...
With the recent changes to gtk_cell_accessible_update_cache(), the
update_cell_value() function now needs less code, too.
2011-12-16 04:53:16 +01:00
Benjamin Otte
4ac501736e
a11y: Implement GtkContainerCellAccessible.update_cache
2011-12-16 04:53:16 +01:00
Benjamin Otte
118bc610f6
a11y: Move update_cache to GtkCellAccesible
...
This way, we can call it for container renderers, too.
2011-12-16 04:53:16 +01:00
Benjamin Otte
2e7fcc24ac
a11y: Redo cell update function
...
1) always emit signals
Previously, newly constructed cells would be told to not emit events.
However, we can ensure that nothing is connected to the signals, so
they will not actually emit anything.
2) don't return anything
The return value is unused anyway.
2011-12-16 04:53:16 +01:00
Benjamin Otte
5cca6b2dc2
a11y: Remove unused function
2011-12-16 04:53:16 +01:00
Benjamin Otte
d2a9220006
a11y: remove now unused property lists
2011-12-16 04:53:16 +01:00
Benjamin Otte
a3f60349ed
a11y: Don't copy data between renderers
...
Now that we don't use custom renderers anymore, we don't need to copy
data between them anymore.
2011-12-16 04:53:16 +01:00
Benjamin Otte
8ac579602c
a11y: Use cell renderer creation funcs unconditionally
...
Also delete the previous "new" functions and actually set the real cell
renderer here.
2011-12-16 04:53:16 +01:00
Benjamin Otte
e5d5863a3f
a11y: Use the accessible type
2011-12-16 04:53:16 +01:00
Benjamin Otte
c28f641921
a11y: Add GtkRendererCellAcessible::renderer
2011-12-16 04:53:15 +01:00
Benjamin Otte
dfb82333a3
a11y: Remove unused variable
2011-12-16 04:53:15 +01:00
Benjamin Otte
ccabccc42f
treeview: Send changed signal directly to a11y code
...
No more signal handler is needed, therefore the code can also get rid of
tracking the treemodel. And we use a faster approach for iterating the
changed cellrenderers: We just iterate all columns instead of over all
cell accessibles, as that number is likely quite a bit smaller.
2011-12-16 04:53:15 +01:00
Benjamin Otte
c9c7e91db9
a11y: Improve treeview's add/remove_selection()
2011-12-16 04:53:15 +01:00
Benjamin Otte
dc8f5effd4
a11y: Improve get_selected_rows()
2011-12-16 04:53:15 +01:00
Benjamin Otte
20b56689c5
a11y: Improve table_is_row_selected()
2011-12-16 04:53:15 +01:00
Benjamin Otte
3112679a5e
treeview: Signal selection changes to the accessible
...
And another signal gone.
2011-12-16 04:53:15 +01:00
Benjamin Otte
1a3226e2f7
a11y: Emit children-changed properly for treeviews
...
Fixes the patch reverted in b7e74ef95f1d9cd851fb81a124beca0ca11dad00
properly.
https://bugzilla.gnome.org/show_bug.cgi?id=548782
2011-12-16 04:53:15 +01:00
Benjamin Otte
0005d820c7
treeview: Remove unnecessary accessible_expanded()
...
Instead, just call remove_state().
2011-12-16 04:53:15 +01:00
Benjamin Otte
c7b82c2cea
treeview: Add add() function to accessible
...
... and use that to emit the insertion signals.
2011-12-16 04:53:14 +01:00
Benjamin Otte
82a9f6faa0
treeview: Set expandable flag from treeview
...
... instead of trying to update it manually.
2011-12-16 04:53:14 +01:00
Benjamin Otte
9e9533fc88
a11y: Redo cell accessible action handling
...
Multiple changes:
- actions are now available unconditionally, but only work in the right
state. This mirrors other actions.
- instead of adding actions manually, they invoke the action on the
GtkCellAccessibleParent interface.
Tests have been updated to reflect the changes
2011-12-16 04:53:14 +01:00
Benjamin Otte
f840efae96
a11y: Remove "toggle" action from cell renderers
...
This is identical to "edit" (even though that name is kinda confusing).
2011-12-16 04:53:14 +01:00
Benjamin Otte
adf183b71f
treeview: Set EXPANDED state directly on a11y elements
2011-12-16 04:53:14 +01:00
Benjamin Otte
ab9c2c2de2
a11y: Remove destroy_count_func usage
...
It's not needed anymore.
2011-12-16 04:53:14 +01:00
Benjamin Otte
8ca5192d6d
a11y: Emit row-deleted signal when rows get deleted
...
Instead of in the old callbacks.
2011-12-16 04:53:14 +01:00
Benjamin Otte
25445837ca
a11y: Revert 22a47c3dbd
...
The fix is wrong on multiple levels. I'll add a proper fix soon.
https://bugzilla.gnome.org/show_bug.cgi?id=548782
2011-12-16 04:53:14 +01:00
Benjamin Otte
95dc248790
treeview: Don't use signals in a11y row expansion
...
Instead, add a function and call it directly.
2011-12-16 04:53:14 +01:00
Benjamin Otte
d9b71702dc
a11y: Add _gtk_tree_view_accessible_add_state()
...
... and _gtk_tree_view_accessible_remove_state(). They should be called
by gtktreeview.c to notify about changes of state for a row.
2011-12-16 04:53:13 +01:00
Benjamin Otte
3badf48d2e
a11y: Split out function
...
I want to use that function when sending notifications. See next
commits.
2011-12-16 04:53:13 +01:00
Benjamin Otte
ff80ae16d9
a11y: Readd FOCUSABLE state
...
The state was lost in commit 08d86fabc4
.
Also order the states that are always set alphabetically.
2011-12-16 04:53:13 +01:00
Benjamin Otte
0ef6771bcc
a11y: Remove old notify about showing/visible
...
As cells are always visible and showing, there is no need to do complex
notification mechanisms anymore.
2011-12-16 04:53:13 +01:00
Benjamin Otte
7f42a9465a
a11y: Add _gtk_cell_accessible_state_changed()
...
It's supposed to replace the old state_set calls.
2011-12-16 04:53:13 +01:00
Benjamin Otte
90f04b56a7
a11y: Split out renderer<->atk state matching
...
We now keep a state map. This makes adding new states easier, and
doesn't introduce bugs with state change emissions.
2011-12-16 04:53:13 +01:00
Benjamin Otte
acfb3b3d88
a11y: Don't duplicate information anymore
...
We do provide the expandable and expanded information via
GtkCellRendererState now so there is no need to use extra flags.
2011-12-16 04:53:13 +01:00
Benjamin Otte
bb029420fd
a11y: Set new treeview flags
2011-12-16 04:53:13 +01:00
Benjamin Otte
78aad2d35c
treeview: Use _gtk_rbtree_contains() in a11y code
2011-12-10 08:00:25 +01:00
Benjamin Otte
806dca0677
treeview: Rename function
...
_gtk_tree_view_find_path() was not a name that not really described what
the function does. And I kept forgetting it. Also, it took the tree view
as an argument and that was completely unnecessary.
2011-11-29 20:44:57 +01:00
Benjamin Otte
08d86fabc4
a11y: Implement ref_state_set using the new APIs
...
Various tiny semantic changes in here.
The big fix is that we consider every cell as visible and as showing if
the treeview is mapped.
This was also fixed in the tree dump test.
2011-11-24 18:29:45 +01:00
Benjamin Otte
178686ba11
a11y: Add get_renderer_state() to cell accessibles
...
Accessibles can use this function to query the state that their row
would be rendered with.
2011-11-24 18:29:45 +01:00
Benjamin Otte
bcafd9ba3c
a11y: Add _gtk_cell_accessible_set_cell_data()
...
See the function documentation for details.
Also included is the implementation for the treeview, but no users yet.
2011-11-24 18:29:45 +01:00
Benjamin Otte
416b3ed204
treeview: Notify a11y about reordered rows
...
That way, no more signal handler is needed in the a11y code. Plus, we
avoid needless signal emissions for rows we don't care about.
2011-11-24 18:29:44 +01:00
Benjamin Otte
fbfbaa3d50
a11y: Don't create fake cell renderers
2011-11-24 18:29:44 +01:00
Matthias Clasen
c3d96ff2c0
Improve AtkText implementations
...
There was some regressions from the recent display line fix;
while fixing it improve the test coverage and make GtkEntry
and GtkTextView return identical results.
2011-11-19 19:28:48 -05:00
Matthias Clasen
f2569ba92b
Add a missing static
2011-11-19 18:08:18 -05:00
Benjamin Otte
acbf37bae7
a11y: Merge function into only caller
...
Also cleann up comments that are misleading now.
2011-11-16 04:39:26 +01:00
Benjamin Otte
a4b88c47cd
treeview: Call a11y functions for culmn changes directly
...
This way, the a11y code knows if a column was reordered, added or
removed and can do the right things instead of trying to guess and
getting it wrong.
Also, this patch finalizes the changes so that only visible columns
exist to the accessibility interface.
2011-11-16 04:39:25 +01:00
Benjamin Otte
5041286166
a11y: Unify column-by-index getting
...
We are only ever interested in visible columns. Invisible columns do not
exist for all a11y cares.
2011-11-16 04:39:25 +01:00
Benjamin Otte
bbf59c75d7
a11y: Use gtk_tree_view_get_n_columns()
...
In fact, invent our own function get_n_columns() which actually only
counts the visible functions, because that's the only ones we care
about.
The places where it's not used yet will be changed in the coming
patches.
2011-11-16 04:39:25 +01:00
Benjamin Otte
f7df354c5a
a11y: Fix get_column_index()
2011-11-16 04:39:25 +01:00
Benjamin Otte
f7fed686fd
a11y: remove argument from get_column_number()
...
The argument was always FALSE.
2011-11-16 04:39:25 +01:00
Benjamin Otte
b1fe9b6b8b
a11y: remove useless argument
...
The argument is unused these days, so don't confuse people with it.
2011-11-16 04:39:24 +01:00
Benjamin Otte
5af4ce6a66
a11y: Remove clean_rows function
...
It doesn't do anything anymore.
2011-11-16 04:39:24 +01:00
Benjamin Otte
c2410d0d04
a11y: Don't crete cell infos for non-children
...
When we use a container inbetween, this ensures that the cell infos
don't replace each other in the hash table.
2011-11-16 04:39:24 +01:00
Benjamin Otte
0b26a15b62
a11y: Make find by index lookup use the hash table again
...
This should give back the performance that was lost with the commit
"a11y: Make the cache lookup function inefficient".
2011-11-16 04:39:24 +01:00
Benjamin Otte
85fee33092
a11y: Add a hash function for cell infos
...
Note that comparing the tree is not necessary as the nodes are already
unique per row.
2011-11-16 04:39:24 +01:00
Benjamin Otte
104ddf8a6d
a11y: Compute the cell index quicker
...
We have the node available, so we can compute it from there.
2011-11-16 04:39:24 +01:00
Benjamin Otte
b8dec90f3a
a11y: Compute index the easy way
...
index is row_index * n_columns + column_index
We use it everywhere, why not here?
2011-11-16 04:39:24 +01:00
Benjamin Otte
acc5627e39
a11y: Redo indexing
...
We now index rows by actual expanded row number and don't count them
ourselves no more.
2011-11-16 04:39:24 +01:00
Benjamin Otte
e927a5b2c7
treeview: Redo row tracking
...
Track the RBNode/RBTree instead of keeping a TreeRowReference. This is a
whole lot faster and less error-prone.
Also, notify the accessible of removal of rows before actually removing
them, so we have a chance to clean up.
2011-11-16 04:39:23 +01:00
Benjamin Otte
24e4a03af2
a11y: Remove needless checks
...
The cell_row_ref and cell_col_ref variables are always non-NULL, so
there's no need to check it.
2011-11-16 04:39:23 +01:00
Benjamin Otte
918a9d0e3a
a11y: Add a cell_info_get_path() function
...
Reads better and we only need to change it in one place.
2011-11-16 04:39:23 +01:00
Benjamin Otte
9f91405d6c
a11y: Mark object as defunct in destroy notify
...
Instead of requiring a special functio to be called before just removing
from the hash table. This simplifies code a lot that used to remove from
the hash table.
2011-11-16 04:39:23 +01:00
Benjamin Otte
bd1bc88ed2
a11y: Remove in_use member
...
After the latest changes, it is now always TRUE, so adjust the code
accordingly.
2011-11-16 04:39:23 +01:00
Benjamin Otte
40b7e3044e
a11y: Don't garbage collect anymore
...
Instead, remove cell infos immediately from the hash table.
2011-11-16 04:39:23 +01:00
Benjamin Otte
64b825b87b
a11y: Improve cell_infos table
...
- Name it properly
- Make it just a set of cell_infos
Currently it's using direct hash, but as long as we don't actually
lookup stuff from it, who cares...
2011-11-16 04:39:23 +01:00
Benjamin Otte
71011f3e1e
a11y: Implement find_cell_info() using qdata lookup
...
That should be orders of magnitude faster then iterating over a hash
table.
2011-11-16 04:39:23 +01:00
Benjamin Otte
331a4c92b0
a11y: Store the cellinfo in the cell's qdata
2011-11-16 04:39:22 +01:00
Benjamin Otte
d265636526
a11y: Remove index from cellaccessible
...
That way we also get rid of the refresh_index function.
2011-11-16 04:39:22 +01:00
Benjamin Otte
f05d3f66b1
a11y: Don't use the cell's index anymore
...
We implement get_cell_index() now, so it's no longer necessary.
As a side effect, we need a different index for our hash table (which
now has a wrong name, but that will soon change).
2011-11-16 04:39:22 +01:00
Benjamin Otte
35b667a409
a11y: Implement get_child_index in treeview
2011-11-16 04:39:22 +01:00
Benjamin Otte
d5b52ae3b1
a11y: Implement get_child_index in treeviewaccessible
2011-11-16 04:39:22 +01:00
Benjamin Otte
a9dd3e559a
a11y: Make the cache lookup function inefficient
...
Ahem.
This is in preparation for future changes and is not meant to stay this
way. But I want to change the hash table's keys and this is way easier
when nobody is using them.
2011-11-16 04:31:06 +01:00
Benjamin Otte
ac29108586
a11y: Change function declaration
...
Returning an int seems way easier than having an int out argument to a
void function. Also, it doesn't lead to uninitialized memory, what a
concept!
2011-11-16 04:31:06 +01:00
Benjamin Otte
533ee181de
a11y: Add a special-case for cell index querying
...
I could have tried to make GtkContainerCellAccessible implement
GtkCellAccessibleParent, but the current implementation of that
interface doesn't make sense for it.
2011-11-16 04:31:06 +01:00
Benjamin Otte
02fd1e5a62
a11y: Add _gtk_cell_accessible_parent_get_child_index()
...
This will soon replace the shenanigans we do to keep the index of cells
current.
2011-11-16 04:31:06 +01:00
Benjamin Otte
2bd69cbf8c
a11y: Remove idle handler for focus notifications
2011-11-16 04:31:06 +01:00
Benjamin Otte
0c2f454b41
a11y: Re-implement gtk_tree_view_accessible_get_n_rows()
...
... using the new _gtk_rbtree_find_index().
2011-11-16 04:31:06 +01:00
Matthias Clasen
4904a2f45b
GtkTextViewAccessible: Respect display lines
...
This special tweak was lost when porting from GailTextUtil.
https://bugzilla.gnome.org/show_bug.cgi?id=663994
2011-11-15 00:25:18 -05:00
Matthias Clasen
005451e3f3
GtkComboBoxAccessible: Make keybindings work
...
https://bugzilla.gnome.org/show_bug.cgi?id=659151
2011-11-14 09:26:15 -05:00
Benjamin Otte
24b9599af7
a11y: Get rid of gtk.h includes in headers
...
This way, we can include them without accidentally including deprecated
code. Which means we can still use the recently added turning-off tricks
for deprecation warnings.
2011-11-10 17:10:04 +01:00
Benjamin Otte
2d3c36a021
a11y: Fix gcc warning
2011-11-10 17:10:04 +01:00
Benjamin Otte
1c96b0b838
a11y: It's not a bug if there's no row at some point
...
In that case, there's just nothing there.
2011-11-10 17:10:04 +01:00
Guillaume Desmottes
fb97c28bca
gtktreeviewaccessible: use a value_destroy_func with the cell_info_by_index hash
...
This ensures that we don't leak any GtkTreeViewAccessibleCellInfo when
re-inserting a new one with the same key.
https://bugzilla.gnome.org/show_bug.cgi?id=663694
2011-11-10 14:49:30 +01:00
Guillaume Desmottes
22807d8469
gtktreeviewaccessible: factor out cell_info_free()
...
https://bugzilla.gnome.org/show_bug.cgi?id=663694
2011-11-10 14:49:30 +01:00
Matthias Clasen
feece3c0bb
Move gtkstyle and gtkrc to deprecated/
...
This required a somewhat more substantial include reshuffling.
Some typedefs have been moved to gtkiconfactory.h and to
gtksettings.h.
2011-11-02 01:15:21 -04:00
Javier Jardón
0853ce3077
Use G_VALUE_INIT
...
Instead of an explicit { 0, } when declaring the variable.
2011-10-15 16:45:16 +01:00
Matthias Clasen
8f078992fd
Include gdk.h in gail.c
...
This is needed so that we pick up deprecation macros here in the
future.
2011-10-11 15:01:41 -04:00
Benjamin Otte
a36b05fed7
a11y: Don't include gtkx when not needed
2011-09-30 23:23:36 +02:00
Benjamin Otte
4a43034761
a11y: Remove useless check
2011-09-30 23:23:36 +02:00
Alban Crequy
6ab7b87a02
gtktreeviewaccessible: do not trigger an assertion
...
The following assertion was triggered in model_row_inserted() because
iterate_thru_children() modifies the parameter tree_model before passing it to
traverse_cells().
Gtk-CRITICAL **: gtk_tree_path_compare: assertion `b->depth > 0' failed
The stack with the bug was:
#0 gtk_tree_path_compare at gtktreemodel.c
#1 traverse_cells at gtktreeviewaccessible.c
#2 model_row_inserted at gtktreeviewaccessible.c
This patch calls iterate_thru_children() with a copy of the path so that the
original is not modified.
2011-09-23 12:04:39 -04:00
Matthias Clasen
f1476f31fe
a11y: Fix up listener registration minimally
...
For god-knows-what reason, at-spi is trying various formats
of strings when registering listeners, triggering g_warnings()
from gailutil code. Stop doing that.
Also, don't leak temporary string arrays that are a side-effect
of passing parameters around as formatted strings.
https://bugzilla.gnome.org/show_bug.cgi?id=658168
2011-09-05 11:56:54 -04:00
Alejandro Piñeiro
4244349600
a11y: Don't manage window events as a exception
...
https://bugzilla.gnome.org/show_bug.cgi?id=657260
2011-08-29 10:57:21 -04:00
Alejandro Piñeiro
08bf2e0463
a11y: Use AtkWindow on GtkWindowAccessible
...
GtkWindowAccessible doesn't require to define window related
signals. They are included on AtkWindow
2011-08-29 10:57:14 -04:00
Matthias Clasen
1090eba9a8
a11y: don't return random numbers
...
Return 0 for the image size if we don't have a pixbuf to measure.
2011-08-29 10:50:01 -04:00
Dan Winship
c4a5c99074
Fix cut-and-paste error in GtkEntryAccessible/GtkLabelAccessible
...
The y position of the character depends on the window's y coordinate,
not its x coordinate.
2011-08-10 15:19:56 -04:00
Benjamin Otte
b0e836e231
a11y: Merge gtksubmenuitem into gtkmenuitem
...
The reason why they were separate is historic, it's not useful to keep
the distinction.
2011-07-18 19:41:07 +02:00
Benjamin Otte
9306b266a0
a11y: Rename checksubmenuitem to checkmenuitem
2011-07-18 19:21:17 +02:00
Benjamin Otte
77f411c77a
a11y: Remove gtkcheckmneuitemaccessible.[ch]
...
COde uses gtkchecksubmenuitemaccessible exclusively now. And I totally
dig these long finger-twisting names.
2011-07-18 19:05:28 +02:00
Benjamin Otte
fa16a54b21
a11y: Rename radiosubmenuitem to radiomenuitem
2011-07-18 19:01:40 +02:00
Benjamin Otte
438b78a27d
a11y: Remove gtkradiomenuitemaccessible.[ch]
...
We use gtkradiosubmenuitemaccessible exclusively these days.
2011-07-18 18:47:12 +02:00
Benjamin Otte
d5ef8448bb
checkbutton: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:51 +02:00
Benjamin Otte
0c9b046af0
accellabel: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:51 +02:00
Benjamin Otte
f2626b6183
menubar: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:51 +02:00
Benjamin Otte
9c30ae02ee
toolbar: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
96245d4efb
viewport: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
d9bfa563d0
tearoffmenuitem: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
480b5862d4
plug: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
27f96820c8
fontsel: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
c40875ad51
messagedialog: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
6379faaa90
dialog: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
2e570136f5
colorsel: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
299b3bed96
filechooserdialog: Use gtk_widget_class_set_accessible_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
54e1caa428
a11y: Remove separator menu item special case
...
gtkseparator.c already takes care of this case.
2011-07-18 18:30:49 +02:00
Matthias Clasen
3bfa69fa53
Don't use object data for layer
...
Just add a regular member in GtkWidgetAccessible for it.
2011-07-17 23:17:38 -04:00
Matthias Clasen
6d33c783d0
Get rid of the focus_gtk vfunc
...
Only GtkWidgetAccessible and GtkWindowAccessible had implementations,
and they could easily be converted to focus_event handlers.
2011-07-17 23:04:00 -04:00
Matthias Clasen
2b5140c974
Avoid a compiler warning
2011-07-17 23:03:34 -04:00
Matthias Clasen
e756b2e50d
Use canonical names
...
Use canonical names for both signals and properties.
2011-07-17 18:52:37 -04:00
Matthias Clasen
dc2ae6c0a5
Don't emit a nonexisting signal
...
The signal is called "popdown", not "podown".
2011-07-17 18:45:46 -04:00
Matthias Clasen
102faa3037
GtkLabelAccessible: avoid extra selection-changed emissions
...
This copies the same code that the entry accessible uses
to check for selection changes.
https://bugzilla.gnome.org/show_bug.cgi?id=654428
2011-07-16 09:44:02 -04:00
Chun-wei Fan
5ab8120689
Added VS projects for a11y and libgail-util
...
-Added projects to compile the a11y portion of GTK+. This is now necessary
as a11y/GAIL is now integrated into the main GTK+ library, and it must
be built before compiling/linking GTK+. This project is done like the
GDK/GTK+ projects, where the source file listings for the VS2008/2010
projects are fed into templates (.vcprojin, .vcxprojin and
.vcxproj.filtersin) during 'make dist'
-Added projects to compile the libgail-util DLL (no templates for this
as this does not have source files added/removed often)
-Added the new projects into distribution, and headers, DLLs and .LIB files
into the "install" stage
2011-07-14 11:53:36 +08:00
Chun-wei Fan
a32be5d7e6
Don't include unistd.h unconditionally
2011-07-13 15:27:28 +08:00
Matthias Clasen
5556ae9f80
Don't install any gail headers
...
There is no public API here.
2011-07-11 23:52:22 -04:00
Benjamin Otte
17d5afcae2
a11y: Only advertise action if menuitems are selectable
...
There's no "click" action for separatormenuitems, for example.
2011-07-11 03:08:32 +02:00
Benjamin Otte
a82cbf29a2
a11y: Don't advertise ROLE_MENU in submenuitems
...
We use submenuitems for all menuitems now. So they shouldn't be all
advertised as menus. For the ones that do have submenus, we still
advertise ROLE_MENU per the last patch.
2011-07-11 02:51:43 +02:00
Benjamin Otte
8f9493ddf2
a11y: Make menuitem accessible return ROLE_MENU when it has a submenu
...
Otherwise keep using the role set via atk_object_set_role().
2011-07-11 02:51:43 +02:00
Matthias Clasen
07380c1e64
Make all of a11y/ compile with -Wshadow
2011-07-10 00:24:26 -04:00
Matthias Clasen
634e95eba1
Avoid more shadowing warnings
2011-07-10 00:20:17 -04:00
Matthias Clasen
88312319c4
Avoid more compiler warnings
...
Turns out link is a shadow-happy name, too.
2011-07-10 00:16:53 -04:00
Matthias Clasen
1803e1b57c
Avoid compiler warnings
...
The text variable in gtk_label_accessible_get_selection was
shadowing a parameter of the same name.
2011-07-10 00:10:54 -04:00
Matthias Clasen
9f58645eca
Avoid compiler warnings
...
The obj variable in gtk_notebook_accessible_notify_gtk was shadowing
the parameter of the same name.
2011-07-10 00:10:20 -04:00
Matthias Clasen
a20c7ed214
Avoid unnecessary includes
...
Including string.h makes the compiler complain about parameters
and variables called index, which is not nice.
2011-07-10 00:10:15 -04:00
Matthias Clasen
ddfa756ac7
Convert GailCellParent to GtkCellAccessibleParent
2011-07-09 23:57:16 -04:00
Matthias Clasen
4e5629bed1
Convert GailTextCell to GtkTextCellAccessible
2011-07-09 23:57:16 -04:00
Matthias Clasen
7ddf0dff8f
Convert GailImageCell to GtkImageCellAccessible
2011-07-09 23:57:16 -04:00
Matthias Clasen
920c1c4c83
Convert GailRendererCell to GtkRendererCellAccessible
2011-07-09 23:57:16 -04:00
Matthias Clasen
3688c1a2d3
Convert GailBooleanCell to GtkBooleanCellAccessible
...
Including assorted cleanups and _-prefixing of exported API.
2011-07-09 23:57:16 -04:00
Matthias Clasen
1da67a2298
Convert GailContainerCell to GtkContainerCellAccessible
...
Including assorted cleanups and _-prefixing of exported API.
2011-07-09 23:57:16 -04:00
Matthias Clasen
07461459d4
Convert GailCell to GtkCellAccessible
...
Including _-prefixing the API to reduce unwanted exports.
2011-07-09 23:57:16 -04:00
Matthias Clasen
3846a59bab
Drop a few more unwanted exports
...
Remaining now are just cell accessibles.
2011-07-09 16:43:39 -04:00
Matthias Clasen
d98622b2ea
Reduce the number of unwanted exports
...
_-prefix most of the get_type functions in a11y/.
There are still some more symbols left.
2011-07-09 16:32:40 -04:00
Matthias Clasen
671565245e
Another forgotten static
2011-07-09 16:04:45 -04:00
Matthias Clasen
88537fb4cc
Another forgotten static
2011-07-09 16:04:13 -04:00
Matthias Clasen
dc8d64d6f2
Add a forgotten static
2011-07-09 15:33:28 -04:00
Matthias Clasen
2aeb7042d0
Drop the fake GailUtil subclass
...
Since it is not a subclass at all. Instead, just have a function
that overrides the vfuncs in AtkUtilClass.
2011-07-09 15:33:28 -04:00
Benjamin Otte
05eb4113d9
a11y: Fix warnings when removing widgets that don't have accessibles
...
The remove handler would not check that removed widgets do indeed have
an accessible associated with them and would happily run all the removal
code with a NULL object. Not good.
2011-07-09 21:24:09 +02:00
Matthias Clasen
182b6f7a3c
This is more horrible than I had realized
...
Due to tragic misunderstandings at the birth of ATK, AtkUtil
can't actually be properly derived. Instead, each implementation
has to poke its vfuncs directly into the AtkUtilClass struct.
So painful to have shipped this stuff for 10 years...
2011-07-08 23:20:06 -04:00
Matthias Clasen
d7ded58f51
Clean up gailutil.c a bit
2011-07-08 23:05:51 -04:00
Matthias Clasen
4c76d9fe31
Separate GailUtil and GailMisc
...
Not sure how these ended up as siamese twins in the same
source file. Of course, separating them doesn't make them
any more beautiful.
2011-07-08 22:52:03 -04:00
Matthias Clasen
56fb725a7e
Convert GailToplevel to GtkToplevelAccessible
2011-07-08 22:39:00 -04:00
Matthias Clasen
9979e2a443
Drop remaining uses of gail_misc api
...
Fold them into their last remaining user, in gailtextcell.c
2011-07-08 22:03:13 -04:00
Matthias Clasen
64d3314a64
Drop now unused gail_misc API
2011-07-08 20:12:45 -04:00
Matthias Clasen
db1eeb0651
Drop gailtextutil from gtk/a11y
...
The last user was GailTextCell, and that can use gtk_pango
api instead.
2011-07-08 18:41:01 -04:00
Matthias Clasen
77db52ac9a
We're no longer a module
...
And we don't support not loading the module anymore, either.
So take out the code that looks at environment variables for
that purpose, and don't print a misleading message about
module loading.
2011-07-08 16:37:07 -04:00
Matthias Clasen
fabc5a9117
gail_misc_add_attribute no longer used outside gailmisc.c
...
This reduces the number of unwanted exported gail symbols
from 90 to 89. Still some way to go...
2011-07-08 16:31:48 -04:00
Matthias Clasen
a38d119f16
Drop gail_misc_buffer_get_run_attributes
...
Instead fold the code into the sole caller and get rid
of gailmisc usage in the text view accessible altogether.
2011-07-06 23:19:40 -04:00
Matthias Clasen
d1b0ae62a5
Drop an unneeded include
...
One step close to dropping gailmisc.
2011-07-06 23:18:52 -04:00
Benjamin Otte
15ab20fdfb
a11y: Make submenu code handle non-existing submenus
...
As we're going to merge the two accessibles for submenus, we need to
make sure the code that insisted on submenus can handle the case where
no submenu exists.
2011-07-06 20:55:11 +02:00
Benjamin Otte
d5dad3422b
a11y: Fix leaking of state sets
2011-07-06 20:48:35 +02:00
Benjamin Otte
30930e643f
a11y: Redo TextView cursor/selection signal handling
...
As part of the removal of idles, redo how we emit signals on the
accessible. Should work as good or better than before, but with a lot
less code.
2011-07-06 16:50:09 +02:00
Benjamin Otte
4abbe4cb52
a11y: Use the canonical way to connect to signals
...
No functional changes at all, the generated code should in fact be
identical.
2011-07-06 16:40:05 +02:00
Benjamin Otte
eeae39d359
a11y: Simplify code
2011-07-06 16:40:05 +02:00
Benjamin Otte
659d24c9ab
a11y: Remove idle handler for switch action handling
2011-07-06 16:40:04 +02:00
Benjamin Otte
8efc350127
a11y: Remove set_description handling from GtkSwitch
...
The function is unused in AT-SPI.
2011-07-06 16:40:04 +02:00
Benjamin Otte
ccbe6c816b
range: Do not use idles to trigger actions
2011-07-06 16:40:04 +02:00
Benjamin Otte
2870b58638
a11y: Don't use an idle handler for entry actions
2011-07-06 16:40:04 +02:00
Rico Tzschichholz
2c51d76c1f
Fix two typos in Makefiles
2011-07-06 16:33:55 +02:00
Javier Jardon
8a84056d0a
gtktreeviewaccessible: free the string in the correct position
2011-07-06 14:36:29 +01:00
Matthias Clasen
2980659ab1
Add api for setting the layer
...
Add api for setting the component layer, instead of open-coding
the object data key, and use it.
2011-07-05 16:10:26 -04:00
Matthias Clasen
e1463ab57c
Silence compiler warnings
2011-07-05 16:10:26 -04:00
Matthias Clasen
5d90ca35c2
Set accessible parents of notebook children
...
Explicitly set the notebook page object as the accessible parent
of the page, otherwise, AtkObject follows the widget parents chain
and makes the notebook accessible the parent.
2011-07-05 16:10:26 -04:00
Matthias Clasen
b83122dc05
Drop use of factories for cell accessibles
2011-07-05 16:10:26 -04:00
Matthias Clasen
5559242ea9
Change the toolkit name in GailUtil to 'gtk', too
2011-07-05 16:10:25 -04:00
Matthias Clasen
b61043dcfa
Change the toolkit attribute from gail to gtk
...
Update test results to match.
2011-07-05 16:10:25 -04:00
Matthias Clasen
eb81d45024
Move GtkSwitchAccessible to a11y/
2011-07-05 16:10:25 -04:00
Matthias Clasen
e6251f0248
Move GtkSpinnerAccessible to a11y/
2011-07-05 16:10:25 -04:00
Matthias Clasen
f839379d01
Drop the atk_component_add/remove_focus_handler implementation
...
Instead, just connect to focus-event directly.
2011-07-05 16:09:57 -04:00
Matthias Clasen
775ccf39e7
Initial conversion of GailWidget to GtkWidgetAccessible
2011-07-05 16:09:57 -04:00
Matthias Clasen
89e57c6978
Convert GailContainer to GtkContainerAccessible
2011-07-05 16:08:57 -04:00
Matthias Clasen
64eec8a97a
Convert GailMenuShell to GtkMenuShellAccessible
2011-07-05 16:08:57 -04:00
Matthias Clasen
0e2f3271b9
Convert GailMenu to GtkMenuAccessible
2011-07-05 16:08:57 -04:00
Matthias Clasen
ed08baccd9
Convert GailWindow to GtkWindowAccessible
...
While doing this, drop the get_mdi_zorder implementation
that really should come from the window manager side. Dropping
this saves some 500 lines.
2011-07-05 16:08:57 -04:00
Matthias Clasen
8432ea3574
Convert GailButton to GtkButtonAccessible
...
This drops the AtkText implementation, and also strips handling
of children out. Instead of listening for enter/leave/press/released,
just listen for state changes on the widget.
2011-07-05 16:08:57 -04:00
Matthias Clasen
a3113386df
Drop unneeded includes of gdkkeysyms.h
...
Just a minor cleanup; gtk.h includes this header in GTK+ 3.
2011-07-05 16:08:57 -04:00
Matthias Clasen
254538bf77
Drop unneeded includes gailtextutil.h
...
Almost done with getting rid of GailTextUtil.
2011-07-05 16:08:57 -04:00
Matthias Clasen
3459dc480a
Convert Gail(Sub)MenuItem to GtkAccessible classes
...
This is along the same lines as the previous commit,
with the same caveat.
2011-07-05 16:08:57 -04:00
Matthias Clasen
209a2d1ba0
Convert GailCheck(Sub)MenuItem to GtkAccessible classes
...
This is along the same lines as the previous commit,
with the same caveat.
2011-07-05 16:08:57 -04:00
Matthias Clasen
64b9599866
Convert GailRadio(Sub)MenuItem to GtkAccessible classes
...
The way submenus are handled here isn't really right, since
they can come and go at runtime, but I've left it like this
for now. A side-effect is that we can't use
gtk_widget_class_set_accessible_type here, but have to
override get_accessible.
2011-07-05 16:08:57 -04:00
Matthias Clasen
896769df69
Convert GailExpander to GtkExpanderAccessible
...
At the same time, drop the AtkText implementation.
Also, reintroduce a GtkBoxAccessible, since the previous
way of setting the role in get_accessible was affecting
GtkBox subclasses negatively.
Adjust expected test output to match.
2011-07-05 16:08:57 -04:00
Matthias Clasen
ff5eb4adfe
Convert GailStatusbar to GtkStatusbarAccessible
...
And drop the AtkText implementation at the same time.
Update test results to match.
2011-07-05 16:08:56 -04:00
Matthias Clasen
9a0fd43df2
Convert GailNotebookPage to GtkNotebookPageAccessible
...
At the same time, drop the AtkText implementation, and simplify
accordingly. Test output has been updated to match.
2011-07-05 16:08:56 -04:00
Matthias Clasen
0bbe09a28e
Avoid excessive child_changed::added emissions
...
We are listening to page-added and emit child_changed::added
in response to that, so don't let the add_gtk handler add
extraneous extra signal emissions. This fixes the child-handling
test for GtkNotebook.
2011-07-05 16:08:56 -04:00
Matthias Clasen
318192b937
Convert GailNotebook to GtkNotebookAccessible
2011-07-05 16:08:56 -04:00
Matthias Clasen
6012f096c9
Convert GailTreeView to GtkTreeViewAccessible
...
Mostly code rearrangement and cleanup, but also a memory
leak fix in gtk_tree_view_accessible_get_column_description().
2011-07-05 16:08:56 -04:00
Matthias Clasen
7371e3f7cf
Convert GailComboBox to GtkComboBoxAccessible
2011-07-05 16:08:56 -04:00
Benjamin Otte
5d57716ef8
a11y: Make notebookpage emit child-added signal sync
...
Don't use an idle handler
2011-07-05 16:08:55 -04:00
Benjamin Otte
f59cb0e05d
a11y: Keep the gail notebook in the notebook page
...
We used to keep the GtkNotebook, but that causes issues at creation time
of the GailNotebook, when the GtkNotebook does not yet have an
accessible set and so it can't be queried.
2011-07-05 16:08:55 -04:00
Benjamin Otte
790d8e324b
a11y: Redo notebook page management
...
Previously, the code tried to track the indexes of the pages and keep
them up to date in a list and tracking the index in the
GtkNotebookPage. Now, we store the widget we are tracking in the
GailNotebookPage and keep a hash table of widget=>GailNotebookPage in the
GailNotebook. This frees us from the burden of tracking page changes.
2011-07-05 16:08:55 -04:00
Benjamin Otte
9cf9abd5b0
a11y: Redo notebok page lifetime management
...
It is now done by the GailNotebook. Previously it tried to do it itself.
Also, we now use GtkNotebook::page-removed to track the removal, as
opposed to child::parent-set.
2011-07-05 16:08:55 -04:00
Benjamin Otte
fdc40111f8
a11y: Remove idle handler from menuitem action
2011-07-05 16:08:55 -04:00
Benjamin Otte
3e49e2387c
a11y: Remove idle handler for expander actions
2011-07-05 16:08:55 -04:00
Benjamin Otte
55dec3a798
a11y: Remove idle handler for combo box action
2011-07-05 16:08:55 -04:00
Benjamin Otte
05d7260e19
a11y: Remove idle handler from GailButton
2011-07-05 16:08:55 -04:00
Benjamin Otte
7c00940470
a11y: Use gtk_button_clicked() to click a button.
...
Don't fiddle with events.
2011-07-05 16:08:55 -04:00
Benjamin Otte
6b02119bb1
a11y: Remove "press" and "release" actions from buttons
...
http://mail.gnome.org/archives/gnome-accessibility-devel/2011-June/msg00020.html
has some details about this.
The main problem is that the internal button states get fiddled with and
that is not a good idea to do from an AT.
Also update tests to reflect that.
2011-07-05 16:08:55 -04:00
Benjamin Otte
8e28e22bcf
a11y: Do actions on cells immediately
...
No idle handlers, please.
2011-07-05 16:08:55 -04:00
Benjamin Otte
52c0933bc0
a11y: Use simple code for window name change tracking
...
Remove idle handler and omit checking if the name really was changed.
ATs will either have to live with the name not really changoing or we
should check in GtkWindow.
2011-07-05 16:08:55 -04:00
Matthias Clasen
0b952dcc85
Emit the same changed_children details as everybody else
...
...if any of this was documented...
2011-07-05 16:08:55 -04:00
Matthias Clasen
48c3d8e1cf
Drop gail-private-macros.h
...
Nothing like obfuscating an early return behind a macro.
2011-07-05 16:08:55 -04:00
Matthias Clasen
53c90cebb2
Convert GailScrolledWindow to GtkScrolledWindowAccessible
2011-07-05 16:08:54 -04:00
Matthias Clasen
fecefc6cdf
Drop use of gail_return_if_fail
2011-07-05 16:08:54 -04:00
Matthias Clasen
3ab623e391
Fix a test crash
2011-07-05 16:08:54 -04:00
Matthias Clasen
f052710b85
Remove old files
2011-07-05 16:08:54 -04:00
Matthias Clasen
13e8bace97
Convert GailScaleButton to GtkScaleButtonAccessible
2011-07-05 16:08:54 -04:00
Matthias Clasen
583a5e4ea4
Drop another unused include
2011-07-05 16:08:54 -04:00
Matthias Clasen
a8b67d2064
Convert GailToggleButton to GtkToggleButtonAccessible
2011-07-05 16:08:54 -04:00
Matthias Clasen
f54cc70238
Nuke GailAdjustment
...
This was a fairly trivial wrapper around GtkAdjustment with
no particularly important reason for existence.
2011-07-05 16:08:54 -04:00
Matthias Clasen
1ff2076cdd
GtkAdjustment: add an auxiliary function
...
This is going to be used in AtkValue implementations.
2011-07-05 16:08:54 -04:00
Matthias Clasen
98918137a8
Drop an unneeded include
2011-07-05 16:08:54 -04:00
Matthias Clasen
e2847d9637
Convert GailRadioButton to GtkRadioButtonAccessible
2011-07-05 16:08:54 -04:00
Matthias Clasen
369b4a605e
GtkLabelAccessible: drop an unneeded include
...
We eventually want to get rid of gailmisc, so this is progress.
2011-07-05 16:08:54 -04:00
Matthias Clasen
c750139c85
Convert GailPaned to GtkPanedAccessible
2011-07-05 16:08:54 -04:00
Matthias Clasen
7f58482d4e
Convert GailRange to GtkRangeAccessible
2011-07-05 16:08:54 -04:00
Matthias Clasen
5f6ed88b7a
GtkTextViewAccessible: get rid of GailTextUtil usage
...
Instead, use the newly added GtkTextBuffer functions.
2011-07-05 16:08:53 -04:00
Matthias Clasen
d15319b717
Convert GailLinkButton to GtkLinkButtonAccessible
2011-07-05 16:08:53 -04:00
Matthias Clasen
2152424541
Convert GailImage to GtkImageAccessible
2011-07-05 16:08:53 -04:00
Matthias Clasen
a166051b60
Convert GailProgressBar to GtkProgressBarAccessible
2011-07-05 16:08:53 -04:00
Matthias Clasen
87195bc3cd
Convert GailScrollbar to GtkScrollbarAccessible
2011-07-05 16:08:53 -04:00
Matthias Clasen
a129392bb4
Convert GailFrame to GtkFrameAccessible
2011-07-05 16:08:53 -04:00
Matthias Clasen
1ef996ca3c
Remove GailBox
...
It was only setting a role, and we can do that just as well
in get_accessible().
2011-07-05 16:08:53 -04:00
Matthias Clasen
6aedf8f066
Remove GailCalendar
...
This was just setting a role, which we can do just as well
in get_accessible().
2011-07-05 16:08:10 -04:00
Matthias Clasen
4a7a667f5f
Drop GailSeparator
...
Instead, just set a suitable role on a GtkWidgetAccessible.
2011-07-05 16:08:10 -04:00
Matthias Clasen
ab8d94d195
Convert GailArrow to GtkArrowAccessible
2011-07-05 16:08:10 -04:00