]> Pileus Git - ~andy/gtk/blobdiff - README.in
GtkWidget/GtkContainer: Slight fixes to geometry-management docs.
[~andy/gtk] / README.in
index ff62e5efe919df48a6d1f03b9a9563c089c76258..bcd8c4efba60992e24801773f8c9a69e01f0a8c1 100644 (file)
--- a/README.in
+++ b/README.in
@@ -27,14 +27,109 @@ Installation
 See the file 'INSTALL'
 
 
+Release notes for 2.20
+======================
+
+* GtkStatusbar now has a message area (see gtk_status_bar_get_message_area)
+  which makes it easy to place additional widgets inside the statusbar
+  frame or to replace the label widgets. Previously, this was only possible
+  by accessing the innards of the statusbar widget directly. Applications
+  which are doing so may need some adjustments, since the addition of the
+  message area changed the internal widget hierarchy.
+
+* GtkBuilder no longer sets the "name" property of widgets to the ID
+  attribute of the <object>. Use gtk_buildable_get_name() instead of
+  gtk_widget_get_name() to obtain the ID.
+
+* GTK+ now includes introspection data, as a consequence, it gained a
+  dependency on gobject-introspection. It is possible to build without
+  introspection by passing --disable-introspection to configure.
+
+
+Release notes for 2.18
+======================
+
+* gtk_tooltip_set_custom now accept a NULL custom_widget to unset the
+  old custom_widget. Custom_widget does not get destroyed when the
+  tooltip goes away.
+
+* JPEG2000 support is no longer enabled by default. It must be
+  explicitly turned on, by passing --with-libjasper to configure.
+
+* GDK has been reworked to implement 'client-side windows'. This offers
+  exciting new possibilities, such as transformed, offscreen rendering,
+  but it breaks some long-standing assumptions that applications may
+  have about GDK windows. Setting the environment variable
+  GDK_NATIVE_WINDOWS makes GDK create a native X11 window for each
+  GDK window, which might make problematic applications work better.
+
+* GTK+ calls signal (SIGPIPE, SIG_IGN) during initialization, to ignore
+  SIGPIPE signals, since these are almost never wanted in graphical
+  applications. If you do need to handle SIGPIPE for some reason, reset
+  the handler after gtk_init(), but notice that other libraries (e.g.
+  libdbus or gvfs) might do similar things.
+
+Release notes for 2.16
+======================
+
+* Password entries now display a caps-lock warning. This can be turned off
+  with the caps-lock-warning property.
+
+* Various orientation-related functions have been deprecated in favour
+  of the new GtkOrientable interface: gtk_scale_button_get_orientation,
+  gtk_scale_button_set_orientation, gtk_toolbar_set_orientation.
+
+* The action-proxy interaction has been changed. Widgets that operate as
+  proxies have to implement the GtkActivatable interface now. GtkActivatable
+  implementation are responsible for syncing their appearance with the
+  action and for activating the action. All GTK+ widgets that are commonly
+  used as proxies implement the GtkActivatable interface.
+
+* The handling of keyboard shortcuts has been changed, to help with a
+  longstanding complaint about the way GTK+ handles multiple layouts. GTK+
+  now only uses keys from groups other than the current group if they are
+  not present in the current group.
+
+Release notes for 2.14
+======================
+
+* gtkitemfactory.h is now completely deprecated.
+  As gtkactiongroup.h and gtkstock.h no longer include the gtkitemfactory.h
+  header, this might break application using gtk_item_factory_* symbols
+  without including gtkitemfactory.h - even though this behaviour has never
+  been supported in the first place.
+
+* The GtkFileSystem semi-private interface has been removed.
+  The GTK+ filechooser implementation now uses GIO directly, which has
+  rendered external filesystem implementations unnecessary. Consequently,
+  the GtkFileSystem interface is no longer available, nor the filechooser
+  will load any GtkFileSystem implementation.
+
+* GtkComboBox now renders the popdown button insensitive when
+  the model is empty. Applications which want to populate the list
+  only before displaying it can set gtk_combo_box_set_button_sensitivity
+  to GTK_SENSITIVITY_ON, so that the button is always sensitive or
+  GTK_SENSITIVITY_OFF to make it insensitive respectively.
+
+* GtkAdjustment now enforces that values are restricted to the
+  range [lower, upper - page_size]. This has always been the documented
+  behaviour, and the recommended practice is to set page_size to 0
+  when using adjustments for simple scalar values, like in a slider
+  or spin button.
+
+* gdk-pixbuf will use GIO for mime type detection if possible. For
+  this to work, shared-mime-info needs to be installed and XDG_DATA_DIRS
+  set accordingly at configure time. Otherwise, gdk-pixbuf falls
+  back to its built-in sniffing implementation.
+
 Release notes for 2.12
 ======================
 
-* Functions: gtk_about_dialog_get/set_name() were deprecated in favour of
+* gtk_about_dialog_get/set_name() were deprecated in favour of
   gtk_about_dialog_get/set_program_name(), the GtkAboutDialog now uses the
   "program-name" property instead of the conflicting "name" property.
 
-* The tiff loader now requires libtiff 3.6.0 or later.
+* The gdk-pixbuf tiff loader now requires libtiff 3.6.0 or later.
 
 * Support for Windows 9x/ME has officially been removed. It hasn't worked
   since 2.6 anyway.
@@ -58,6 +153,86 @@ Release notes for 2.12
   of another structure (in particular GnomeCanvas and its clones do not need
   recompiling).
 
+* Another new signal has been added to GtkNotebook. The new signal
+  is called create-window, so this name can no longer be used for signals
+  in objects derived from GtkNotebook.
+
+* The gtk_notebook_set/get_group_id() functions were found to be insufficient
+  and have been deprecated in favour of gtk_notebook_set/get_group().
+
+* The move-focus signal has been moved to GtkWidget, to unify the 
+  various implementations of this signal in specific widgets. Great care 
+  has been taken to make sure that all code using this signal continues
+  to work.
+
+* An unused and hardly visible GtkFrame has been removed from the menu 
+  widget hierarchy when GtkComboBox::appears-as-list style property is 
+  set. Any RC file applying a different style to any widget below the 
+  widget path "gtk-combobox-popup-window.GtkFrame" should take into 
+  account that the frame no longer exists.
+
+* The external print preview application used by GtkPrintOperationPreview 
+  is now passed the print settings on the command line with the 
+  --print-settings parameter pointing to a temp file containing the 
+  settings. The preview application assumes ownership of the file and 
+  should delete it once it does not need it anymore. The --print-settings 
+  commandline option is understood by Evince 0.9.0 and newer. To use a 
+  different print preview application, change the gtk-print-preview-command 
+  setting in your gtkrc file, e.g. gtk-print-preview-command = "ggv %f"
+
+* GtkMenuShell is now defined as an abstract type. It was already 
+  documented as an abstract class, and there is little reason to 
+  instantiate it.
+
+* The GtkTooltips struct (this is the old tooltips API) is now considered
+  private. Code that used to access this struct, in particular the
+  tips_data_list field, will need to change. All of the old tooltips
+  API has been deprecated in favour of a new implementation and
+  API. This affects all of the gtk_tooltips_ functions, and functions 
+  which take a GtkTooltips argument, such as gtk_tool_item_set_tooltip()
+  and gtk_menu_tool_button_set_arrow_tooltip().
+  
+* The memory management of the GtkRecentManager object has been changed,
+  as using the screen didn't guarantee that the singleton instance was
+  correctly destroyed. The screen-related functions have been deprecated,
+  and should not be used anymore; the GtkRecentManager instance returned by
+  the gtk_recent_manager_get_default() function is guaranteed to be valid
+  for the entire lifetime of an application.
+
+* A number of interfaces that have been superseded by newer interfaces for 
+  a long time have finally been deprecated. This includes 
+  gtk_widget_ref/unref(), gtk_rc_style_ref/unref() and the old file selector.
+
+* The various coordinate systems in use in GtkTreeView widgets have
+  been clarified in the documentation, and in the cause of doing so, 
+  the functions gtk_tree_view_widget_to_tree_coords() and
+  gtk_tree_view_tree_to_widget_coords() have been deprecated in 
+  favour of a new family of gtk_tree_view_convert_ functions.
+
+* gtk_menu_item_remove_submenu() has been deprecated in favour of
+  gtk_menu_item_set_submenu (..., NULL).
+
+* gtk_default_draw_check() has been fixed to really decrease the
+  indicator size by one pixel to ensure an odd size instead of
+  accidentially increasing it.
+  Consequently, gtk_cell_renderer_toggle_render() could be fixed to
+  not subtract 1 from the size passed to gtk_paint_option(), which
+  was just a workaround for above off-by-two for even sizes (theme
+  engines now get the real indicator size passed).
+  The default toggle size of GtkCheckMenuItem and GtkCellRendererToggle
+  has been changed to 13 to be consistent with GtkCheckButton.
+  The only visible change with default settings is that the indicator in
+  GtkCellRendererToggle has changed its size from 11 to 13 and is now
+  consistent with menus and toggle buttons.
+
+* GTK+ has always required that gtk_init() (or a variant thereof) is
+  called before any other GTK+ function. Some applications call functions
+  like gtk_clipboard_get() to check if they need to call gtk_init(),
+  anyway. A change in GLib 2.14 has recently broken this unsupported
+  practise. It is worth pointing out that calling gtk_init() twice
+  does no harm.
+
+
 Release notes for 2.10
 ======================
 
@@ -282,8 +457,4 @@ report.
 Otherwise, enter a new bug report that describes the patch, and attach
 the patch to that bug report.
 
-Bug reports containing patches should include the PATCH keyword in their
-keyword fields. If the patch adds to or changes the GTK+ programming
-interface, the API keyword should also be included.
-  
-Patches should be in unified diff form. (The -u option to GNU diff.)
+Patches should be in unified diff form. (The -up option to GNU diff.)