| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Consumers of the GValue-based API for GtkAccessible need to have a way
to initialize the GValue with the correct type for the given attribute.
|
|
|
|
| |
Like we do for the varargs API.
|
|
|
|
|
|
| |
In some cases we explicitly want to unset an accessible attribute; for
instance, an accessible property is gated on a widget property, and if
the widget property gets unset, the accessible property should be reset.
|
|
|
|
|
|
|
|
|
|
|
|
| |
We want to test the accessibility API, as well as the implementation
inside each widget. For that, we should expose an API that lets us
verify that a GtkAccessible has a given role, as well as a given
property.
The API follows the pattern of other GTest API:
- a macro to assert that a condition is respected
- a function that prints out the error message in case of failure
|
|
|
|
|
| |
Since we split relation attributes from the generic properties, we need
to add API for setting and retrieving their values.
|
|
|
|
| |
Matching the one for the accessible state.
|
|
|
|
|
| |
We propagate the accessible state and properties to each ATContext in
the same virtual function, since they are functionally similar.
|
|
|
|
|
|
|
| |
Some widgets have different accessible roles depending on some
parameter, so we cannot set the role at class init time. For those
widgets, we add an "accessible-role" property to GtkAccessible, and we
allow setting it (only) at construction time.
|
|
|
|
|
|
| |
An Accessible implementation must create an ATContext object. UI
elements are supposed to interact with the GtkAccessible API, but we
expose GtkATContext to allow patterns like delegation.
|
|
|
|
|
|
|
| |
GtkAccessible is an interface for accessible UI elements.
Currently, it doesn't do much except exist as a type; in the future, it
will be the entry point for all accessible state in GTK.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To build a better world sometimes means having to tear the old one down.
-- Alexander Pierce, "Captain America: The Winter Soldier"
ATK served us well for nearly 20 years, but the world has changed, and
GTK has changed with it. Now ATK is mostly a hindrance towards improving
the accessibility stack:
- it maps to a very specific implementation, AT-SPI, which is Linux and
Unix specific
- it requires implementing the same functionality in three different
layers of the stack: AT-SPI, ATK, and GTK
- only GTK uses it; every other Linux and Unix toolkit and application
talks to AT-SPI directly, including assistive technologies
Sadly, we cannot incrementally port GTK to a new accessibility stack;
since ATK insulates us entirely from the underlying implementation, we
cannot replace it piecemeal. Instead, we're going to remove everything
and then incrementally build on a clean slate:
- add an "accessible" interface, implemented by GTK objects directly,
which describe the accessible role and state changes for every UI
element
- add an "assistive technology context" to proxy a native accessibility
API, and assign it to every widget
- implement the AT context depending on the platform
For more information, see: https://gitlab.gnome.org/GNOME/gtk/-/issues/2833
|
| |
|
| |
|
|
|
|
| |
Add annotations to all exported functions in GTK+ headers.
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
| |
This patch changes all uses of GDK_DEPRECATED(_FOR) in gtk headers
by the versioned variants, GDK_DEPRECATED_IN_3_x(_FOR). At the same
time, we add GDK_AVAILABLE_IN_3_x annotations for all API additions
in 3.2 and 3.4.
|
|
|
|
|
| |
That was an abomination. Also, if people called it twice, you got even
mor signal handlers!
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I expect them to be used a lot, so this approach seems better than
requiring signals that connect to "notify::widget". Also, we can't use
regular functions (like dispose or constructed), becaiuse those assume
that (un)setting of the widget only happens once and with the current
design (a puble set_widget() function) we can't really guarantee that.
Also, I split them into two separate functions as one function is part
of construction and the other part of destruction of the object. And it
doesn't sound like a good idea to have that both be part of one
function.
|
|
|
|
|
| |
Describe the current thinking about how to provide
3rd party accessible implementations.
|
| |
|
| |
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=622371
|
|
|
|
| |
...and disallow inclusion of individual files unconditionally.
|
|
|
|
|
|
| |
Add gtk_accessible_get_widget().
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=612509
|
|
|
|
| |
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=544892
|
| |
|
|
|
|
| |
svn path=/trunk/; revision=20724
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-06-30 Cody Russell <bratsche@gnome.org>
* Practically everything changed.
Change all references of GIMP Toolkit (and variations of it)
to GTK+ Toolkit, showing no mercy at all to our beloved
ancestry. (#540529)
svn path=/trunk/; revision=20709
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-05-28 Michael Natterer <mitch@imendio.com>
* gtk/gtk.h: define __GTK_H_INSIDE__ around including all other
headers.
* gtk/gtktypebuiltins.h.template
* gtk/gtkversion.h.in
* gtk/gtk*.h: add single-include guards that #error out if
GTK_DISABLE_SINGLE_INCLUDES is defined and any of these files is
included individually.
* gtk/gtkprintbackend.h
* gtk/gtkprinter-private.h
* gtk/gtktextlayout.h
* gtk/gtktexttagprivate.h
* gtk/gtktexttypes.h
* gtk/gtktreedatalist.h: include <gtk/gtk.h> instead of individual
headers in these private or semi-private headers.
* gtk/gtkimmodule.h: also here because it's not in gtk.h.
* gtk/gtkpagesetupunixdialog.h
* gtk/gtkprinter.h
* gtk/gtkprintjob.h
* gtk/gtkprintunixdialog.h: likewise in the gtkunixprint headers.
* gtk/gtkclist.h
* gtk/gtkcombo.h
* gtk/gtkctree.h
* gtk/gtkfilesel.h
* gtk/gtkitemfactory.h
* gtk/gtklist.h
* gtk/gtklistitem.h
* gtk/gtkoldeditable.h
* gtk/gtkoptionmenu.h
* gtk/gtkpixmap.h
* gtk/gtkpreview.h
* gtk/gtksignal.h
* gtk/gtktipsquery.h: whenever possible, include only <gtk/gtk.h>
instead of individual headers in these deprecated headers. They
don't get included at all when GTK_DISABLE_DEPRECATED is defined,
so if an app needs them anyway, it must undef GTK_DISABLE_DEPRECATED
and include them individually, which should continue to work.
* gtk/gtkclist.c: include "gtkctree.h" because of the change
above.
svn path=/trunk/; revision=20221
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2005-03-20 Matthias Clasen <mclasen@redhat.com>
Make PLT-reduction work with gcc4, and don't include
everything in gdkalias.h:
* gtk/grk.symbols: Group symbols by header and source file.
* gtk/makegtkalias.pl: Protect definitions by the same
preprocessor symbols used to guard the headers. Move
the alias declarations to a separate file which is
produced when calling makegtkalias.pl -def
* gdk/Makefile.am (gtkaliasdef.c): Add a rule to generate
this file.
* gtk/*.c: Include gtkalias.h after the other headers,
include gtkaliasdef.c at the bottom.
* gtk/*.h: Small cleanups.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2004-11-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkuimanager.h (gtk_ui_manager_get_type):
* gtk/gtktreeview.h (gtk_tree_view_get_type):
* gtk/gtktreeviewcolumn.h (gtk_tree_view_column_get_type):
* gtk/gtktreestore.h (gtk_tree_store_get_type):
* gtk/gtktreeselection.h (gtk_tree_selection_get_type):
* gtk/gtktreemodelfilter.h (gtk_tree_model_filter_get_type):
* gtk/gtktreemodel.h (gtk_tree_iter_get_type):
(gtk_tree_path_get_type):
(gtk_tree_row_reference_get_type):
* gtk/gtktoolitem.h (gtk_tool_item_get_type):
* gtk/gtktoolbutton.h (gtk_tool_button_get_type):
* gtk/gtktoggleaction.h (gtk_toggle_action_get_type):
* gtk/gtkthemes.h (gtk_theme_engine_get_type):
* gtk/gtktextiter.h (gtk_text_iter_get_type):
* gtk/gtksettings.h (gtk_settings_get_type):
* gtk/gtkselection.h (gtk_selection_data_get_type):
* gtk/gtkradioaction.h (gtk_radio_action_get_type):
* gtk/gtkmenutoolbutton.h (gtk_menu_tool_button_get_type):
* gtk/gtkliststore.h (gtk_list_store_get_type):
* gtk/gtkiconview.h (gtk_icon_view_get_type):
* gtk/gtkicontheme.h (gtk_icon_info_get_type):
* gtk/gtkiconfactory.h (gtk_icon_factory_get_type):
(gtk_icon_set_get_type):
(gtk_icon_source_get_type):
* gtk/gtkfilesystemwin32.h (gtk_file_system_win32_get_type):
* gtk/gtkfilesystemunix.h (gtk_file_system_unix_get_type):
* gtk/gtkfilesystem.h (gtk_file_folder_get_type):
(gtk_file_info_get_type, gtk_file_path_get_type):
(gtk_file_system_get_type):
* gtk/gtkfilefilter.h (gtk_file_filter_get_type):
* gtk/gtkfilechooserwidget.h (gtk_file_chooser_widget_get_type):
* gtk/gtkfilechooser.h (gtk_file_chooser_get_type):
* gtk/gtkfilechooserdialog.h (gtk_file_chooser_dialog_get_type):
* gtk/gtkexpander.h (gtk_expander_get_type):
* gtk/gtkentrycompletion.h (gtk_entry_completion_get_type):
* gtk/gtkcombobox.h (gtk_combo_box_get_type):
* gtk/gtkcomboboxentry.h (gtk_combo_box_entry_get_type):
* gtk/gtkclipboard.h (gtk_clipboard_get_type):
* gtk/gtkcellview.h (gtk_cell_view_get_type):
* gtk/gtkcellrenderertoggle.h (gtk_cell_renderer_toggle_get_type):
* gtk/gtkcellrenderertext.h (gtk_cell_renderer_text_get_type):
* gtk/gtkcellrendererprogress.h (gtk_cell_renderer_progress_get_type):
* gtk/gtkcellrendererpixbuf.h (gtk_cell_renderer_pixbuf_get_type):
* gtk/gtkcellrenderercombo.h (gtk_cell_renderer_combo_get_type):
* gtk/gtkcelllayout.h (gtk_cell_layout_get_type):
* gtk/gtkactiongroup.h (gtk_action_group_get_type):
* gtk/gtkaction.h (gtk_action_get_type):
* gtk/gtkaccessible.h (gtk_accessible_get_type):
* gtk/gtkaccelmap.h (gtk_accel_map_get_type):
* gtk/gtkaccelgroup.h (gtk_accel_group_get_type):
* gtk/gtkmessagedialog.h (gtk_message_dialog_get_type): Mark as const.
* gtk/gtkicontheme.h: Don't mark gtk_icon_theme_error_quark()
as const, to be consistent with all the other error_quark
functions. (technically they are const, but since these are
called only in error paths, giving the compiler better
optimization opportunities doesn't matter much)
* gtk/gtk.symbols:
* gdk/gdk.symbols: Add attribute annotations.
* gtk/makegtkalias.pl:
* gdk/makegdkalias.pl: Keep attribute annotations, but strip PRIVATE.
* gtk/Makefile.am (gtk.def):
* gdk/Makefile.am (gdk.def): Strip attribute annotations, but keep
PRIVATE.
|
|
|
|
|
|
|
|
|
|
| |
Fri Oct 11 15:56:20 2002 Manish Singh <yosh@gimp.org>
* gtk/gtkaccellabel.[ch] gtk/gtkaccessible.[ch] gtk/gtkbutton.[ch]
gtk/gtkcheckbutton.[ch] gtk/gtkcolorseldialog.[ch] gtk/gtkdialog.[ch]
gtk/gtkhandlebox.[ch] gtk/gtkinputdialog.[ch] gtk/gtkmessagedialog.[ch]
gtk/gtktearoffmenuitem.[ch] gtk/gtktogglebutton.[ch]: Deprecation
cleanup
|
|
|
|
|
|
|
|
| |
Sat Feb 23 11:54:12 2002 Owen Taylor <otaylor@redhat.com>
* gtk/*.h gdk/*.h: Massive padding addition to class structures.
* gtk/gtktextmark.h: Fix a FIXME about G_CONST_RETURN.
|
|
|
|
|
|
| |
2002-01-24 Mark McLoughlin <mark@skynet.ie>
* gtk/gtkaccessible.h: include gtk/gtkwidget.h
|
|
Thu May 3 14:13:49 2001 Owen Taylor <otaylor@redhat.com>
* INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
dependency on Atk for accessibility support.
* configure.in **/Makefile.am: Major reworking of substituted
variables for CFLAGS/LIBS to make a lot more sane and
keep the the compile/link lines a bit shorter.
* gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
|