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
9c81336830
widget: Reset the accessible role when a new accessible type is set
...
We want the role to be kept in the accessible object. Using
gtk_widget_class_set_accessible_role() is only meant as a quick
workaround to requiring subclassing of the accessibles in the quite
common case where a subclass does not change the accessible
implementation at all and only has a different role.
2011-07-18 18:30:50 +02:00
Benjamin Otte
b61a200036
separatormenuitem: Use gtk_widget_class_accessible_set_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
094785bd68
separator: Use gtk_widget_class_accessible_set_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
017d02b9de
hsv: Use gtk_widget_class_accessible_set_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
8815ccf5c4
calendar: Use gtk_widget_class_accessible_set_role()
2011-07-18 18:30:50 +02:00
Benjamin Otte
b17ad131ea
API: Add gtk_widget_class_set_accessible_role()
...
Easy access to modifying the roles of subclasses, as this is a thing
that commonly changes for various subclasses.
2011-07-18 18:30:49 +02:00
Benjamin Otte
c0df6f9622
menushell: Use GtkMenuShellAccessible as a11y object
...
Previously it was only used by GtkMenuBar, and that's a naming mismatch.
2011-07-18 18:30:49 +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
Benjamin Otte
1f4b524558
assistant: Use gtk_container_remove() when removing pages
...
Ensures that we properly emit the "remove" signal.
2011-07-18 10:54:57 +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
095ea84611
Make destroying assistants work again
...
During destruction, we need to be careful to not ask the content
notebook to remove itself from itself.
2011-07-17 19:35:37 -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
Florian Müllner
7741f5a09a
theming-engine: Adjust register_property() to recent glib change
...
GParamSpec now uses an intern'ed string for 'name', so the code
in gtk_theming_engine_register_property() which prefixes the name
with a namespace has to be adjusted.
https://bugzilla.gnome.org/show_bug.cgi?id=654695
2011-07-15 20:50:26 +02:00
Matthias Clasen
1f264ddb4b
Don't use deprecated style api
...
gtk_widget_modify_font() has been superseded by
gtk_widget_override_font(), so use that in GtkMessageDialog.
2011-07-15 11:07:38 -04:00
Matthias Clasen
3cc22eed44
Add some GtkAccessible documentation
...
Describe the current thinking about how to provide
3rd party accessible implementations.
2011-07-14 19:50:21 -04:00
Matthias Clasen
7c2414ec7e
Drop private GtkAccessible api
...
We no longer use factories anywhere.
2011-07-14 19:42:12 -04:00
Matthias Clasen
3e05518881
Drop unneeded includes
...
We no longer use the private GtkAccessible api here.
2011-07-14 19:40:50 -04:00
Matthias Clasen
d8c00cd537
Revert "Add a getter for the accessible type of a widget class"
...
This reverts commit 9a212b3120
.
2011-07-14 19:28:07 -04:00
Kristian Rietveld
88a18a28d5
quartz: Remove call to deprecated gdk_pointer_ungrab
2011-07-14 14:22:38 +02:00
John Ralls
86794ce008
Bug 653450 - gtkfilechooser crashes when added favorite
...
Ensure that display is set during drag-and-drop, and that string lists'
memory is zeroed after allocation to prevent g_strfreev() from
over-running.
2011-07-14 14:17:51 +02: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
Matthias Clasen
9a212b3120
Add a getter for the accessible type of a widget class
...
This will be necessary to port out-of-tree a11y implementations
from the atk object factory approach to this new way of doing
things.
2011-07-13 23:02:25 -04:00
Federico Mena Quintero
b53f602891
Save selection to recent-files in the asynchronous Save cases
...
Various paths in SAVE or CREATE_FOLDER return from ::should_respond() but
leave an asynchronous process running. This process checks some things
in the user's selection, for example, 'does the file exist, and if so
do we need to bring up an overwrite-confirmation dialog?'. When these
async processes complete *and* it is indeed time for the dialog to
be terminated (via the response-requested signal), we also need to
save the selection to the recently-used list - as ::should_respond() does
by itself in the cases when it can request a response immediately.
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-13 16:39:12 -05:00
Chun-wei Fan
a32be5d7e6
Don't include unistd.h unconditionally
2011-07-13 15:27:28 +08:00
Federico Mena Quintero
f1ca0eebc6
Log to recent-files when confirming the file chooser
...
To make life easier for users, when apps don't properly update the recently-used list
after choosing a file, we now do that directly from the file chooser.
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 11:36:19 -05:00
Matthias Clasen
5556ae9f80
Don't install any gail headers
...
There is no public API here.
2011-07-11 23:52:22 -04:00
Matthias Clasen
91bfe9f0c0
Make gtk_container_remove work for assistants
2011-07-11 23:12:55 -04:00
Matthias Clasen
bf70fbb696
Drop an unneeded include
2011-07-11 23:12:55 -04:00
Matthias Clasen
86fcb8b66f
Add gtk_assistant_remove_page
...
This was suspiciously missing, considering we have the usual
append/prepend/insert_page methods.
2011-07-11 23:12:55 -04:00
Jonathan Matthew
ad9da2727d
GMountOperation::show-processes support for OpenBSD using kvm(3)
2011-07-12 07:56:01 +10: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
Matthew Barnes
4d17ff973e
GtkAssistant doesn't notice destroyed pages
...
Listen for GtkContainer::remove signals from the internal notebook.
https://bugzilla.gnome.org/show_bug.cgi?id=653705
2011-07-09 17:56:03 -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
ccaa0af7d0
filechooser: Fix set-but-not-used warning from gcc
2011-07-09 21:24:41 +02: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
Ignacio Casal Quinteiro
06b1362999
gtkaccelmap: the data gtk_accel_map_foreach needs to be annotated as allow-none
2011-07-09 12:54:23 +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
a7190d11c2
No longer need to strip the decorations when generating gtk.def, either
2011-07-08 18:41:01 -04:00
Matthias Clasen
2cdac4704c
gtk.symbols: remove remaining G_GNUC_ decorations
...
These are no longer used for anything
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
Federico Mena Quintero
b80fb88aff
Merge bgo593793-filechooser-recent-folders-master branch.
...
The file chooser now starts up in recent-files mode, or in recent-folders mode,
if the caller didn't set a current_folder on it. Setting a current_folder is
now discouraged, so that the file chooser can have a chance of presenting
useful locations to the user.
See https://live.gnome.org/DocumentCentricGnome/Help%20the%20user%20choose%20a%20place%20to%20put%20a%20new%20file
for the rationale behind these changes.
2011-07-08 11:43:32 -05:00
Cosimo Cecchi
1fdfb18c37
iconview: make it possible for selected cells to render a border
...
Call gtk_render_frame() after gtk_render_background() there.
https://bugzilla.gnome.org/show_bug.cgi?id=654179
2011-07-08 11:36:04 -04:00
Johan Dahlin
a47528fd59
Clarify that gtk_builder_connect_signals can only be connected once
2011-07-07 15:41:29 -03: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
a24ec1583b
gtkpango: Count letters properly
...
The code was using the wrong variable and that then caused assertions
2011-07-07 03:37:52 +02: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
7b2f8949dd
styleproperty: Fix leak
2011-07-06 20:41:31 +02:00
Benjamin Otte
552113131c
menuitems: Use submenuitem accessible exclusively
...
Submenus can come and go, so we cannot use an accessible that doesn't
allow for that.
Also, this fixes a rather large refleak.
2011-07-06 18:47:00 +02:00
Benjamin Otte
70b8f8f7ef
assistant: Use gtk_widget_class_set_accessible_type()
...
Less code and no leaks!
2011-07-06 18:47:00 +02:00
Javier Jardón
32e00d1f43
Use AM_CPPFLAGS instead the obsolete INCLUDES
2011-07-06 15:58:32 +01: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
768b192ddb
modules: Blacklist gail
...
And print a message when somebody has it enabled that indicates that
something is wrong but doesn't sound too scary.
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
Javier Jardon
ad0c0b8eb3
Do not initialize the priv pointer before check type
2011-07-06 14:25:06 +01:00
Matthias Clasen
ba0bc468d6
Fix the build
...
I didn't pay enough attention when merging, it seems.
2011-07-05 16:57:46 -04:00
Matthias Clasen
521807f33d
Drop the factory from the icon view accessible
2011-07-05 16:10:26 -04:00
Matthias Clasen
9f88efd2bb
Drop the factory from GtkAssistantAccessible
2011-07-05 16:10:26 -04:00
Matthias Clasen
38f34f4f6f
GtkSeparatorMenuItem: Drop the accessible factory
2011-07-05 16:10:26 -04: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
8bb24a936f
Don't overwrite roles
...
Otherwise, every GtkBox subclass will have to override
get_accessible just to keep their roles.
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
aa291863bb
GtkTextBuffer: Add accessible api
...
These functions match closely to the AtkText interface;
they will be used in the GtkTextView accessible implementation.
Keep them private for now.
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
Matthias Clasen
5fb86cf7da
Convert GailScale to GtkScaleAccessible
2011-07-05 16:08:10 -04:00
Benjamin Otte
a2dbfaf43d
stylecontext: #include <math.h> when using math functions
2011-07-05 16:08:10 -04:00
Matthias Clasen
ce793bd3ee
GtkTextviewAccessible: some initial cleanup and code rearrangement
2011-07-05 16:08:10 -04:00
Matthias Clasen
42cc6ad6c6
GtkEntryAccessible: Slight simplification of attribute handling
...
Make this use the same convenience function as is used elsewhwere.
2011-07-05 16:08:09 -04:00
Matthias Clasen
786ade734c
GtkLabelAccessible: avoid some pointless variables
2011-07-05 16:08:09 -04:00
Matthias Clasen
3f9d39ffce
Initial move GailTextView -> GtkTextViewAccessible
...
This just does the renaming, and drops the factory.
2011-07-05 16:08:09 -04:00
Benjamin Otte
a5b08ea931
gail: Remove AtkText implementation from GailScale
...
AtkText should only be implemented by text editing widgets. For just
giving out a small text string, AtkObject::name should be used.
2011-07-05 16:08:09 -04:00
Benjamin Otte
e510d5beba
cellareacontext: Don't ever return -1 for preferred sized
...
People don't check for -1 when computing size requests. Document this
new behavior.
2011-07-05 16:08:09 -04:00
Benjamin Otte
447fae8d4b
Revert 'Insert an LRM, to prevent -20 to come out as 20- in RTL'
...
Correct text direction for printing of doubles should be (and is) done
by printf() and friend and not enforced by GtkScale.
This reverts commit 5eb2aac947
https://bugzilla.gnome.org/show_bug.cgi?id=322571
2011-07-05 16:08:09 -04:00
Benjamin Otte
d0f0d4c77f
a11y: Export the printed value of a scale as the description.
2011-07-05 16:08:09 -04:00
Benjamin Otte
bbda677728
a11y: Remove AtkText implementation from GailMenuitem
...
AtkText should only be implemented by text editing widgets. For just
giving out a small text string, AtkObject::name should be used.
2011-07-05 16:08:09 -04:00
Benjamin Otte
0ca420918b
a11y: Remove AtkText implementation from GailExpander
...
AtkText should only be implemented by text editing widgets. For just
giving out a small text string, AtkObject::name should be used.
2011-07-05 16:08:09 -04:00
Matthias Clasen
2358be732d
Minor optimization
...
No need to get the cursor position twice in a row.
2011-07-05 16:08:09 -04:00
Matthias Clasen
262e59869f
GtkLabelAccessible: some selection handling fixes
...
Don't move the cursor to 0 when removing the selection,
and don't overlook growing selections.
2011-07-05 16:08:09 -04:00
Matthias Clasen
3e84cc9b17
GtkLabel: optimize away some ::notify emissions
2011-07-05 16:08:09 -04:00
Matthias Clasen
2f758b9b50
GtkEntryAccessible: shorten some function names
...
Just cosmetics
2011-07-05 16:08:09 -04:00
Matthias Clasen
ca166c9a1e
Remove a bit of dead code
2011-07-05 16:08:08 -04:00
Matthias Clasen
442ec1b624
GtkEntryAccessible: Clean up the AtkAction implementation a bit
...
No functional changes.
2011-07-05 16:08:08 -04:00
Matthias Clasen
99a54565a3
Purge traces of insert idle handler
2011-07-05 16:08:08 -04:00
Matthias Clasen
212241ffda
GtkEntryAccessible: Rework text_changed handling
...
No more signal emission from an idle.
2011-07-05 16:08:08 -04:00
Matthias Clasen
a1cf2315a0
Fix up signal ordering issues in GtkEntry
...
Ensure that text and selection boundaries are in a
consistent state when we emit notifications, that ::insert-text
and ::delete-text are emitted before any changes, and that
::changed is emitted after property notifications when inserting
or deleting text.
2011-07-05 16:08:08 -04:00
Matthias Clasen
5398a160ad
Add a test for entry signals
...
These tests check that text and selection boundaries are in a
consistent state when we emit notifications, that ::insert-text
and ::delete-text are emitted before any changes, and that
::changed is emitted after property notifications when inserting
or deleting text.
2011-07-05 16:08:08 -04:00
Matthias Clasen
7872c2c19e
GtkEntryAccessible: port from GailTextUtil to GtkPango
...
Also clean up and rearrange the code.
As a side-effect, the no-longer-existing stipple attributes
are dropped. Update test results to match.
2011-07-05 16:08:08 -04:00
Matthias Clasen
b83ee1e5f9
Allow use of private api in a11y/
2011-07-05 16:08:08 -04:00
Matthias Clasen
52a2e1e628
Trivial whitespace fix
2011-07-05 16:08:08 -04:00
Matthias Clasen
6c7e858286
GtkSpinButtonAccessible: Coding style cleanups
...
And some code rearrangement.
2011-07-05 16:08:08 -04:00
Matthias Clasen
918514d51d
First cut at GailEntry -> GtkEntryAccessible
...
Replace the factory for entry and spin button with
gtk_widget_class_set_accessible_type() calls, and move then
to the GtkAccessible namespace.
2011-07-05 16:08:08 -04:00
Matthias Clasen
c2d1e3eeb0
Avoid warnings in clipboard code
...
The a11y selection tests poke the selection on unrealized
labels. Don't spew warnings in this case.
2011-07-05 16:08:08 -04:00
Matthias Clasen
c74ccbb86e
Port GtkLabelAccessible from GailTextUtil to GtkPango api
...
Unfortunately, we still keep a copy of the text around, for
::insert/::delete signals; those emissions need to be moved to
GtkLabel itself.
2011-07-05 16:08:07 -04:00
Matthias Clasen
1164ceb4fc
GtkStyleContext: add some aux. a11y api
...
This function translates the fg/bg color into atk attributes.
2011-07-05 16:08:07 -04:00
Matthias Clasen
1f2b8a6545
Add some aux. pango api to help AtkText implementations
...
These functions are implementations of the AtkText api on top
of a PangoLayout, and are intended to replace GailTextUtil.
Since gtkpango.h is a private header, also remove the individual
inclusion prohibition.
2011-07-05 16:08:07 -04:00
Matthias Clasen
889b2714d5
GtkLabel: factor out two getters
...
Make the get_property switch look a little nicer.
We export these functions privately for use in the label
accessible implementation later on.
2011-07-05 16:08:07 -04:00
Benjamin Otte
504c0fdc27
messagedialog: Initialize style values in init()
...
Fixes underallocation warnings
2011-07-05 16:08:07 -04:00
Benjamin Otte
5ec01aac61
a11y: Remove setters for column description/header
2011-07-05 16:08:07 -04:00
Benjamin Otte
44e4b94acb
a11y: Make treeview header and caption no longer settable
...
It's not exposed in AT-SPI so we don't need it.
2011-07-05 16:08:07 -04:00
Benjamin Otte
56ebb3dd0e
a11y: Remove setters for row description/header
...
AT-SPI doesn't expose them, so there's no need to keep them.
2011-07-05 16:08:07 -04:00
Matthias Clasen
1b8c38f6e1
GtkHSV: set a suitable role for the accessible
...
The consensus of the accessibility team was that 'color chooser'
fits best for this. Update tests to match.
2011-07-05 16:08:07 -04:00
Matthias Clasen
3edebfb81c
GtkSpinner: set a suitable role for the accessible
...
The consensus of the accessibility team was that this is
an animation. Update tests to match.
2011-07-05 16:08:07 -04:00
Matthias Clasen
828d70c6d7
GtkLabelAccessible: remove redundant check
...
We always have the textutil now, so remove some NULL checks.
Also, never say 'State is defunct' again...
2011-07-05 16:08:06 -04:00
Matthias Clasen
dddf587aec
GtkLabel: freeze property notification where appropriate
...
When setting properties that require recalculating the label
text, freeze notification until the label is properly updated.
This fixes bug 126797.
2011-07-05 16:08:06 -04:00
Matthias Clasen
441bf26a2e
GtkLabelAccessible: remove broken workarounds
...
This removes a horrible workaround for bug 126797. To prevent
picking up accidental markup in label texts, the label accessible
is listening for window creation and mapping and defers initializing
its text until then.
2011-07-05 16:08:06 -04:00
Matthias Clasen
a381fd288c
GailLabel -> GtkLabelAccessible
...
A first experimental conversion from the gail namespace to gtkaccessible.
At the same time, use gtk_widget_class_set_accessible_type() to register
the accessible type for GtkLabel.
2011-07-05 16:08:06 -04:00
Matthias Clasen
a0790f1000
Remove gail_widget_new()
...
The function was unused and unnecessary.
2011-07-05 16:08:06 -04:00
Matthias Clasen
e80e585639
Forgotten file
2011-07-05 16:08:06 -04:00
Matthias Clasen
2deeab4c4f
GailTreeView: optimize a bit
...
Avoid many unnecessary list iterations by using a hash table
to store cell infos, and caching row and column counts. Based
on patches by William Jon McCann, bug 554171.
tree-performance results:
before: (MINPERF:large tree test with a11y: 9.18531sec)
after: (MINPERF:large tree test with a11y: 0.923463sec)
for comparison, without accessibility:
(MINPERF:large tree test: 0.016179sec)
2011-07-05 16:08:05 -04:00
Matthias Clasen
4573659deb
Don't pass NULL to functions expecing a real string
...
...and when you do pass them a real string, don't leak it.
2011-07-05 16:08:04 -04:00
Benjamin Otte
521f9e2f15
gail: Add support for action_set_description
...
As set_description is never called and unsupported by the at-spi, we can
omit implementing it.
This means we can also omit get_description calls in various places, as
they'd just return the default value: NULL.
2011-07-05 16:08:04 -04:00
Benjamin Otte
9ddea3f4e1
a11y: Remove hack for old code
...
This code was supposed to work around a bad interaction between GOK and
Nautilus from 7 years ago.
If it still exists, the GOK developers may complain to the Nautilus
developers.
https://bugzilla.gnome.org/show_bug.cgi?id=137401
2011-07-05 16:08:04 -04:00
Benjamin Otte
a65cb51d49
gail: Remove useless code
...
The ATK default code does the same thing as these two functions.
2011-07-05 16:08:04 -04:00
Matthias Clasen
ffb6df5f42
GailTreeView: deal with absence of model
2011-07-05 16:08:02 -04:00
Matthias Clasen
7f44184f61
GailImageCell: Deal with absence of pixbufs
...
...and when there are pixbufs, don't leak them.
2011-07-05 16:08:02 -04:00
Matthias Clasen
0f8823b4a4
Fix dependencies between directories
...
This ensures that libgtk gets relinked when I touch sources
in gtk/a11y.
2011-07-05 16:08:02 -04:00
Benjamin Otte
4227a63f48
widget: Use g_type_add_class_private()
...
It turns out that that funciton does indeed exist and my rant was just
outdated. Shame on me.
2011-07-05 16:08:01 -04:00
Benjamin Otte
5449ec0a30
gail: Fix compile warning
2011-07-05 16:08:01 -04:00
Benjamin Otte
fd5ceee925
tests: undefine GTK_DISABLE_DEPRECATED as we include deprecated types
2011-07-05 16:08:01 -04:00
Matthias Clasen
17e219fbce
Remove debug spew
2011-07-05 16:08:01 -04:00
Matthias Clasen
054057a640
Fix GtkSwitchAccessible type definition
...
It turns out that ATK_DEFINE_TYPE_WITH_CODE() is broken; it
tells GType that the class and instance size for the accessible
type are the same as for its parent type. Which is not true
if your instance struct has members such as 'description' here.
This was causing hard-to-track-down memory corruption, since
description and the GtkAccessible private pointer were sharing
the same memory location.
2011-07-05 16:08:00 -04:00
Matthias Clasen
0311ffe023
Fix some problems with the GailLinkButton implementation
2011-07-05 16:07:59 -04:00
Matthias Clasen
9860acfcbe
Remove remnants of GnomeCanvas
...
There were some random places where gail was poking at types
to see if they were a GnomeCanvas. Just remove this.
2011-07-05 16:07:58 -04:00
Benjamin Otte
ebf8bf0000
API: Add gtk_widget_class_set_accessible_type()
...
The function is supposed to bypass the ATK registry. For 2 reasons:
1) We get rid of a lot of boilerplate madness.
2) The registry allows creating multiple accessibles per widget and we
don't.
The old code for registries is still there.
2011-07-05 16:07:57 -04:00
Benjamin Otte
9ebcd66d43
widget: Add a GtkWidgetClassPrivate
...
As long as glib doesn't provide class privates, we'll have to ship our
own...
2011-07-05 16:07:57 -04:00
Benjamin Otte
dfe5459437
a11y: Remove unused HTML objects
...
Seems they were for GtkHTML and never used since GAIL got imported into
GTK.
2011-07-05 16:07:57 -04:00
Matthias Clasen
d4a1a03614
No need for gail.h
2011-07-05 16:07:57 -04:00
Matthias Clasen
9453332cce
NO_GAIL not used anymore
2011-07-05 16:07:57 -04:00
Matthias Clasen
f1bf642c98
We're not a module anymore
...
So no need to implement module entry points; and libgnome is
dead too, so no need to export functions for it either.
2011-07-05 16:07:57 -04:00
Matthias Clasen
8bbab02215
Add a first, trivial test for accessibles
2011-07-05 16:07:57 -04:00
Matthias Clasen
813b2c0aff
And remove it from the build too
2011-07-05 16:07:57 -04:00
Matthias Clasen
d3ab2fe19c
Remove the old gail tests
...
This is not what we are looking for in tests, and it hasn't been
touched in ages.
2011-07-05 16:07:56 -04:00
Benjamin Otte
773df067e8
gtk: Include gail by default, don't build it as a module
...
It is now no longer possible to disable it.
This doesn't matter though because GTK will not instantiate a11y
objects until you actually use it. So nothing changes in practice.
2011-07-05 16:07:56 -04:00
Benjamin Otte
8c32d2d516
gtk: Move a11y tests fro a11y/tests to tests/a11y
2011-07-05 16:07:56 -04:00
Benjamin Otte
48b9521cbb
gail-util: Move into toplevel directory
2011-07-05 16:07:56 -04:00
Benjamin Otte
b6025e44a9
gail: Copy gail-util functions into gail
...
Otherwise we get a circular dependency if we move libgail into GTK:
GTK depends on gail-util depends on gail (is part of GTK)
2011-07-05 16:07:56 -04:00
Benjamin Otte
df2e122b5c
gail: Move from modules/other/gail to gtk/a11y
2011-07-05 16:07:56 -04:00
Federico Mena Quintero
121f787136
Update the docs with the policies for Save dialogs
...
Basically, don't ever set the current folder, and only use
gtk_file_chooser_set_filename() for 'File/Save As'. This is so
that the file chooser will be able to present its recently-used
lists as appropriate, giving the user good suggestions by default.
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 19:12:09 -05:00
Federico Mena Quintero
9eb324dbaf
No need to highlight the file's basename when setting the base folder
...
None of the cases where _gtk_file_chooser_entry_set_base_folder() appear to require
the entry highlighting the file's basename. Doing the highlighting actually makes
things look weird in Save/Recent mode if you
1. type a filename
2. click on a recent-folder,
as right after (2) your filename would get its basename highlighted for
no apparent reason.
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 19:07:12 -05:00
Federico Mena Quintero
894be790bf
Hide the Create Folder button in recent-files mode when the pathbar is on
...
The create-folder machinery doesn't handle that case yet; we may enable it later
once we figure out the implications for the GUI.
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 19:07:12 -05:00
Federico Mena Quintero
6bb34d7dd4
Centralize the setting of the pathbar's widgets
...
It used to be that every part of the file chooser's code would show/hide the widgets
near the pathbar as needed. Now we have two central functions:
path_bar_update()
path_bar_set_mode()
These take care of all the widget shuffling; setting the visibility of the
pathbar, info bar, and Create Folder button as appropriate; setting the contents
of the info bar, etc. - based on the current operation_mode and action.
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 19:07:12 -05:00
Federico Mena Quintero
18ebec28c9
Create the recently-used widgets and infobar from the pathbar widgets as well
...
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 19:07:12 -05:00
Federico Mena Quintero
3b2e4623f3
Move the pathbar creation to its own function
...
We will centralize the place where all the pathbar-related widgets are created:
the location button, the pathbar itself, the Create Folder button, and in
subsequent commits, the info bar as well. We will deal with the pathbar/infobar
as a unit, instead of swapping them in and out in an ad-hoc fashion.
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 19:07:12 -05:00