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