Make GtkFileChooser interface require a GObject

Before all GtkFileChooser implementations had to be a GtkWidget,
but we want to introduce one for native implementations that
is not a widget.

This is technically an ABI break, because some code could rely
on the guarantee that GtkFileChoosers are GtkWidgets and do
unchecked GtkWidget calls. However, that does seem unlikely,
and this has not really been documented anywhere.
This commit is contained in:
Alexander Larsson 2015-10-29 14:55:48 +01:00
parent 1c46a02bcb
commit 0f6c7682b3
3 changed files with 15 additions and 1 deletions

5
NEWS
View File

@ -1,3 +1,8 @@
Overview of Changes in GTK+ 3.19.2
==================================
* The GtkFileChooser interface prerequisite was changed from GtkWidget
to GObject to allow non-widget filechooser implementations.
Overview of Changes in GTK+ 3.19.1
==================================

View File

@ -72,6 +72,15 @@ and attach the patch to that bug report.
Patches should be in unified diff form. (The -up option to GNU diff)
Even better are git-formatted patches. (Use git format-patch)
Release notes for 3.20
======================
* The GtkFileChooser interface pre-requisite changed from GtkWidget
to GObject, allowing non-widget implementations of this interface.
This is a minor change in ABI, as apps are no longer guaranteed
that a GtkFileChooser interface also supports all GtkWidget methods.
However, all previously existing objects still derive from GtkWidget,
so no existing code should break.
Release notes for 3.18
======================

View File

@ -159,7 +159,7 @@
typedef GtkFileChooserIface GtkFileChooserInterface;
G_DEFINE_INTERFACE (GtkFileChooser, gtk_file_chooser, GTK_TYPE_WIDGET);
G_DEFINE_INTERFACE (GtkFileChooser, gtk_file_chooser, G_TYPE_OBJECT);
static gboolean
confirm_overwrite_accumulator (GSignalInvocationHint *ihint,