[gtk+/wip/native-file-chooser: 6/14] Make GtkFileChooser interface require a GObject



commit 0f6c7682b3a11d932e34a3a0bb078d9b4503de3f
Author: Alexander Larsson <alexl redhat com>
Date:   Thu Oct 29 14:55:48 2015 +0100

    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.

 NEWS                 |    5 +++++
 README.in            |    9 +++++++++
 gtk/gtkfilechooser.c |    2 +-
 3 files changed, 15 insertions(+), 1 deletions(-)
---
diff --git a/NEWS b/NEWS
index 6ad742e..fd720fd 100644
--- a/NEWS
+++ b/NEWS
@@ -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
 ==================================
 
diff --git a/README.in b/README.in
index 4ff9b32..7e7e606 100644
--- a/README.in
+++ b/README.in
@@ -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
 ======================
diff --git a/gtk/gtkfilechooser.c b/gtk/gtkfilechooser.c
index b8513ce..5ed25fd 100644
--- a/gtk/gtkfilechooser.c
+++ b/gtk/gtkfilechooser.c
@@ -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,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]