Deprecate widget flag macros GTK_WIDGET_STATE, GTK_WIDGET_SAVED_STATE,
GTK_WIDGET_FLAGS, GTK_WIDGET_TOPLEVEL, GTK_WIDGET_NO_WINDOW and
GTK_WIDGET_COMPOSITE_CHILD.
Also deprecate the type macros GTK_WIDGET_TYPE, GTK_OBJECT_TYPE_NAME and
GTK_OBJECT_TYPE which have become redundant.
Instances of GTK_WIDGET_TOPLEVEL are replaced with gtk_widget_is_toplevel,
GTK_WIDGET_TYPE is replaced with G_OBJECT_TYPE, GTK_WIDGET_COMPOSITE_CHILD
is replaced with use of the "composite-child" property and uses of
GTK_WIDGET_NO_WINDOW are adjusted to use gtk_widget_get_has_window.
Uses of GTK_WIDGET_SAVED_STATE and GTK_WIDGET_FLAGS inside GtkWidget are
changed to direct flag usage.
Documentation is updated to refer to gtk_widget_set_has_window and
gtk_widget_get_has_window.
Gail and tests are updated as well.
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=69872
This adds LDFLAGS everywhere where they were previously pulled in via
other libraries. This is however unsupported by modern linkers.
You can trigger these failures by building with gold (or, I'm told, with
very new ld).
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=604289
In order to respect this properly, we have to restore the original
behavior by watching a flag to check if the user has already set this.
* gtk/gtkassistant.c: fix the bug by introducing a flag to check for
non-automatic value setting
* tests/testassistant.c: updated the "generous assistant" to permit
quick manual testing of this feature
Add always-show-image="true|false" attribute to <menuitem> element in UI
manager markup. If present, it overrides the always-show-image property
on image menu items. Bug #589842.
Either g_type_register_static_simple (used by G_DEFINE_TYPE_EXTENDED)
and G_IMPLEMENT_INTERFACE use automatic variables for GTypeInfo and
GInterfaceInfo structs, while tutorials and source code often use
static variables. This commit consistently adopts the former method.
https://bugzilla.gnome.org/show_bug.cgi?id=600158
we now use gdk_offscreen_window_set_embedder() instead of a signal
to get the parent. This also replaces set_has_offscreen_changes.
Rename "parent" in all embedding related names to "embedder" to make it
more obviously different than the normal parent.
Rename gdk_window_get_offscreen_pixmap to gdk_offscreen_window_get_pixmap
to match the other offscreen calls.
Rename gdk_window_offscreen_children_changed to gdk_window_geometry_changed
as this is more descriptive.
We can use this to test bugs that happen when setting a filename before the
file chooser is shown, as in bgo#161670
Signed-off-by: Federico Mena Quintero <federico@novell.com>
This also removes the (unimplemented) possibility to change a window to
non-native. This seems generally not very useful, and there are some problems
with it, for instance if two "users" need a window to be native and then
one of the "users" doesn't need it anymore it can't change it back, because
it is unaware of the other reason the window is native.
2009-02-19 Michael Natterer <mitch@imendio.com>
* tests/testgtk.c: add some orientation flipping code to the
"flipping" test.
svn path=/trunk/; revision=22376
Bug 565656 – Add marks to scales
* gtk/gtkrange.[hc]: Add internal api to define 'stop values'
that have a little resistance when dragging the slider over it.
* gtk/gtk.symbols:
* gtk/gtkscale.[hc] (gtk_scale_add_mark): New function to add
a 'mark' to a scale, which will draws a tick, plus optionally
some text, and makes the value a stop value.
(gtk_scale_clear_values): Removes all marks.
* tests/testscale.c: Test for marks on scales
* tests/Makefile.am: Integrate it
svn path=/trunk/; revision=22149
* gtk/gtktoolbutton.c: Properly create a menu proxy from a GIcon.
Patch by Christian Persch
* tests/testtoolbar.c: Add an example with a GIcon
svn path=/trunk/; revision=22084
2008-12-26 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentry.c: Don't emit ::icon-pressed on nonactivatable
icons. Fix up docs to match actual api.
* tests/testentryicons.c: Reshuffle tests a bit. Add a DND test.
svn path=/trunk/; revision=21942
2008-12-19 Cody Russell <bratsche@gnome.org>
Bug 85292 – add an icon to gtkentry
* gtk/gtkmarshalers.list: Add VOID:INT,BOXED
* tests/testentryicons.c: Initial icon entry test
* tests/Makefile.am: Add testentryicons
* gtk/gtkentry.[ch]: Add API for setting primary/secondary icons
and other features related to them.
svn path=/trunk/; revision=21914
2008-12-05 Michael Natterer <mitch@imendio.com>
Bug 546285 – Allow GtkEntry to draw progress
* gtk/gtkentry.[ch]: add new API similar to GtkProgressBar which
allows to set the entry's progress_fraction, its progress_pulse_step
and to let the entry's progress pulse.
* gtk/gtk.symbols: updated.
* tests/testgtk.c: add progress demo code to the "Entry" window.
svn path=/trunk/; revision=21846
2008-11-26 Christian Dywan <christian@imendio.com>
Bug 561504 – testgtk should load rc file from sub folder
* tests/testgtk.c (main):
Make testgtk look in subfolder and warn if not found
svn path=/trunk/; revision=21809
2008-11-01 Tor Lillqvist <tml@novell.com>
* tests/testclientmessage.c: New interactive test program to
verify client message functionality.
* tests/Makefile.am: Add it.
svn path=/trunk/; revision=21749
2008-10-13 Cody Russell <cody@jhu.edu>
* test/testfilechooser.c: Fix option parsing so that -a and
--action work correctly.
svn path=/trunk/; revision=21645
2008-08-05 Michael Natterer <mitch@imendio.com>
* tests/testiconview.c: don't use the deprecated
gtk_box_pack_start_defaults().
svn path=/trunk/; revision=21010
2008-08-04 Michael Natterer <mitch@imendio.com>
* tests/prop-editor.c: undeprecate (apart from still using
GtkOptionMenu).
svn path=/trunk/; revision=20979
2008-08-01 Hans Breuer <hans@breuer.org>
* gdk/makefile.msc : build gdkwindowimpl
* gtk/gtkwidget.c : fix c99ism - declaration needs to be at the
start of a block
* tests/makefile.msc : update
svn path=/trunk/; revision=20926
2008-07-21 Michael Natterer <mitch@imendio.com>
Bug 442042 – GtkScaleButton is too limited
* tests/testvolumebutton.c: forgot to commit code that tests
toggling the button's orientation. Also fixes the file's coding
style.
svn path=/trunk/; revision=20882
2008-07-11 Kristian Rietveld <kris@gtk.org>
Bug 316087 - Resizing columns is chaotic
* gtk/gtktreeprivate.h: add new member fields.
* gtk/gtktreeview.c (gtk_tree_view_init), (validate_row): set post
validation flag,
(gtk_tree_view_size_allocate_columns): rework the size allocation
mechanism to only recalculate the expand values if the width of the
widget, content or the column configuration has changed,
(gtk_tree_view_size_allocate): move call to size_allocate_columns()
to before the adjustment updates so the proper width is used after
we updated it,
(gtk_tree_view_button_press), (gtk_tree_view_motion_resize_column):
use the column width minus the expand value for the resized width,
(gtk_tree_view_move_column_after): update call to
gtk_tree_view_size_allocate_columns().
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_expand): set use
resized width to FALSE.
* tests/Makefile.am:
* tests/testtreecolumnsizing.c: new interactive test program
for testing column resizing with different column configurations.
svn path=/trunk/; revision=20818
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-06-20 Hans Breuer <hans@breuer.org>
* gtk/gtkmenuitem.c gtk/gtkmessagedialog.c gtk/gtkplug.c : must return
a value of the appropriate type with g_return_val_if_fail
* gdk/gdkconfig.h.win32 : add the GSEAL definition here as well
* gtk/gtkfilesystem.c : don't add the "File System" on win32
* tests/makefile.msc : remove broken autotestfile(system|chooser)
from build
svn path=/trunk/; revision=20657
2008-06-20 Mikael Hallendal <micke@imendio.com>
* tests/testthreads.c: Use g_signal_connect instead of
gtk_signal_connect.
* demos/testgtk/main.c: switched to use GSignal instead of GtkSignal.
While the code is not built, people may still look at it.
svn path=/trunk/; revision=20654
2008-06-18 Michael Natterer <mitch@imendio.com>
* gtk/gtktypeutils.[ch]: deprecate gtk_type_class().
* gtk/gtk.symbols: changed accordingly.
* gtk/gtksettings.c (gtk_settings_install_property)
(gtk_settings_install_property_parser): get rid of using
gtk_type_class() by keeping a static reference to GtkSettingsClass
around in both functions and passing that pointer on to
settings_install_property_parser().
* tests/testgtk.c: use g_type_class_ref()/unref() instead of
gtk_type_class().
* gtk/gtkobject.c: #undef GTK_DISABLE_DEPRECATED around including
gtktypeutils.h.
svn path=/trunk/; revision=20444
2008-05-27 Matthias Clasen <mclasen@redhat.com>
Bug 522084 – GIcon support for GtkIconTheme & GtkImage
* gtk/gtkicontheme.[hc]: Add support for GIcon based lookups.
* gtk/gtkimage.[hc]: Allow setting an image from a GIcon.
* gtk/gtk.symbols: Additions
* tests/testimage.c: Add a GIcon test
svn path=/trunk/; revision=20236
2008-05-29 Michael Natterer <mitch@imendio.org>
* gtk/Makefile.am
* gtk/gtkunixprint.h: add a single-include header for the unix
print stuff.
* gtk/gtkpagesetupunixdialog.h
* gtk/gtkprinter.h
* gtk/gtkprintjob.h
* gtk/gtkprintunixdialog.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
* modules/printbackends/cups/gtkprintbackendcups.c
* modules/printbackends/cups/gtkprintercups.h
* modules/printbackends/lpr/gtkprintbackendlpr.c
* tests/buildertest.c
* tests/defaultvaluetest.c
* docs/tools/widgets.c: include <gtk/gtkunixprint.h> instead of
individual files.
svn path=/trunk/; revision=20230
2008-05-25 Jan Arne Petersen <jpetersen@jpetersen.org>
* gtk/gtkliststore.c: (list_store_text): Use type of the correct
column (#529535).
* tests/buildertest.c: (test_list_store): Add test.
svn path=/trunk/; revision=20142
2008-03-18 10:49:20 Tim Janik <timj@imendio.com>
* Applied pixmap redirection patch by Alexander Larsson with
various updates from:
Bug 318807 – Offscreen windows and window redirection.
Updates:
* updated docs to mention "Since 2.16".
* tests/testgtk.c: fixed snapshooting pixmap leak.
convert pixmap to pixbuf after snapshooting, to compensate for different
bit depths (occurs when snapshooting ARGB visuals and displaying the
pixmap in an RGB visual).
* gdk/gdkwindow.[hc]: made GdkWindowRedirect private.
* gdk/gdkwindow.c: removed damage idle handler, there's no aparent
need for it. enqueue damage notification as GDK_DAMAGE events
for each painting redirection at the start of the event queue.
consider windows with a redirection fully visible when invalidating,
and when updating from backing store. cleaned up stale variables.
* gdk/gdkevents.c: added _gdk_event_queue_prepend().
* gtk/gtkwidget.c: fixed coordinates for !NO_WINDOW widgets in
gtk_widget_get_snapshot; this fixes garbage snap offsets for gammacurve,
tree, drawingarea, text, handlebox, etc.
clip the redirected window hierarchy to window sizes, the visible
rectangles don't need to be taken into account here.
extended snapshooting docs to recommend gdk_pixbuf_get_from_drawable()
in case pixmap visuals could mismatch.
* gdk/x11/gdkwindow-x11.c: removed _gdk_windowing_window_get_visible_rect().
Base patch:
* tests/testgtk.c: add a "Snapshot" test to demonstrate snapshooting
of possibly obscured widgets into an offscreen pixmap.
* gtk/gtkwidget.[hc]: add GtkWidget::damage-event signal, add
gtk_widget_get_snapshot() to render a widget's contents to a GdkPixmap.
* gtk/gtkmain.c: dispatch GDK_DAMAGE events.
* gdk/gdkwindow.c: moved outer gdk_window_new() and gdk_window_reparent()
implementations here, adapted them to propagate redirects to child windows.
gdk_window_end_paint(): copy repainted window contents to redirection pixmap,
clipped to visible region. queue GDK_DAMAGE event delivery.
gdk_window_redirect_to_drawable(): install window painting redirection.
gdk_window_remove_redirection(): remove previously installed redirection.
* gdk/x11/gdkwindow-x11.c: added _gdk_windowing_window_get_visible_rect(),
renamed _gdk_window_new() and _gdk_window_reparent().
* gdk/gdkwindow.h: added GdkWindowRedirect* to GdkWindowObject, export
gdk_window_redirect_to_drawable() and gdk_window_remove_redirection().
* gdk/gdkevents.h: added GDK_DAMAGE event type.
* gdk/gdkevents.c: extract time and state from GDK_DAMAGE events.
* gdk/gdkinternals.h: added internal prototypes.
svn path=/trunk/; revision=20122
2008-04-02 Björn Lindqvist <bjourne@gmail.com>
* tests/autotestfilechooser.c: Cover
GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER action in tests for current
name. (#346058, Joe Halliwell)
svn path=/trunk/; revision=19967
2008-03-20 Tor Lillqvist <tml@novell.com>
* tests/testfilechooserbutton.c (chooser_update_preview_cb): Don't
pass NULL for %s to g_message().
(main): Drop unnecessary call to gtk_widget_destroy().
svn path=/trunk/; revision=19908
2008-03-17 Christian Kellner <gicmo@gnome.org>
Implement GtkMountOperation, a subclass of GMountOperation
to be used with gio wherever there is the need to ask the
user for credentials or questions while mounting a volume.
This is bug #522245
* gtk/gtkmountoperation.c:
* gtk/gtkmountoperation.h:
Implement GtkMountOperation.
* gtk/gtk.h: Add gtkmountoperation.h
* gtk/Makefile.am: Add gtkmountoperation.[hc]
* gtk/gtk.symbols: Add symbols of GtkMountOperation.
* tests/testmountoperation.c: Test program for it.
* tests/Makefile.am: Add testmountoperation.
svn path=/trunk/; revision=19894
2008-03-10 Tor Lillqvist <tml@novell.com>
* tests/teststatusicon.c (do_exit, popup_menu): Add the
possibility to test what happens if the process just calls exit()
without any orderly cleanup of GTK+.
svn path=/trunk/; revision=19745
2008-03-07 Johan Dahlin <johan@gnome.org>
* gtk/gtkbuilder.c:
* gtk/gtkbuilderparser.c:
* gtk/gtkbuilderprivate.h:
* gtk/gtkiconfactory.c:
* tests/buildertest.c:
- Treat enums like enums and not values
- Avoid invalid free, in case of more than two sources
- Add better error messages
- Add much improved tests
(#520979, Christian Persch)
svn path=/trunk/; revision=19732
2008-03-06 Johan Dahlin <jdahlin@async.com.br>
* docs/reference/gtk/tmpl/gtkiconfactory.sgml:
* gtk/gtkbuilder.c:
* gtk/gtkbuilderprivate.h:
* gtk/gtkiconfactory.c:
* tests/buildertest.c:
Implement GtkBuildable on GtkIconFactory, to make
it possible to register custom stock icons.
Fixes#517066
svn path=/trunk/; revision=19726
2008-02-29 Johan Dahlin <johan@gnome.org>
* demos/gtk-demo/demo.ui:
* gtk/gtkbuilderparser.c:
* gtk/gtkbuilderprivate.h:
* gtk/gtkliststore.c:
* tests/buildertest.c:
Add translatable/context and comment attributes on
<col> tags under a GtkListStore. Refactor parts of the
translation api and make it available inside gtk+ itself.
Update tests and example.
Fixes a part of #518642
svn path=/trunk/; revision=19685
2008-02-29 Johan Dahlin <johan@gnome.org>
* gtk/gtkbuilder.c:
* gtk/gtkbuilderparser.c:
* gtk/gtkbuilderprivate.h:
Do not use g_error for a few more errors, instead set
the GError sent in through add_from_file/add_from_string.
* tests/buildertest.c:
Add a couple of new parsing tests.
(#519199, Pavel Syomin)
svn path=/trunk/; revision=19681
2008-02-11 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkrecentchoosermenu.c:
(gtk_recent_chooser_menu_constructor): Set no-show-all flag
on the placeholder menu item.
* tests/testrecentchoosermenu.c:
(create_recent_chooser_menu): Use gtk_widget_show_all() to test
whether the placeholder menu item gets shown.
svn path=/trunk/; revision=19509
2008-02-01 Michael Natterer <mitch@imendio.com>
* tests/testgtk.c: initialize GdkColor structs to fix warning
about uninitialized "pixel" member.
* tests/testactions.c: connect the toolbar_style() callback so it
does something useful and doesn't warn about being defined but not
used.
svn path=/trunk/; revision=19454
2008-01-30 Michael Natterer <mitch@imendio.com>
* gtk/gtkbuilderparser.c (parse_custom): use the right type for
"subparser_data" and remove the (gpointer*) cast. Fixes bogus
aliasing warning.
* gtk/updateiconcache.c (add_string): cast const gchar* to
gpointer when inserting in a GHashTable.
* tests/testcalendar.c (calendar_detail_cb): remove const from
return value since it's a newly allocated string.
(calendar_update_details): free the detail.
svn path=/trunk/; revision=19431
2008-01-26 Johan Dahlin <johan@gnome.org>
* tests/Makefile.am:
* tests/textbuffertest.c:
Rename textbuffer test and port it to the new test framework
svn path=/trunk/; revision=19410
2008-01-25 Johan Dahlin <johan@gnome.org>
* gtk/gtkwidget.c: (gtk_widget_buildable_interface_init),
(gtk_widget_buildable_get_internal_child), (free_action),
(free_relation), (gtk_widget_buildable_parser_finished),
(accessibility_start_element),
(gtk_widget_buildable_custom_tag_start),
(gtk_widget_buildable_custom_finished):
Implement accessible support, fixes#454653.
* gtk/gtk-builder-convert:
Add support for migrating old glade files
* tests/buildertest.c: (test_widget), (test_file):
Add accessible tests and improve the test_file function to display
toplevels and run dialogs.
svn path=/trunk/; revision=19403
* gtk/gtkcalendar.c: Release the memory returned by the detail_func.
* gtk/gtkcalendar.h: Remove G_CONST_RETURN from GtkCalendarDetailFunc.
* tests/testcalendar.c: Duplicate calendar details before returning.
svn path=/trunk/; revision=19382
2008-01-14 Michael Natterer <mitch@imendio.com>
* tests/testdnd.c (source_drag_data_get): fix another call to
gtk_selection_data_set().
svn path=/trunk/; revision=19369
2008-01-10 Tor Lillqvist <tml@novell.com>
* tests/Makefile.am: Build defaultvaluetest only on Unix as it
uses gtkprintunixdialog API.
svn path=/trunk/; revision=19347
2008-01-06 Johan Dahlin <johan@gnome.org>
* tests/buildertest.c (test_domain):
Update, GtkBuilder::translation-domain is no longer set
svn path=/trunk/; revision=19317
2008-01-05 Christian Persch <chpe@gnome.org>
* tests/defaultvaluetest.c: Fix mem leak, and don't pass
GType as integer through gpointer. Bug #507395.
svn path=/trunk/; revision=19307
2008-01-02 Johan Dahlin <johan@gnome.org>
* tests/defaultvaluetest.c (test_type): Ignore a few more tests to
make it pass on Ubuntu.
(main): Use gtk_test_list_all_types () instead of providing our
own list.
And it no longer passes.
svn path=/trunk/; revision=19298
2007-12-30 Johannes Schmid <jhs@gnome.org>
* gtk/gtknotebook.c: (gtk_notebook_stop_reorder):
Also reorder menu when reordering tabs by drag & drop
(Bug #506474)
* tests/testnotebookdnd.c: (create_notebook_with_notebooks):
Add a menu to one of the notebooks to have a test-case for
the change mentioned above.
svn path=/trunk/; revision=19294
2007-12-28 Johan Dahlin <johan@gnome.org>
* gtk/gtkdialog.c (gtk_dialog_buildable_custom_finished)
(gtk_dialog_buildable_custom_tag_start): Chain up.
This makes it possible to have accelerators tags on GtkDialog
subclasses.
svn path=/trunk/; revision=19268
* gtk/gtkcalendar.c, gtk/gtkcalendar.h: Add "show-details" property
aka. GTK_CALENDAR_SHOW_DETAILS, and use it.
* tests/testcalendar.c: Test GTK_CALENDAR_SHOW_DETAILS. Reduce padding
in flags vbox.
svn path=/trunk/; revision=19267
2007-12-20 Johan Dahlin <johan@gnome.org>
* tests/Makefile.am (TEST_PROGS):
* tests/defaultvaluetest.c: Add a test for default property values,
based on program by Christan Perch
svn path=/trunk/; revision=19215
2007-12-19 Johan Dahlin <johan@gnome.org>
* tests/buildertest.c (test_object_properties):
Add another call to gtk_builder_add_string after using
delayed properties, as reported in #504393 but already
fixed in #495769.
svn path=/trunk/; revision=19197
2007-12-11 15:44:01 Tim Janik <timj@imendio.com>
* buildertest.c: made unnecessarily exported symbols static.
switched g_return_if_fail() statements in tests to assertions.
special cased currently failing Widget/accesibility test to
run only for g_test_thorough(), so it doesn't break make check.
some coding style fixes.
* Makefile.am: added buildertest to TEST_PROGS.
svn path=/trunk/; revision=19157
2007-12-06 13:38:36 Tim Janik <timj@imendio.com>
* tests/floatingtest.c: ported to new testing framework.
* tests/Makefile.am: run floatingtest as testing framework test.
svn path=/trunk/; revision=19118
2007-12-06 10:44:52 Tim Janik <timj@imendio.com>
* tests/autotestfilechooser.c: majorly speed up execution by reducing
timeouts and converting main loop sleeps to pending/iterate loops with
very low priority async handlers. eliminate output for non-verbose
tests. assert successfull subtests in all test functions. use testing
framework in main().
* tests/Makefile.am: add autotestfilechooser to TEST_PROGS, so it's
executed inside Xvfb upon make check.
svn path=/trunk/; revision=19117
2007-12-06 08:23:38 Tim Janik <timj@imendio.com>
* tests/objecttests.c: use string comparisons for string property
values and get rid of referencing symbols in array initialization.
svn path=/trunk/; revision=19116